Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Macros | Enumerations
if.h File Reference
#include <linux/types.h>
#include <linux/socket.h>
#include <linux/compiler.h>
#include <linux/hdlc/ioctl.h>

Go to the source code of this file.

Data Structures

struct  ifmap
 
struct  if_settings
 
struct  ifreq
 
struct  ifconf
 

Macros

#define IFNAMSIZ   16
 
#define IFALIASZ   256
 
#define IFF_UP   0x1 /* interface is up */
 
#define IFF_BROADCAST   0x2 /* broadcast address valid */
 
#define IFF_DEBUG   0x4 /* turn on debugging */
 
#define IFF_LOOPBACK   0x8 /* is a loopback net */
 
#define IFF_POINTOPOINT   0x10 /* interface is has p-p link */
 
#define IFF_NOTRAILERS   0x20 /* avoid use of trailers */
 
#define IFF_RUNNING   0x40 /* interface RFC2863 OPER_UP */
 
#define IFF_NOARP   0x80 /* no ARP protocol */
 
#define IFF_PROMISC   0x100 /* receive all packets */
 
#define IFF_ALLMULTI   0x200 /* receive all multicast packets*/
 
#define IFF_MASTER   0x400 /* master of a load balancer */
 
#define IFF_SLAVE   0x800 /* slave of a load balancer */
 
#define IFF_MULTICAST   0x1000 /* Supports multicast */
 
#define IFF_PORTSEL   0x2000 /* can set media type */
 
#define IFF_AUTOMEDIA   0x4000 /* auto media select active */
 
#define IFF_DYNAMIC   0x8000 /* dialup device with changing addresses*/
 
#define IFF_LOWER_UP   0x10000 /* driver signals L1 up */
 
#define IFF_DORMANT   0x20000 /* driver signals dormant */
 
#define IFF_ECHO   0x40000 /* echo sent packets */
 
#define IFF_VOLATILE
 
#define IFF_802_1Q_VLAN   0x1 /* 802.1Q VLAN device. */
 
#define IFF_EBRIDGE   0x2 /* Ethernet bridging device. */
 
#define IFF_SLAVE_INACTIVE   0x4 /* bonding slave not the curr. active */
 
#define IFF_MASTER_8023AD   0x8 /* bonding master, 802.3ad. */
 
#define IFF_MASTER_ALB   0x10 /* bonding master, balance-alb. */
 
#define IFF_BONDING   0x20 /* bonding master or slave */
 
#define IFF_SLAVE_NEEDARP   0x40 /* need ARPs for validation */
 
#define IFF_ISATAP   0x80 /* ISATAP interface (RFC4214) */
 
#define IFF_MASTER_ARPMON   0x100 /* bonding master, ARP mon in use */
 
#define IFF_WAN_HDLC   0x200 /* WAN HDLC device */
 
#define IFF_XMIT_DST_RELEASE
 
#define IFF_DONT_BRIDGE   0x800 /* disallow bridging this ether dev */
 
#define IFF_DISABLE_NETPOLL   0x1000 /* disable netpoll at run-time */
 
#define IFF_MACVLAN_PORT   0x2000 /* device used as macvlan port */
 
#define IFF_BRIDGE_PORT   0x4000 /* device used as bridge port */
 
#define IFF_OVS_DATAPATH
 
#define IFF_TX_SKB_SHARING
 
#define IFF_UNICAST_FLT   0x20000 /* Supports unicast filtering */
 
#define IFF_TEAM_PORT   0x40000 /* device used as team port */
 
#define IFF_SUPP_NOFCS   0x80000 /* device supports sending custom FCS */
 
#define IFF_LIVE_ADDR_CHANGE
 
#define IF_GET_IFACE   0x0001 /* for querying only */
 
#define IF_GET_PROTO   0x0002
 
#define IF_IFACE_V35   0x1000 /* V.35 serial interface */
 
#define IF_IFACE_V24   0x1001 /* V.24 serial interface */
 
#define IF_IFACE_X21   0x1002 /* X.21 serial interface */
 
#define IF_IFACE_T1   0x1003 /* T1 telco serial interface */
 
#define IF_IFACE_E1   0x1004 /* E1 telco serial interface */
 
#define IF_IFACE_SYNC_SERIAL   0x1005 /* can't be set by software */
 
#define IF_IFACE_X21D   0x1006 /* X.21 Dual Clocking (FarSite) */
 
#define IF_PROTO_HDLC   0x2000 /* raw HDLC protocol */
 
#define IF_PROTO_PPP   0x2001 /* PPP protocol */
 
