Skip to content

Commit 1875a9a

Browse files
wenxudavem330
authored andcommitted
iptunnel: make TUNNEL_FLAGS available in uapi
ip l add dev tun type gretap external ip r a 10.0.0.1 encap ip dst 192.168.152.171 id 1000 dev gretap For gretap Key example when the command set the id but don't set the TUNNEL_KEY flags. There is no key field in the send packet In the lwtunnel situation, some TUNNEL_FLAGS should can be set by userspace Signed-off-by: wenxu <wenxu@ucloud.cn> Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 8e1da73 commit 1875a9a

File tree

2 files changed

+20
-19
lines changed

2 files changed

+20
-19
lines changed

include/net/ip_tunnels.h

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -144,25 +144,6 @@ struct ip_tunnel {
144144
bool ignore_df;
145145
};
146146

147-
#define TUNNEL_CSUM __cpu_to_be16(0x01)
148-
#define TUNNEL_ROUTING __cpu_to_be16(0x02)
149-
#define TUNNEL_KEY __cpu_to_be16(0x04)
150-
#define TUNNEL_SEQ __cpu_to_be16(0x08)
151-
#define TUNNEL_STRICT __cpu_to_be16(0x10)
152-
#define TUNNEL_REC __cpu_to_be16(0x20)
153-
#define TUNNEL_VERSION __cpu_to_be16(0x40)
154-
#define TUNNEL_NO_KEY __cpu_to_be16(0x80)
155-
#define TUNNEL_DONT_FRAGMENT __cpu_to_be16(0x0100)
156-
#define TUNNEL_OAM __cpu_to_be16(0x0200)
157-
#define TUNNEL_CRIT_OPT __cpu_to_be16(0x0400)
158-
#define TUNNEL_GENEVE_OPT __cpu_to_be16(0x0800)
159-
#define TUNNEL_VXLAN_OPT __cpu_to_be16(0x1000)
160-
#define TUNNEL_NOCACHE __cpu_to_be16(0x2000)
161-
#define TUNNEL_ERSPAN_OPT __cpu_to_be16(0x4000)
162-
163-
#define TUNNEL_OPTIONS_PRESENT \
164-
(TUNNEL_GENEVE_OPT | TUNNEL_VXLAN_OPT | TUNNEL_ERSPAN_OPT)
165-
166147
struct tnl_ptk_info {
167148
__be16 flags;
168149
__be16 proto;

include/uapi/linux/if_tunnel.h

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,4 +160,24 @@ enum {
160160
};
161161

162162
#define IFLA_VTI_MAX (__IFLA_VTI_MAX - 1)
163+
164+
#define TUNNEL_CSUM __cpu_to_be16(0x01)
165+
#define TUNNEL_ROUTING __cpu_to_be16(0x02)
166+
#define TUNNEL_KEY __cpu_to_be16(0x04)
167+
#define TUNNEL_SEQ __cpu_to_be16(0x08)
168+
#define TUNNEL_STRICT __cpu_to_be16(0x10)
169+
#define TUNNEL_REC __cpu_to_be16(0x20)
170+
#define TUNNEL_VERSION __cpu_to_be16(0x40)
171+
#define TUNNEL_NO_KEY __cpu_to_be16(0x80)
172+
#define TUNNEL_DONT_FRAGMENT __cpu_to_be16(0x0100)
173+
#define TUNNEL_OAM __cpu_to_be16(0x0200)
174+
#define TUNNEL_CRIT_OPT __cpu_to_be16(0x0400)
175+
#define TUNNEL_GENEVE_OPT __cpu_to_be16(0x0800)
176+
#define TUNNEL_VXLAN_OPT __cpu_to_be16(0x1000)
177+
#define TUNNEL_NOCACHE __cpu_to_be16(0x2000)
178+
#define TUNNEL_ERSPAN_OPT __cpu_to_be16(0x4000)
179+
180+
#define TUNNEL_OPTIONS_PRESENT \
181+
(TUNNEL_GENEVE_OPT | TUNNEL_VXLAN_OPT | TUNNEL_ERSPAN_OPT)
182+
163183
#endif /* _UAPI_IF_TUNNEL_H_ */

0 commit comments

Comments
 (0)