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  ****************************************************************************
     11  ****************************************************************************/
     12 #ifndef _LINUX_IF_BRIDGE_H
     13 #define _LINUX_IF_BRIDGE_H
     14 
     15 #include <linux/types.h>
     16 
     17 #define SYSFS_BRIDGE_ATTR "bridge"
     18 #define SYSFS_BRIDGE_FDB "brforward"
     19 #define SYSFS_BRIDGE_PORT_SUBDIR "brif"
     20 #define SYSFS_BRIDGE_PORT_ATTR "brport"
     21 #define SYSFS_BRIDGE_PORT_LINK "bridge"
     22 
     23 #define BRCTL_VERSION 1
     24 
     25 #define BRCTL_GET_VERSION 0
     26 #define BRCTL_GET_BRIDGES 1
     27 #define BRCTL_ADD_BRIDGE 2
     28 #define BRCTL_DEL_BRIDGE 3
     29 #define BRCTL_ADD_IF 4
     30 #define BRCTL_DEL_IF 5
     31 #define BRCTL_GET_BRIDGE_INFO 6
     32 #define BRCTL_GET_PORT_LIST 7
     33 #define BRCTL_SET_BRIDGE_FORWARD_DELAY 8
     34 #define BRCTL_SET_BRIDGE_HELLO_TIME 9
     35 #define BRCTL_SET_BRIDGE_MAX_AGE 10
     36 #define BRCTL_SET_AGEING_TIME 11
     37 #define BRCTL_SET_GC_INTERVAL 12
     38 #define BRCTL_GET_PORT_INFO 13
     39 #define BRCTL_SET_BRIDGE_STP_STATE 14
     40 #define BRCTL_SET_BRIDGE_PRIORITY 15
     41 #define BRCTL_SET_PORT_PRIORITY 16
     42 #define BRCTL_SET_PATH_COST 17
     43 #define BRCTL_GET_FDB_ENTRIES 18
     44 
     45 #define BR_STATE_DISABLED 0
     46 #define BR_STATE_LISTENING 1
     47 #define BR_STATE_LEARNING 2
     48 #define BR_STATE_FORWARDING 3
     49 #define BR_STATE_BLOCKING 4
     50 
     51 struct __bridge_info
     52 {
     53  __u64 designated_root;
     54  __u64 bridge_id;
     55  __u32 root_path_cost;
     56  __u32 max_age;
     57  __u32 hello_time;
     58  __u32 forward_delay;
     59  __u32 bridge_max_age;
     60  __u32 bridge_hello_time;
     61  __u32 bridge_forward_delay;
     62  __u8 topology_change;
     63  __u8 topology_change_detected;
     64  __u8 root_port;
     65  __u8 stp_enabled;
     66  __u32 ageing_time;
     67  __u32 gc_interval;
     68  __u32 hello_timer_value;
     69  __u32 tcn_timer_value;
     70  __u32 topology_change_timer_value;
     71  __u32 gc_timer_value;
     72 };
     73 
     74 struct __port_info
     75 {
     76  __u64 designated_root;
     77  __u64 designated_bridge;
     78  __u16 port_id;
     79  __u16 designated_port;
     80  __u32 path_cost;
     81  __u32 designated_cost;
     82  __u8 state;
     83  __u8 top_change_ack;
     84  __u8 config_pending;
     85  __u8 unused0;
     86  __u32 message_age_timer_value;
     87  __u32 forward_delay_timer_value;
     88  __u32 hold_timer_value;
     89 };
     90 
     91 struct __fdb_entry
     92 {
     93  __u8 mac_addr[6];
     94  __u8 port_no;
     95  __u8 is_local;
     96  __u32 ageing_timer_value;
     97  __u32 unused;
     98 };
     99 
    100 #endif
    101