• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * This header was generated from the Linux kernel headers by update_headers.py,
3  * to provide necessary information from kernel to userspace, such as constants,
4  * structures, and macros, and thus, contains no copyrightable information.
5  */
6 #ifndef _PPP_IOCTL_H
7 #define _PPP_IOCTL_H
8 #include <linux/types.h>
9 #include <linux/compiler.h>
10 #include <linux/ppp_defs.h>
11 #define SC_COMP_PROT	0x00000001
12 #define SC_COMP_AC	0x00000002
13 #define	SC_COMP_TCP	0x00000004
14 #define SC_NO_TCP_CCID	0x00000008
15 #define SC_REJ_COMP_AC	0x00000010
16 #define SC_REJ_COMP_TCP	0x00000020
17 #define SC_CCP_OPEN	0x00000040
18 #define SC_CCP_UP	0x00000080
19 #define SC_ENABLE_IP	0x00000100
20 #define SC_LOOP_TRAFFIC	0x00000200
21 #define SC_MULTILINK	0x00000400
22 #define SC_MP_SHORTSEQ	0x00000800
23 #define SC_COMP_RUN	0x00001000
24 #define SC_DECOMP_RUN	0x00002000
25 #define SC_MP_XSHORTSEQ	0x00004000
26 #define SC_DEBUG	0x00010000
27 #define SC_LOG_INPKT	0x00020000
28 #define SC_LOG_OUTPKT	0x00040000
29 #define SC_LOG_RAWIN	0x00080000
30 #define SC_LOG_FLUSH	0x00100000
31 #define	SC_SYNC		0x00200000
32 #define	SC_MUST_COMP    0x00400000
33 #define	SC_MASK		0x0f600fff
34 #define SC_XMIT_BUSY	0x10000000
35 #define SC_RCV_ODDP	0x08000000
36 #define SC_RCV_EVNP	0x04000000
37 #define SC_RCV_B7_1	0x02000000
38 #define SC_RCV_B7_0	0x01000000
39 #define SC_DC_FERROR	0x00800000
40 #define SC_DC_ERROR	0x00400000
41 struct npioctl {
42 	int		protocol;
43 	enum NPmode	mode;
44 };
45 struct ppp_option_data {
46 	__u8	__user *ptr;
47 	__u32	length;
48 	int	transmit;
49 };
50 struct pppol2tp_ioc_stats {
51 	__u16		tunnel_id;
52 	__u16		session_id;
53 	__u32		using_ipsec:1;
54 	__aligned_u64	tx_packets;
55 	__aligned_u64	tx_bytes;
56 	__aligned_u64	tx_errors;
57 	__aligned_u64	rx_packets;
58 	__aligned_u64	rx_bytes;
59 	__aligned_u64	rx_seq_discards;
60 	__aligned_u64	rx_oos_packets;
61 	__aligned_u64	rx_errors;
62 };
63 #define	PPPIOCGFLAGS	_IOR('t', 90, int)
64 #define	PPPIOCSFLAGS	_IOW('t', 89, int)
65 #define	PPPIOCGASYNCMAP	_IOR('t', 88, int)
66 #define	PPPIOCSASYNCMAP	_IOW('t', 87, int)
67 #define	PPPIOCGUNIT	_IOR('t', 86, int)
68 #define	PPPIOCGRASYNCMAP _IOR('t', 85, int)
69 #define	PPPIOCSRASYNCMAP _IOW('t', 84, int)
70 #define	PPPIOCGMRU	_IOR('t', 83, int)
71 #define	PPPIOCSMRU	_IOW('t', 82, int)
72 #define	PPPIOCSMAXCID	_IOW('t', 81, int)
73 #define PPPIOCGXASYNCMAP _IOR('t', 80, ext_accm)
74 #define PPPIOCSXASYNCMAP _IOW('t', 79, ext_accm)
75 #define PPPIOCXFERUNIT	_IO('t', 78)
76 #define PPPIOCSCOMPRESS	_IOW('t', 77, struct ppp_option_data)
77 #define PPPIOCGNPMODE	_IOWR('t', 76, struct npioctl)
78 #define PPPIOCSNPMODE	_IOW('t', 75, struct npioctl)
79 #define PPPIOCSPASS	_IOW('t', 71, struct sock_fprog)
80 #define PPPIOCSACTIVE	_IOW('t', 70, struct sock_fprog)
81 #define PPPIOCGDEBUG	_IOR('t', 65, int)
82 #define PPPIOCSDEBUG	_IOW('t', 64, int)
83 #define PPPIOCGIDLE	_IOR('t', 63, struct ppp_idle)
84 #define PPPIOCNEWUNIT	_IOWR('t', 62, int)
85 #define PPPIOCATTACH	_IOW('t', 61, int)
86 #define PPPIOCDETACH	_IOW('t', 60, int)
87 #define PPPIOCSMRRU	_IOW('t', 59, int)
88 #define PPPIOCCONNECT	_IOW('t', 58, int)
89 #define PPPIOCDISCONN	_IO('t', 57)
90 #define PPPIOCATTCHAN	_IOW('t', 56, int)
91 #define PPPIOCGCHAN	_IOR('t', 55, int)
92 #define PPPIOCGL2TPSTATS _IOR('t', 54, struct pppol2tp_ioc_stats)
93 #define SIOCGPPPSTATS   (SIOCDEVPRIVATE + 0)
94 #define SIOCGPPPVER     (SIOCDEVPRIVATE + 1)
95 #define SIOCGPPPCSTATS  (SIOCDEVPRIVATE + 2)
96 #endif
97