Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions
devinet.c File Reference
#include <asm/uaccess.h>
#include <linux/bitops.h>
#include <linux/capability.h>
#include <linux/module.h>
#include <linux/types.h>
#include <linux/kernel.h>
#include <linux/string.h>
#include <linux/mm.h>
#include <linux/socket.h>
#include <linux/sockios.h>
#include <linux/in.h>
#include <linux/errno.h>
#include <linux/interrupt.h>
#include <linux/if_addr.h>
#include <linux/if_ether.h>
#include <linux/inet.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/skbuff.h>
#include <linux/init.h>
#include <linux/notifier.h>
#include <linux/inetdevice.h>
#include <linux/igmp.h>
#include <linux/slab.h>
#include <linux/hash.h>
#include <linux/kmod.h>
#include <net/arp.h>
#include <net/ip.h>
#include <net/route.h>
#include <net/ip_fib.h>
#include <net/rtnetlink.h>
#include <net/net_namespace.h>
#include "fib_lookup.h"

Go to the source code of this file.

Macros

#define IPV4_DEVCONF_DFLT(net, attr)   IPV4_DEVCONF((*net->ipv4.devconf_dflt), attr)
 
#define IN4_ADDR_HSIZE_SHIFT   8
 
#define IN4_ADDR_HSIZE   (1U << IN4_ADDR_HSIZE_SHIFT)
 

Functions

struct net_device__ip_dev_find (struct net *net, __be32 addr, bool devref)
 
 EXPORT_SYMBOL (__ip_dev_find)
 
void in_dev_finish_destroy (struct in_device *idev)
 
 EXPORT_SYMBOL (in_dev_finish_destroy)
 
int inet_addr_onlink (struct in_device *in_dev, __be32 a, __be32 b)
 
struct in_device * inetdev_by_index (struct net *net, int ifindex)
 
 EXPORT_SYMBOL (inetdev_by_index)
 
struct in_ifaddr * inet_ifa_byprefix (struct in_device *in_dev, __be32 prefix, __be32 mask)
 
int devinet_ioctl (struct net *net, unsigned int cmd, void __user *arg)
 
__be32 inet_select_addr (const struct net_device *dev, __be32 dst, int scope)
 
 EXPORT_SYMBOL (inet_select_addr)
 
__be32 inet_confirm_addr (struct in_device *in_dev, __be32 dst, __be32 local, int scope)
 
 EXPORT_SYMBOL (inet_confirm_addr)
 
int register_inetaddr_notifier (struct notifier_block *nb)
 
 EXPORT_SYMBOL (register_inetaddr_notifier)
 
int unregister_inetaddr_notifier (struct notifier_block *nb)
 
 EXPORT_SYMBOL (unregister_inetaddr_notifier)
 
void __init devinet_init (void)
 

Macro Definition Documentation

#define IN4_ADDR_HSIZE   (1U << IN4_ADDR_HSIZE_SHIFT)

Definition at line 98 of file devinet.c.

#define IN4_ADDR_HSIZE_SHIFT   8

Definition at line 97 of file devinet.c.

#define IPV4_DEVCONF_DFLT (   net,
  attr 
)    IPV4_DEVCONF((*net->ipv4.devconf_dflt), attr)

Definition at line 87 of file devinet.c.

Function Documentation

struct net_device* __ip_dev_find ( struct net net,
__be32  addr,
bool  devref 
)
read

__ip_dev_find - find the first device with a given source address. : the net namespace : the source address : if true, take a reference on the found device

If a caller uses devref=false, it should be protected by RCU, or RTNL

Definition at line 134 of file devinet.c.

void __init devinet_init ( void  )

Definition at line 1795 of file devinet.c.

int devinet_ioctl ( struct net net,
unsigned int  cmd,
void __user arg 
)

Definition at line 680 of file devinet.c.

EXPORT_SYMBOL ( __ip_dev_find  )
EXPORT_SYMBOL ( in_dev_finish_destroy  )
EXPORT_SYMBOL ( inetdev_by_index  )
EXPORT_SYMBOL ( inet_select_addr  )
EXPORT_SYMBOL ( inet_confirm_addr  )
EXPORT_SYMBOL ( register_inetaddr_notifier  )
EXPORT_SYMBOL ( unregister_inetaddr_notifier  )
void in_dev_finish_destroy ( struct in_device *  idev)

Definition at line 210 of file devinet.c.

int inet_addr_onlink ( struct in_device *  in_dev,
__be32  a,
__be32  b 
)

Definition at line 298 of file devinet.c.

__be32 inet_confirm_addr ( struct in_device *  in_dev,
__be32  dst,
__be32  local,
int  scope 
)

Definition at line 1053 of file devinet.c.

struct in_ifaddr* inet_ifa_byprefix ( struct in_device *  in_dev,
__be32  prefix,
__be32  mask 
)
read

Definition at line 518 of file devinet.c.

__be32 inet_select_addr ( const struct net_device dev,
__be32  dst,
int  scope 
)

Definition at line 960 of file devinet.c.

struct in_device* inetdev_by_index ( struct net net,
int  ifindex 
)
read

Definition at line 502 of file devinet.c.

int register_inetaddr_notifier ( struct notifier_block nb)

Definition at line 1083 of file devinet.c.

int unregister_inetaddr_notifier ( struct notifier_block nb)

Definition at line 1089 of file devinet.c.