blob: deff7bca4e0557c944852ba412b6e9c86e598758 [file] [log] [blame]
James Chapman0d767512010-04-02 06:19:00 +00001/*
2 * L2TP-over-IP socket for L2TPv3.
3 *
4 * Author: James Chapman <jchapman@katalix.com>
5 */
6
7#ifndef _LINUX_L2TP_H_
8#define _LINUX_L2TP_H_
9
10#include <linux/types.h>
11#ifdef __KERNEL__
12#include <linux/socket.h>
13#include <linux/in.h>
14#endif
15
16#define IPPROTO_L2TP 115
17
18/**
19 * struct sockaddr_l2tpip - the sockaddr structure for L2TP-over-IP sockets
20 * @l2tp_family: address family number AF_L2TPIP.
21 * @l2tp_addr: protocol specific address information
22 * @l2tp_conn_id: connection id of tunnel
23 */
24struct sockaddr_l2tpip {
25 /* The first fields must match struct sockaddr_in */
26 sa_family_t l2tp_family; /* AF_INET */
27 __be16 l2tp_unused; /* INET port number (unused) */
28 struct in_addr l2tp_addr; /* Internet address */
29
30 __u32 l2tp_conn_id; /* Connection ID of tunnel */
31
32 /* Pad to size of `struct sockaddr'. */
33 unsigned char __pad[sizeof(struct sockaddr) - sizeof(sa_family_t) -
34 sizeof(__be16) - sizeof(struct in_addr) -
35 sizeof(__u32)];
36};
37
38#endif