1
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>
8
9
10
11
12
13 #define BR2684_MEDIA_ETHERNET (0)
14 #define BR2684_MEDIA_802_4 (1)
15 #define BR2684_MEDIA_TR (2)
16 #define BR2684_MEDIA_FDDI (3)
17 #define BR2684_MEDIA_802_6 (4)
18
19
20 #define BR2684_FLAG_ROUTED (1<<16)
21
22
23
24
25 #define BR2684_FCSIN_NO (0)
26 #define BR2684_FCSIN_IGNORE (1)
27 #define BR2684_FCSIN_VERIFY (2)
28
29
30
31
32 #define BR2684_FCSOUT_NO (0)
33 #define BR2684_FCSOUT_SENDZERO (1)
34 #define BR2684_FCSOUT_GENERATE (2)
35
36
37
38
39 #define BR2684_ENCAPS_VC (0)
40 #define BR2684_ENCAPS_LLC (1)
41 #define BR2684_ENCAPS_AUTODETECT (2)
42
43
44
45
46
47 #define BR2684_PAYLOAD_ROUTED (0)
48 #define BR2684_PAYLOAD_BRIDGED (1)
49
50
51
52
53
54
55 struct atm_newif_br2684 {
56 atm_backend_t backend_num;
57 int media;
58 char ifname[IFNAMSIZ];
59 int mtu;
60 };
61
62
63
64
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;
71 union {
72 char ifname[IFNAMSIZ];
73 int devnum;
74 } spec;
75 };
76
77
78
79
80
81
82 struct atm_backend_br2684 {
83 atm_backend_t backend_num;
84 struct br2684_if_spec ifspec;
85 int fcs_in;
86 int fcs_out;
87 int fcs_auto;
88 int encaps;
89 int has_vpiid;
90 __u8 vpn_id[7];
91 int send_padding;
92 int min_size;
93 };
94
95
96
97
98
99
100 struct br2684_filter {
101 __be32 prefix;
102 __be32 netmask;
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