55 lines
1.7 KiB
Diff
55 lines
1.7 KiB
Diff
Upstream-Status: Pending
|
|
diff --git a/include/linux/if_pppol2tp.h b/include/linux/if_pppol2tp.h
|
|
index 4113d6a..7ee86b2 100644
|
|
--- a/include/linux/if_pppol2tp.h
|
|
+++ b/include/linux/if_pppol2tp.h
|
|
@@ -2,7 +2,7 @@
|
|
* Linux PPP over L2TP (PPPoL2TP) Socket Implementation (RFC 2661)
|
|
*
|
|
* This file supplies definitions required by the PPP over L2TP driver
|
|
- * (pppol2tp.c). All version information wrt this file is located in pppol2tp.c
|
|
+ * (l2tp_ppp.c). All version information wrt this file is located in l2tp_ppp.c
|
|
*
|
|
* License:
|
|
* This program is free software; you can redistribute it and/or
|
|
@@ -15,14 +15,14 @@
|
|
#ifndef __LINUX_IF_PPPOL2TP_H
|
|
#define __LINUX_IF_PPPOL2TP_H
|
|
|
|
-#include <asm/types.h>
|
|
+#include <linux/types.h>
|
|
+
|
|
|
|
/* Structure used to connect() the socket to a particular tunnel UDP
|
|
* socket.
|
|
*/
|
|
-struct pppol2tp_addr
|
|
-{
|
|
- pid_t pid; /* pid that owns the fd.
|
|
+struct pppol2tp_addr {
|
|
+ __kernel_pid_t pid; /* pid that owns the fd.
|
|
* 0 => current */
|
|
int fd; /* FD of UDP socket to use */
|
|
|
|
@@ -32,6 +32,20 @@ struct pppol2tp_addr
|
|
__u16 d_tunnel, d_session; /* For sending outgoing packets */
|
|
};
|
|
|
|
+/* The L2TPv3 protocol changes tunnel and session ids from 16 to 32
|
|
+ * bits. So we need a different sockaddr structure.
|
|
+ */
|
|
+struct pppol2tpv3_addr {
|
|
+ pid_t pid; /* pid that owns the fd.
|
|
+ * 0 => current */
|
|
+ int fd; /* FD of UDP or IP socket to use */
|
|
+
|
|
+ struct sockaddr_in addr; /* IP address and port to send to */
|
|
+
|
|
+ __u32 s_tunnel, s_session; /* For matching incoming packets */
|
|
+ __u32 d_tunnel, d_session; /* For sending outgoing packets */
|
|
+};
|
|
+
|
|
/* Socket options:
|
|
* DEBUG - bitmask of debug message categories
|
|
* SENDSEQ - 0 => don't send packets with sequence numbers
|