1 pppol2tp: Provide struct pppol2tpv3_addr to align with Linux
3 The struct pppol2tpv3_addr is referenced in the current Linux kernel sources
4 but not provided by the shipped kernel headers, add it.
6 Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
8 --- a/include/linux/if_pppol2tp.h
9 +++ b/include/linux/if_pppol2tp.h
10 @@ -32,6 +32,46 @@ struct pppol2tp_addr
11 __u16 d_tunnel, d_session; /* For sending outgoing packets */
14 +/* Structure used to connect() the socket to a particular tunnel UDP
17 +struct pppol2tpin6_addr
19 + pid_t pid; /* pid that owns the fd.
21 + int fd; /* FD of UDP socket to use */
23 + __u16 s_tunnel, s_session; /* For matching incoming packets */
24 + __u16 d_tunnel, d_session; /* For sending outgoing packets */
26 + struct sockaddr_in6 addr; /* IP address and port to send to */
29 +/* The L2TPv3 protocol changes tunnel and session ids from 16 to 32
30 + * bits. So we need a different sockaddr structure.
32 +struct pppol2tpv3_addr {
33 + pid_t pid; /* pid that owns the fd.
35 + int fd; /* FD of UDP or IP socket to use */
37 + struct sockaddr_in addr; /* IP address and port to send to */
39 + __u32 s_tunnel, s_session; /* For matching incoming packets */
40 + __u32 d_tunnel, d_session; /* For sending outgoing packets */
43 +struct pppol2tpv3in6_addr {
44 + pid_t pid; /* pid that owns the fd.
46 + int fd; /* FD of UDP or IP socket to use */
48 + __u32 s_tunnel, s_session; /* For matching incoming packets */
49 + __u32 d_tunnel, d_session; /* For sending outgoing packets */
51 + struct sockaddr_in6 addr; /* IP address and port to send to */
55 * DEBUG - bitmask of debug message categories
56 * SENDSEQ - 0 => don't send packets with sequence numbers