#define IF_PROTO_CISCO   0x2002 /* Cisco HDLC protocol */
 
#define IF_PROTO_FR   0x2003 /* Frame Relay protocol */
 
#define IF_PROTO_FR_ADD_PVC   0x2004 /* Create FR PVC */
 
#define IF_PROTO_FR_DEL_PVC   0x2005 /* Delete FR PVC */
 
#define IF_PROTO_X25   0x2006 /* X.25 */
 
#define IF_PROTO_HDLC_ETH   0x2007 /* raw HDLC, Ethernet emulation */
 
#define IF_PROTO_FR_ADD_ETH_PVC   0x2008 /* Create FR Ethernet-bridged PVC */
 
#define IF_PROTO_FR_DEL_ETH_PVC   0x2009 /* Delete FR Ethernet-bridged PVC */
 
#define IF_PROTO_FR_PVC   0x200A /* for reading PVC status */
 
#define IF_PROTO_FR_ETH_PVC   0x200B
 
#define IF_PROTO_RAW   0x200C /* RAW Socket */
 
#define IFHWADDRLEN   6
 
#define ifr_name   ifr_ifrn.ifrn_name /* interface name */
 
#define ifr_hwaddr   ifr_ifru.ifru_hwaddr /* MAC address */
 
#define ifr_addr   ifr_ifru.ifru_addr /* address */
 
#define ifr_dstaddr   ifr_ifru.ifru_dstaddr /* other end of p-p lnk */
 
#define ifr_broadaddr   ifr_ifru.ifru_broadaddr /* broadcast address */
 
#define ifr_netmask   ifr_ifru.ifru_netmask /* interface net mask */
 
#define ifr_flags   ifr_ifru.ifru_flags /* flags */
 
#define ifr_metric   ifr_ifru.ifru_ivalue /* metric */
 
#define ifr_mtu   ifr_ifru.ifru_mtu /* mtu */
 
#define ifr_map   ifr_ifru.ifru_map /* device map */
 
#define ifr_slave   ifr_ifru.ifru_slave /* slave device */
 
#define ifr_data   ifr_ifru.ifru_data /* for use by interface */
 
#define ifr_ifindex   ifr_ifru.ifru_ivalue /* interface index */
 
#define ifr_bandwidth   ifr_ifru.ifru_ivalue /* link bandwidth */
 
#define ifr_qlen   ifr_ifru.ifru_ivalue /* Queue length */
 
#define ifr_newname   ifr_ifru.ifru_newname /* New name */
 
#define ifr_settings   ifr_ifru.ifru_settings /* Device/proto settings*/
 
#define ifc_buf   ifc_ifcu.ifcu_buf /* buffer address */
 
#define ifc_req   ifc_ifcu.ifcu_req /* array of structures */
 

Enumerations

enum  {
  IF_OPER_UNKNOWN, IF_OPER_NOTPRESENT, IF_OPER_DOWN, IF_OPER_LOWERLAYERDOWN,
  IF_OPER_TESTING, IF_OPER_DORMANT, IF_OPER_UP
}
 
enum  { IF_LINK_MODE_DEFAULT, IF_LINK_MODE_DORMANT }
 

Macro Definition Documentation

#define IF_GET_IFACE   0x0001 /* for querying only */

Definition at line 83 of file if.h.

#define IF_GET_PROTO   0x0002

Definition at line 84 of file if.h.

#define IF_IFACE_E1   0x1004 /* E1 telco serial interface */

Definition at line 91 of file if.h.

#define IF_IFACE_SYNC_SERIAL   0x1005 /* can't be set by software */

Definition at line 92 of file if.h.

#define IF_IFACE_T1   0x1003 /* T1 telco serial interface */

Definition at line 90 of file if.h.

#define IF_IFACE_V24   0x1001 /* V.24 serial interface */

Definition at line 88 of file if.h.

#define IF_IFACE_V35   0x1000 /* V.35 serial interface */

Definition at line 87 of file if.h.

#define IF_IFACE_X21   0x1002 /* X.21 serial interface */

Definition at line 89 of file if.h.

#define IF_IFACE_X21D   0x1006 /* X.21 Dual Clocking (FarSite) */

Definition at line 93 of file if.h.

#define IF_PROTO_CISCO   0x2002 /* Cisco HDLC protocol */

Definition at line 98 of file if.h.

#define IF_PROTO_FR   0x2003 /* Frame Relay protocol */

Definition at line 99 of file if.h.

#define IF_PROTO_FR_ADD_ETH_PVC   0x2008 /* Create FR Ethernet-bridged PVC */

Definition at line 104 of file if.h.

