You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
l2tp: Add L2TPv3 IP encapsulation (no UDP) support
This patch adds a new L2TPIP socket family and modifies the core to handle the case where there is no UDP header in the L2TP packet. L2TP/IP uses IP protocol 115. Since L2TP/UDP and L2TP/IP packets differ in layout, the datapath packet handling code needs changes too. Userspace uses an L2TPIP socket instead of a UDP socket when IP encapsulation is required. We can't use raw sockets for this because the semantics of raw sockets don't lend themselves to the socket-per-tunnel model - we need to Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
e0d4435f93
commit
0d76751fad
@@ -48,6 +48,11 @@ enum l2tp_l2spec_type {
|
||||
L2TP_L2SPECTYPE_DEFAULT,
|
||||
};
|
||||
|
||||
enum l2tp_encap_type {
|
||||
L2TP_ENCAPTYPE_UDP,
|
||||
L2TP_ENCAPTYPE_IP,
|
||||
};
|
||||
|
||||
struct sk_buff;
|
||||
|
||||
struct l2tp_stats {
|
||||
@@ -155,6 +160,7 @@ struct l2tp_session {
|
||||
struct l2tp_tunnel_cfg {
|
||||
int debug; /* bitmask of debug message
|
||||
* categories */
|
||||
enum l2tp_encap_type encap;
|
||||
};
|
||||
|
||||
struct l2tp_tunnel {
|
||||
@@ -170,6 +176,7 @@ struct l2tp_tunnel {
|
||||
char name[20]; /* for logging */
|
||||
int debug; /* bitmask of debug message
|
||||
* categories */
|
||||
enum l2tp_encap_type encap;
|
||||
struct l2tp_stats stats;
|
||||
|
||||
struct list_head list; /* Keep a list of all tunnels */
|
||||
|
||||
Reference in New Issue
Block a user