summaryrefslogtreecommitdiffstats
path: root/meta/recipes-connectivity/ppp/ppp-2.4.5/update_if_pppol2tp.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-connectivity/ppp/ppp-2.4.5/update_if_pppol2tp.patch')
-rw-r--r--meta/recipes-connectivity/ppp/ppp-2.4.5/update_if_pppol2tp.patch54
1 files changed, 54 insertions, 0 deletions
diff --git a/meta/recipes-connectivity/ppp/ppp-2.4.5/update_if_pppol2tp.patch b/meta/recipes-connectivity/ppp/ppp-2.4.5/update_if_pppol2tp.patch
new file mode 100644
index 0000000000..e034f19d81
--- /dev/null
+++ b/meta/recipes-connectivity/ppp/ppp-2.4.5/update_if_pppol2tp.patch
@@ -0,0 +1,54 @@
1Upstream-Status: Pending
2diff --git a/include/linux/if_pppol2tp.h b/include/linux/if_pppol2tp.h
3index 4113d6a..7ee86b2 100644
4--- a/include/linux/if_pppol2tp.h
5+++ b/include/linux/if_pppol2tp.h
6@@ -2,7 +2,7 @@
7 * Linux PPP over L2TP (PPPoL2TP) Socket Implementation (RFC 2661)
8 *
9 * This file supplies definitions required by the PPP over L2TP driver
10- * (pppol2tp.c). All version information wrt this file is located in pppol2tp.c
11+ * (l2tp_ppp.c). All version information wrt this file is located in l2tp_ppp.c
12 *
13 * License:
14 * This program is free software; you can redistribute it and/or
15@@ -15,14 +15,14 @@
16 #ifndef __LINUX_IF_PPPOL2TP_H
17 #define __LINUX_IF_PPPOL2TP_H
18
19-#include <asm/types.h>
20+#include <linux/types.h>
21+
22
23 /* Structure used to connect() the socket to a particular tunnel UDP
24 * socket.
25 */
26-struct pppol2tp_addr
27-{
28- pid_t pid; /* pid that owns the fd.
29+struct pppol2tp_addr {
30+ __kernel_pid_t pid; /* pid that owns the fd.
31 * 0 => current */
32 int fd; /* FD of UDP socket to use */
33
34@@ -32,6 +32,20 @@ struct pppol2tp_addr
35 __u16 d_tunnel, d_session; /* For sending outgoing packets */
36 };
37
38+/* The L2TPv3 protocol changes tunnel and session ids from 16 to 32
39+ * bits. So we need a different sockaddr structure.
40+ */
41+struct pppol2tpv3_addr {
42+ pid_t pid; /* pid that owns the fd.
43+ * 0 => current */
44+ int fd; /* FD of UDP or IP socket to use */
45+
46+ struct sockaddr_in addr; /* IP address and port to send to */
47+
48+ __u32 s_tunnel, s_session; /* For matching incoming packets */
49+ __u32 d_tunnel, d_session; /* For sending outgoing packets */
50+};
51+
52 /* Socket options:
53 * DEBUG - bitmask of debug message categories
54 * SENDSEQ - 0 => don't send packets with sequence numbers