#define IF_PROTO_FR_ADD_PVC   0x2004 /* Create FR PVC */

Definition at line 100 of file if.h.

#define IF_PROTO_FR_DEL_ETH_PVC   0x2009 /* Delete FR Ethernet-bridged PVC */

Definition at line 105 of file if.h.

#define IF_PROTO_FR_DEL_PVC   0x2005 /* Delete FR PVC */

Definition at line 101 of file if.h.

#define IF_PROTO_FR_ETH_PVC   0x200B

Definition at line 107 of file if.h.

#define IF_PROTO_FR_PVC   0x200A /* for reading PVC status */

Definition at line 106 of file if.h.

#define IF_PROTO_HDLC   0x2000 /* raw HDLC protocol */

Definition at line 96 of file if.h.

#define IF_PROTO_HDLC_ETH   0x2007 /* raw HDLC, Ethernet emulation */

Definition at line 103 of file if.h.

#define IF_PROTO_PPP   0x2001 /* PPP protocol */

Definition at line 97 of file if.h.

#define IF_PROTO_RAW   0x200C /* RAW Socket */

Definition at line 108 of file if.h.

#define IF_PROTO_X25   0x2006 /* X.25 */

Definition at line 102 of file if.h.

#define IFALIASZ   256

Definition at line 27 of file if.h.

#define ifc_buf   ifc_ifcu.ifcu_buf /* buffer address */

Definition at line 227 of file if.h.

#define ifc_req   ifc_ifcu.ifcu_req /* array of structures */

Definition at line 228 of file if.h.

#define IFF_802_1Q_VLAN   0x1 /* 802.1Q VLAN device. */

Definition at line 60 of file if.h.

#define IFF_ALLMULTI   0x200 /* receive all multicast packets*/

Definition at line 40 of file if.h.

#define IFF_AUTOMEDIA   0x4000 /* auto media select active */

Definition at line 48 of file if.h.

#define IFF_BONDING   0x20 /* bonding master or slave */

Definition at line 65 of file if.h.

#define IFF_BRIDGE_PORT   0x4000 /* device used as bridge port */

Definition at line 74 of file if.h.

#define IFF_BROADCAST   0x2 /* broadcast address valid */

Definition at line 32 of file if.h.

#define IFF_DEBUG   0x4 /* turn on debugging */

Definition at line 33 of file if.h.

#define IFF_DISABLE_NETPOLL   0x1000 /* disable netpoll at run-time */

Definition at line 72 of file if.h.

#define IFF_DONT_BRIDGE   0x800 /* disallow bridging this ether dev */

Definition at line 71 of file if.h.

#define IFF_DORMANT   0x20000 /* driver signals dormant */

Definition at line 52 of file if.h.

#define IFF_DYNAMIC   0x8000 /* dialup device with changing addresses*/

Definition at line 49 of file if.h.

#define IFF_EBRIDGE   0x2 /* Ethernet bridging device. */

Definition at line 61 of file if.h.

#define IFF_ECHO   0x40000 /* echo sent packets */

Definition at line 54 of file if.h.

#define IFF_ISATAP   0x80 /* ISATAP interface (RFC4214) */

Definition at line 67 of file if.h.

#define IFF_LIVE_ADDR_CHANGE
Value:
0x100000 /* device supports hardware address
* change when it's running */

Definition at line 80 of file if.h.

#define IFF_LOOPBACK   0x8 /* is a loopback net */

Definition at line 34 of file if.h.

#define IFF_LOWER_UP   0x10000 /* driver signals L1 up */

Definition at line 51 of file if.h.

#define IFF_MACVLAN_PORT   0x2000 /* device used as macvlan port */

Definition at line 73 of file if.h.

#define IFF_MASTER   0x400 /* master of a load balancer */

Definition at line 42 of file if.h.

#define IFF_MASTER_8023AD   0x8 /* bonding master, 802.3ad. */

Definition at line 63 of file if.h.

#define IFF_MASTER_ALB   0x10 /* bonding master, balance-alb. */

Definition at line 64 of file if.h.

#define IFF_MASTER_ARPMON   0x100 /* bonding master, ARP mon in use */

Definition at line 68 of file if.h.

#define IFF_MULTICAST   0x1000 /* Supports multicast */

Definition at line 45 of file if.h.

#define IFF_NOARP   0x80 /* no ARP protocol */

Definition at line 38 of file if.h.

#define IFF_NOTRAILERS   0x20 /* avoid use of trailers */

Definition at line 36 of file if.h.

#define IFF_OVS_DATAPATH
Value:
0x8000 /* device used as Open vSwitch
* datapath port */

