1
2
3
4
5
6
7
8
9
10
11
12
13
14#ifndef _UAPI__ISDN_H__
15#define _UAPI__ISDN_H__
16
17#include <linux/ioctl.h>
18#include <linux/tty.h>
19
20#define ISDN_MAX_DRIVERS 32
21#define ISDN_MAX_CHANNELS 64
22
23
24#define IIOCNETAIF _IO('I',1)
25#define IIOCNETDIF _IO('I',2)
26#define IIOCNETSCF _IO('I',3)
27#define IIOCNETGCF _IO('I',4)
28#define IIOCNETANM _IO('I',5)
29#define IIOCNETDNM _IO('I',6)
30#define IIOCNETGNM _IO('I',7)
31#define IIOCGETSET _IO('I',8)
32#define IIOCSETSET _IO('I',9)
33#define IIOCSETVER _IO('I',10)
34#define IIOCNETHUP _IO('I',11)
35#define IIOCSETGST _IO('I',12)
36#define IIOCSETBRJ _IO('I',13)
37#define IIOCSIGPRF _IO('I',14)
38#define IIOCGETPRF _IO('I',15)
39#define IIOCSETPRF _IO('I',16)
40#define IIOCGETMAP _IO('I',17)
41#define IIOCSETMAP _IO('I',18)
42#define IIOCNETASL _IO('I',19)
43#define IIOCNETDIL _IO('I',20)
44#define IIOCGETCPS _IO('I',21)
45#define IIOCGETDVR _IO('I',22)
46#define IIOCNETLCR _IO('I',23)
47#define IIOCNETDWRSET _IO('I',24)
48
49#define IIOCNETALN _IO('I',32)
50#define IIOCNETDLN _IO('I',33)
51
52#define IIOCNETGPN _IO('I',34)
53
54#define IIOCDBGVAR _IO('I',127)
55
56#define IIOCDRVCTL _IO('I',128)
57
58
59#define SIOCGKEEPPERIOD (SIOCDEVPRIVATE + 0)
60#define SIOCSKEEPPERIOD (SIOCDEVPRIVATE + 1)
61#define SIOCGDEBSERINT (SIOCDEVPRIVATE + 2)
62#define SIOCSDEBSERINT (SIOCDEVPRIVATE + 3)
63
64
65#define ISDN_NET_ENCAP_ETHER 0
66#define ISDN_NET_ENCAP_RAWIP 1
67#define ISDN_NET_ENCAP_IPTYP 2
68#define ISDN_NET_ENCAP_CISCOHDLC 3
69#define ISDN_NET_ENCAP_SYNCPPP 4
70#define ISDN_NET_ENCAP_UIHDLC 5
71#define ISDN_NET_ENCAP_CISCOHDLCK 6
72#define ISDN_NET_ENCAP_X25IFACE 7
73#define ISDN_NET_ENCAP_MAX_ENCAP ISDN_NET_ENCAP_X25IFACE
74
75
76#define ISDN_USAGE_NONE 0
77#define ISDN_USAGE_RAW 1
78#define ISDN_USAGE_MODEM 2
79#define ISDN_USAGE_NET 3
80#define ISDN_USAGE_VOICE 4
81#define ISDN_USAGE_FAX 5
82#define ISDN_USAGE_MASK 7
83#define ISDN_USAGE_DISABLED 32
84#define ISDN_USAGE_EXCLUSIVE 64
85#define ISDN_USAGE_OUTGOING 128
86
87#define ISDN_MODEM_NUMREG 24
88#define ISDN_LMSNLEN 255
89#define ISDN_CMSGLEN 50
90
91#define ISDN_MSNLEN 32
92#define NET_DV 0x06
93#define TTY_DV 0x06
94
95#define INF_DV 0x01
96
97typedef struct {
98 char drvid[25];
99 unsigned long arg;
100} isdn_ioctl_struct;
101
102typedef struct {
103 char name[10];
104 char phone[ISDN_MSNLEN];
105 int outgoing;
106} isdn_net_ioctl_phone;
107
108typedef struct {
109 char name[10];
110 char master[10];
111 char slave[10];
112 char eaz[256];
113 char drvid[25];
114 int onhtime;
115 int charge;
116 int l2_proto;
117 int l3_proto;
118 int p_encap;
119 int exclusive;
120 int dialmax;
121 int slavedelay;
122 int cbdelay;
123 int chargehup;
124 int ihup;
125 int secure;
126 int callback;
127 int cbhup;
128 int pppbind;
129 int chargeint;
130 int triggercps;
131 int dialtimeout;
132 int dialwait;
133 int dialmode;
134} isdn_net_ioctl_cfg;
135
136#define ISDN_NET_DIALMODE_MASK 0xC0
137#define ISDN_NET_DM_OFF 0x00
138#define ISDN_NET_DM_MANUAL 0x40
139#define ISDN_NET_DM_AUTO 0x80
140#define ISDN_NET_DIALMODE(x) ((&(x))->flags & ISDN_NET_DIALMODE_MASK)
141
142
143#endif
144