atmbr2684.h
001: #ifndef _LINUX_ATMBR2684_H
002: #define _LINUX_ATMBR2684_H
003: 
004: #include <linux/types.h>
005: #include <linux/atm.h>
006: #include <linux/if.h>           
007: 
008: 
009: 
010: 
011: 
012: #define BR2684_MEDIA_ETHERNET   (0)     
013: #define BR2684_MEDIA_802_4      (1)     
014: #define BR2684_MEDIA_TR         (2)     
015: #define BR2684_MEDIA_FDDI       (3)
016: #define BR2684_MEDIA_802_6      (4)     
017: 
018:                                         
019: #define BR2684_FLAG_ROUTED      (1<<16) 
020: 
021: 
022: 
023: 
024: #define BR2684_FCSIN_NO         (0)
025: #define BR2684_FCSIN_IGNORE     (1)
026: #define BR2684_FCSIN_VERIFY     (2)
027: 
028: 
029: 
030: 
031: #define BR2684_FCSOUT_NO        (0)
032: #define BR2684_FCSOUT_SENDZERO  (1)
033: #define BR2684_FCSOUT_GENERATE  (2)
034: 
035: 
036: 
037: 
038: #define BR2684_ENCAPS_VC        (0)     
039: #define BR2684_ENCAPS_LLC       (1)
040: #define BR2684_ENCAPS_AUTODETECT (2)    
041: 
042: 
043: 
044: 
045: 
046: #define BR2684_PAYLOAD_ROUTED   (0)
047: #define BR2684_PAYLOAD_BRIDGED  (1)
048: 
049: 
050: 
051: 
052: 
053: 
054: struct atm_newif_br2684 {
055:         atm_backend_t backend_num;      
056:         int media;              
057:         char ifname[IFNAMSIZ];
058:         int mtu;
059: };
060: 
061: 
062: 
063: 
064: 
065: #define BR2684_FIND_BYNOTHING   (0)
066: #define BR2684_FIND_BYNUM       (1)
067: #define BR2684_FIND_BYIFNAME    (2)
068: struct br2684_if_spec {
069:         int method;             
070:         union {
071:                 char ifname[IFNAMSIZ];
072:                 int devnum;
073:         } spec;
074: };
075: 
076: 
077: 
078: 
079: 
080: 
081: struct atm_backend_br2684 {
082:         atm_backend_t backend_num;      
083:         struct br2684_if_spec ifspec;
084:         int fcs_in;             
085:         int fcs_out;            
086:         int fcs_auto;           
087:         int encaps;             
088:         int has_vpiid;          
089:         __u8 vpn_id[7];
090:         int send_padding;       
091:         int min_size;           
092: };
093: 
094: 
095: 
096: 
097: 
098: 
099: struct br2684_filter {
100:         __be32 prefix;          
101:         __be32 netmask;         
102: };
103: 
104: struct br2684_filter_set {
105:         struct br2684_if_spec ifspec;
106:         struct br2684_filter filter;
107: };
108: 
109: enum br2684_payload {
110:         p_routed = BR2684_PAYLOAD_ROUTED,
111:         p_bridged = BR2684_PAYLOAD_BRIDGED,
112: };
113: 
114: #define BR2684_SETFILT  _IOW( 'a', ATMIOC_BACKEND + 0, \
115:                                 struct br2684_filter_set)
116: 
117: #endif 
118: 
      
      
      
      
   
      
      
         
            
            © Andrew Scott 2006 -
            2025, 
            All Rights Reserved