Definition at line 75 of file if.h.

#define IFF_POINTOPOINT   0x10 /* interface is has p-p link */

Definition at line 35 of file if.h.

#define IFF_PORTSEL   0x2000 /* can set media type */

Definition at line 47 of file if.h.

#define IFF_PROMISC   0x100 /* receive all packets */

Definition at line 39 of file if.h.

#define IFF_RUNNING   0x40 /* interface RFC2863 OPER_UP */

Definition at line 37 of file if.h.

#define IFF_SLAVE   0x800 /* slave of a load balancer */

Definition at line 43 of file if.h.

#define IFF_SLAVE_INACTIVE   0x4 /* bonding slave not the curr. active */

Definition at line 62 of file if.h.

#define IFF_SLAVE_NEEDARP   0x40 /* need ARPs for validation */

Definition at line 66 of file if.h.

#define IFF_SUPP_NOFCS   0x80000 /* device supports sending custom FCS */

Definition at line 79 of file if.h.

#define IFF_TEAM_PORT   0x40000 /* device used as team port */

Definition at line 78 of file if.h.

#define IFF_TX_SKB_SHARING
Value:
0x10000 /* The interface supports sharing
* skbs on transmit */

Definition at line 76 of file if.h.

#define IFF_UNICAST_FLT   0x20000 /* Supports unicast filtering */

Definition at line 77 of file if.h.

#define IFF_UP   0x1 /* interface is up */

Definition at line 31 of file if.h.

#define IFF_VOLATILE
#define IFF_WAN_HDLC   0x200 /* WAN HDLC device */

Definition at line 69 of file if.h.

#define IFF_XMIT_DST_RELEASE
Value:
0x400 /* dev_hard_start_xmit() is allowed to
* release skb->dst
*/

Definition at line 70 of file if.h.

#define IFHWADDRLEN   6

Definition at line 172 of file if.h.

#define IFNAMSIZ   16

Definition at line 26 of file if.h.

#define ifr_addr   ifr_ifru.ifru_addr /* address */

Definition at line 197 of file if.h.

#define ifr_bandwidth   ifr_ifru.ifru_ivalue /* link bandwidth */

Definition at line 208 of file if.h.

#define ifr_broadaddr   ifr_ifru.ifru_broadaddr /* broadcast address */

Definition at line 199 of file if.h.

#define ifr_data   ifr_ifru.ifru_data /* for use by interface */

Definition at line 206 of file if.h.

#define ifr_dstaddr   ifr_ifru.ifru_dstaddr /* other end of p-p lnk */

Definition at line 198 of file if.h.

#define ifr_flags   ifr_ifru.ifru_flags /* flags */

Definition at line 201 of file if.h.

#define ifr_hwaddr   ifr_ifru.ifru_hwaddr /* MAC address */

Definition at line 196 of file if.h.

#define ifr_ifindex   ifr_ifru.ifru_ivalue /* interface index */

Definition at line 207 of file if.h.

#define ifr_map   ifr_ifru.ifru_map /* device map */

Definition at line 204 of file if.h.

#define ifr_metric   ifr_ifru.ifru_ivalue /* metric */

Definition at line 202 of file if.h.

#define ifr_mtu   ifr_ifru.ifru_mtu /* mtu */

Definition at line 203 of file if.h.

#define ifr_name   ifr_ifrn.ifrn_name /* interface name */

Definition at line 195 of file if.h.

#define ifr_netmask   ifr_ifru.ifru_netmask /* interface net mask */

Definition at line 200 of file if.h.

#define ifr_newname   ifr_ifru.ifru_newname /* New name */

Definition at line 210 of file if.h.

#define ifr_qlen   ifr_ifru.ifru_ivalue /* Queue length */

Definition at line 209 of file if.h.

#define ifr_settings   ifr_ifru.ifru_settings /* Device/proto settings*/

Definition at line 211 of file if.h.

#define ifr_slave   ifr_ifru.ifru_slave /* slave device */

Definition at line 205 of file if.h.

Enumeration Type Documentation

anonymous enum
Enumerator:
IF_OPER_UNKNOWN 
IF_OPER_NOTPRESENT 
IF_OPER_DOWN 
IF_OPER_LOWERLAYERDOWN 
IF_OPER_TESTING 
IF_OPER_DORMANT 
IF_OPER_UP 

Definition at line 111 of file if.h.

anonymous enum
Enumerator:
IF_LINK_MODE_DEFAULT 
IF_LINK_MODE_DORMANT 

Definition at line 122 of file if.h.