~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/uapi/linux/atmbr2684.h

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
  2 #ifndef _LINUX_ATMBR2684_H
  3 #define _LINUX_ATMBR2684_H
  4 
  5 #include <linux/types.h>
  6 #include <linux/atm.h>
  7 #include <linux/if.h>           /* For IFNAMSIZ */
  8 
  9 /*
 10  * Type of media we're bridging (ethernet, token ring, etc)  Currently only
 11  * ethernet is supported
 12  */
 13 #define BR2684_MEDIA_ETHERNET   (0)     /* 802.3 */
 14 #define BR2684_MEDIA_802_4      (1)     /* 802.4 */
 15 #define BR2684_MEDIA_TR         (2)     /* 802.5 - token ring */
 16 #define BR2684_MEDIA_FDDI       (3)
 17 #define BR2684_MEDIA_802_6      (4)     /* 802.6 */
 18 
 19                                         /* used only at device creation:  */
 20 #define BR2684_FLAG_ROUTED      (1<<16) /* payload is routed, not bridged */
 21 
 22 /*
 23  * Is there FCS inbound on this VC?  This currently isn't supported.
 24  */
 25 #define BR2684_FCSIN_NO         (0)
 26 #define BR2684_FCSIN_IGNORE     (1)
 27 #define BR2684_FCSIN_VERIFY     (2)
 28 
 29 /*
 30  * Is there FCS outbound on this VC?  This currently isn't supported.
 31  */
 32 #define BR2684_FCSOUT_NO        (0)
 33 #define BR2684_FCSOUT_SENDZERO  (1)
 34 #define BR2684_FCSOUT_GENERATE  (2)
 35 
 36 /*
 37  * Does this VC include LLC encapsulation?
 38  */
 39 #define BR2684_ENCAPS_VC        (0)     /* VC-mux */
 40 #define BR2684_ENCAPS_LLC       (1)
 41 #define BR2684_ENCAPS_AUTODETECT (2)    /* Unsupported */
 42 
 43 /*
 44  * Is this VC bridged or routed?
 45  */
 46 
 47 #define BR2684_PAYLOAD_ROUTED   (0)
 48 #define BR2684_PAYLOAD_BRIDGED  (1)
 49 
 50 /*
 51  * This is for the ATM_NEWBACKENDIF call - these are like socket families:
 52  * the first element of the structure is the backend number and the rest
 53  * is per-backend specific
 54  */
 55 struct atm_newif_br2684 {
 56         atm_backend_t backend_num;      /* ATM_BACKEND_BR2684 */
 57         int media;              /* BR2684_MEDIA_*, flags in upper bits */
 58         char ifname[IFNAMSIZ];
 59         int mtu;
 60 };
 61 
 62 /*
 63  * This structure is used to specify a br2684 interface - either by a
 64  * positive integer (returned by ATM_NEWBACKENDIF) or the interfaces name
 65  */
 66 #define BR2684_FIND_BYNOTHING   (0)
 67 #define BR2684_FIND_BYNUM       (1)
 68 #define BR2684_FIND_BYIFNAME    (2)
 69 struct br2684_if_spec {
 70         int method;             /* BR2684_FIND_* */
 71         union {
 72                 char ifname[IFNAMSIZ];
 73                 int devnum;
 74         } spec;
 75 };
 76 
 77 /*
 78  * This is for the ATM_SETBACKEND call - these are like socket families:
 79  * the first element of the structure is the backend number and the rest
 80  * is per-backend specific
 81  */
 82 struct atm_backend_br2684 {
 83         atm_backend_t backend_num;      /* ATM_BACKEND_BR2684 */
 84         struct br2684_if_spec ifspec;
 85         int fcs_in;             /* BR2684_FCSIN_* */
 86         int fcs_out;            /* BR2684_FCSOUT_* */
 87         int fcs_auto;           /* 1: fcs_{in,out} disabled if no FCS rx'ed */
 88         int encaps;             /* BR2684_ENCAPS_* */
 89         int has_vpiid;          /* 1: use vpn_id - Unsupported */
 90         __u8 vpn_id[7];
 91         int send_padding;       /* unsupported */
 92         int min_size;           /* we will pad smaller packets than this */
 93 };
 94 
 95 /*
 96  * The BR2684_SETFILT ioctl is an experimental mechanism for folks
 97  * terminating a large number of IP-only vcc's.  When netfilter allows
 98  * efficient per-if in/out filters, this support will be removed
 99  */
100 struct br2684_filter {
101         __be32 prefix;          /* network byte order */
102         __be32 netmask;         /* 0 = disable filter */
103 };
104 
105 struct br2684_filter_set {
106         struct br2684_if_spec ifspec;
107         struct br2684_filter filter;
108 };
109 
110 enum br2684_payload {
111         p_routed = BR2684_PAYLOAD_ROUTED,
112         p_bridged = BR2684_PAYLOAD_BRIDGED,
113 };
114 
115 #define BR2684_SETFILT  _IOW( 'a', ATMIOC_BACKEND + 0, \
116                                 struct br2684_filter_set)
117 
118 #endif /* _LINUX_ATMBR2684_H */
119 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php