Home | History | Annotate | Download | only in linux
      1 /****************************************************************************
      2  ****************************************************************************
      3  ***
      4  ***   This header was automatically generated from a Linux kernel header
      5  ***   of the same name, to make information necessary for userspace to
      6  ***   call into the kernel available to libc.  It contains only constants,
      7  ***   structures, and macros generated from the original header, and thus,
      8  ***   contains no copyrightable information.
      9  ***
     10  ***   To edit the content of this header, modify the corresponding
     11  ***   source file (e.g. under external/kernel-headers/original/) then
     12  ***   run bionic/libc/kernel/tools/update_all.py
     13  ***
     14  ***   Any manual change here will be lost the next time this script will
     15  ***   be run. You've been warned!
     16  ***
     17  ****************************************************************************
     18  ****************************************************************************/
     19 #ifndef _UAPI_LINUX_IF_BRIDGE_H
     20 #define _UAPI_LINUX_IF_BRIDGE_H
     21 #include <linux/types.h>
     22 #include <linux/if_ether.h>
     23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     24 #include <linux/in6.h>
     25 #define SYSFS_BRIDGE_ATTR "bridge"
     26 #define SYSFS_BRIDGE_FDB "brforward"
     27 #define SYSFS_BRIDGE_PORT_SUBDIR "brif"
     28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     29 #define SYSFS_BRIDGE_PORT_ATTR "brport"
     30 #define SYSFS_BRIDGE_PORT_LINK "bridge"
     31 #define BRCTL_VERSION 1
     32 #define BRCTL_GET_VERSION 0
     33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     34 #define BRCTL_GET_BRIDGES 1
     35 #define BRCTL_ADD_BRIDGE 2
     36 #define BRCTL_DEL_BRIDGE 3
     37 #define BRCTL_ADD_IF 4
     38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     39 #define BRCTL_DEL_IF 5
     40 #define BRCTL_GET_BRIDGE_INFO 6
     41 #define BRCTL_GET_PORT_LIST 7
     42 #define BRCTL_SET_BRIDGE_FORWARD_DELAY 8
     43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     44 #define BRCTL_SET_BRIDGE_HELLO_TIME 9
     45 #define BRCTL_SET_BRIDGE_MAX_AGE 10
     46 #define BRCTL_SET_AGEING_TIME 11
     47 #define BRCTL_SET_GC_INTERVAL 12
     48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     49 #define BRCTL_GET_PORT_INFO 13
     50 #define BRCTL_SET_BRIDGE_STP_STATE 14
     51 #define BRCTL_SET_BRIDGE_PRIORITY 15
     52 #define BRCTL_SET_PORT_PRIORITY 16
     53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     54 #define BRCTL_SET_PATH_COST 17
     55 #define BRCTL_GET_FDB_ENTRIES 18
     56 #define BR_STATE_DISABLED 0
     57 #define BR_STATE_LISTENING 1
     58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     59 #define BR_STATE_LEARNING 2
     60 #define BR_STATE_FORWARDING 3
     61 #define BR_STATE_BLOCKING 4
     62 struct __bridge_info {
     63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     64   __u64 designated_root;
     65   __u64 bridge_id;
     66   __u32 root_path_cost;
     67   __u32 max_age;
     68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     69   __u32 hello_time;
     70   __u32 forward_delay;
     71   __u32 bridge_max_age;
     72   __u32 bridge_hello_time;
     73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     74   __u32 bridge_forward_delay;
     75   __u8 topology_change;
     76   __u8 topology_change_detected;
     77   __u8 root_port;
     78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     79   __u8 stp_enabled;
     80   __u32 ageing_time;
     81   __u32 gc_interval;
     82   __u32 hello_timer_value;
     83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     84   __u32 tcn_timer_value;
     85   __u32 topology_change_timer_value;
     86   __u32 gc_timer_value;
     87 };
     88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     89 struct __port_info {
     90   __u64 designated_root;
     91   __u64 designated_bridge;
     92   __u16 port_id;
     93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     94   __u16 designated_port;
     95   __u32 path_cost;
     96   __u32 designated_cost;
     97   __u8 state;
     98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     99   __u8 top_change_ack;
    100   __u8 config_pending;
    101   __u8 unused0;
    102   __u32 message_age_timer_value;
    103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    104   __u32 forward_delay_timer_value;
    105   __u32 hold_timer_value;
    106 };
    107 struct __fdb_entry {
    108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    109   __u8 mac_addr[ETH_ALEN];
    110   __u8 port_no;
    111   __u8 is_local;
    112   __u32 ageing_timer_value;
    113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    114   __u8 port_hi;
    115   __u8 pad0;
    116   __u16 unused;
    117 };
    118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    119 #define BRIDGE_FLAGS_MASTER 1
    120 #define BRIDGE_FLAGS_SELF 2
    121 #define BRIDGE_MODE_VEB 0
    122 #define BRIDGE_MODE_VEPA 1
    123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    124 #define BRIDGE_MODE_UNDEF 0xFFFF
    125 enum {
    126   IFLA_BRIDGE_FLAGS,
    127   IFLA_BRIDGE_MODE,
    128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    129   IFLA_BRIDGE_VLAN_INFO,
    130   __IFLA_BRIDGE_MAX,
    131 };
    132 #define IFLA_BRIDGE_MAX (__IFLA_BRIDGE_MAX - 1)
    133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    134 #define BRIDGE_VLAN_INFO_MASTER (1 << 0)
    135 #define BRIDGE_VLAN_INFO_PVID (1 << 1)
    136 #define BRIDGE_VLAN_INFO_UNTAGGED (1 << 2)
    137 #define BRIDGE_VLAN_INFO_RANGE_BEGIN (1 << 3)
    138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    139 #define BRIDGE_VLAN_INFO_RANGE_END (1 << 4)
    140 #define BRIDGE_VLAN_INFO_BRENTRY (1 << 5)
    141 struct bridge_vlan_info {
    142   __u16 flags;
    143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    144   __u16 vid;
    145 };
    146 struct bridge_vlan_xstats {
    147   __u64 rx_bytes;
    148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    149   __u64 rx_packets;
    150   __u64 tx_bytes;
    151   __u64 tx_packets;
    152   __u16 vid;
    153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    154   __u16 flags;
    155   __u32 pad2;
    156 };
    157 enum {
    158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    159   MDBA_UNSPEC,
    160   MDBA_MDB,
    161   MDBA_ROUTER,
    162   __MDBA_MAX,
    163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    164 };
    165 #define MDBA_MAX (__MDBA_MAX - 1)
    166 enum {
    167   MDBA_MDB_UNSPEC,
    168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    169   MDBA_MDB_ENTRY,
    170   __MDBA_MDB_MAX,
    171 };
    172 #define MDBA_MDB_MAX (__MDBA_MDB_MAX - 1)
    173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    174 enum {
    175   MDBA_MDB_ENTRY_UNSPEC,
    176   MDBA_MDB_ENTRY_INFO,
    177   __MDBA_MDB_ENTRY_MAX,
    178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    179 };
    180 #define MDBA_MDB_ENTRY_MAX (__MDBA_MDB_ENTRY_MAX - 1)
    181 enum {
    182   MDBA_MDB_EATTR_UNSPEC,
    183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    184   MDBA_MDB_EATTR_TIMER,
    185   __MDBA_MDB_EATTR_MAX
    186 };
    187 #define MDBA_MDB_EATTR_MAX (__MDBA_MDB_EATTR_MAX - 1)
    188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    189 enum {
    190   MDB_RTR_TYPE_DISABLED,
    191   MDB_RTR_TYPE_TEMP_QUERY,
    192   MDB_RTR_TYPE_PERM,
    193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    194   MDB_RTR_TYPE_TEMP
    195 };
    196 enum {
    197   MDBA_ROUTER_UNSPEC,
    198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    199   MDBA_ROUTER_PORT,
    200   __MDBA_ROUTER_MAX,
    201 };
    202 #define MDBA_ROUTER_MAX (__MDBA_ROUTER_MAX - 1)
    203 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    204 enum {
    205   MDBA_ROUTER_PATTR_UNSPEC,
    206   MDBA_ROUTER_PATTR_TIMER,
    207   MDBA_ROUTER_PATTR_TYPE,
    208 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    209   __MDBA_ROUTER_PATTR_MAX
    210 };
    211 #define MDBA_ROUTER_PATTR_MAX (__MDBA_ROUTER_PATTR_MAX - 1)
    212 struct br_port_msg {
    213 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    214   __u8 family;
    215   __u32 ifindex;
    216 };
    217 struct br_mdb_entry {
    218 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    219   __u32 ifindex;
    220 #define MDB_TEMPORARY 0
    221 #define MDB_PERMANENT 1
    222   __u8 state;
    223 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    224 #define MDB_FLAGS_OFFLOAD (1 << 0)
    225   __u8 flags;
    226   __u16 vid;
    227   struct {
    228 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    229     union {
    230       __be32 ip4;
    231       struct in6_addr ip6;
    232     } u;
    233 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    234     __be16 proto;
    235   } addr;
    236 };
    237 enum {
    238 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    239   MDBA_SET_ENTRY_UNSPEC,
    240   MDBA_SET_ENTRY,
    241   __MDBA_SET_ENTRY_MAX,
    242 };
    243 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    244 #define MDBA_SET_ENTRY_MAX (__MDBA_SET_ENTRY_MAX - 1)
    245 enum {
    246   BRIDGE_XSTATS_UNSPEC,
    247   BRIDGE_XSTATS_VLAN,
    248 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    249   BRIDGE_XSTATS_MCAST,
    250   BRIDGE_XSTATS_PAD,
    251   __BRIDGE_XSTATS_MAX
    252 };
    253 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    254 #define BRIDGE_XSTATS_MAX (__BRIDGE_XSTATS_MAX - 1)
    255 enum {
    256   BR_MCAST_DIR_RX,
    257   BR_MCAST_DIR_TX,
    258 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    259   BR_MCAST_DIR_SIZE
    260 };
    261 struct br_mcast_stats {
    262   __u64 igmp_v1queries[BR_MCAST_DIR_SIZE];
    263 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    264   __u64 igmp_v2queries[BR_MCAST_DIR_SIZE];
    265   __u64 igmp_v3queries[BR_MCAST_DIR_SIZE];
    266   __u64 igmp_leaves[BR_MCAST_DIR_SIZE];
    267   __u64 igmp_v1reports[BR_MCAST_DIR_SIZE];
    268 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    269   __u64 igmp_v2reports[BR_MCAST_DIR_SIZE];
    270   __u64 igmp_v3reports[BR_MCAST_DIR_SIZE];
    271   __u64 igmp_parse_errors;
    272   __u64 mld_v1queries[BR_MCAST_DIR_SIZE];
    273 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    274   __u64 mld_v2queries[BR_MCAST_DIR_SIZE];
    275   __u64 mld_leaves[BR_MCAST_DIR_SIZE];
    276   __u64 mld_v1reports[BR_MCAST_DIR_SIZE];
    277   __u64 mld_v2reports[BR_MCAST_DIR_SIZE];
    278 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    279   __u64 mld_parse_errors;
    280   __u64 mcast_bytes[BR_MCAST_DIR_SIZE];
    281   __u64 mcast_packets[BR_MCAST_DIR_SIZE];
    282 };
    283 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    284 #endif
    285