]> git.ipfire.org Git - thirdparty/squid.git/blob - helpers/basic_auth/RADIUS/radius.h
Enable source-formatting tools to collapse multiple whitelines in the source to one.
[thirdparty/squid.git] / helpers / basic_auth / RADIUS / radius.h
1 /*
2 *
3 * RADIUS
4 * Remote Authentication Dial In User Service
5 *
6 *
7 * Livingston Enterprises, Inc.
8 * 6920 Koll Center Parkway
9 * Pleasanton, CA 94566
10 *
11 * Copyright 1992 Livingston Enterprises, Inc.
12 *
13 * Permission to use, copy, modify, and distribute this software for any
14 * purpose and without fee is hereby granted, provided that this
15 * copyright and permission notice appear on all copies and supporting
16 * documentation, the name of Livingston Enterprises, Inc. not be used
17 * in advertising or publicity pertaining to distribution of the
18 * program without specific prior permission, and notice be given
19 * in supporting documentation that copying and distribution is by
20 * permission of Livingston Enterprises, Inc.
21 *
22 * Livingston Enterprises, Inc. makes no representations about
23 * the suitability of this software for any purpose. It is
24 * provided "as is" without express or implied warranty.
25 *
26 */
27
28 /*
29 * @(#)radius.h 2.0 03-Aug-1996
30 */
31
32 #define AUTH_VECTOR_LEN 16
33 #define AUTH_PASS_LEN 16
34 #define AUTH_STRING_LEN 128 /* maximum of 254 */
35
36
37 typedef struct pw_auth_hdr {
38 u_char code;
39 u_char id;
40 uint16_t length;
41 u_char vector[AUTH_VECTOR_LEN];
42 u_char data[2];
43 } AUTH_HDR;
44
45 #define AUTH_HDR_LEN 20
46 #define CHAP_VALUE_LENGTH 16
47
48 #define PW_AUTH_UDP_PORT 1812
49 #define PW_ACCT_UDP_PORT 1813
50
51 #define VENDORPEC_USR 429
52
53 #define PW_TYPE_STRING 0
54 #define PW_TYPE_INTEGER 1
55 #define PW_TYPE_IPADDR 2
56 #define PW_TYPE_DATE 3
57
58
59 #define PW_AUTHENTICATION_REQUEST 1
60 #define PW_AUTHENTICATION_ACK 2
61 #define PW_AUTHENTICATION_REJECT 3
62 #define PW_ACCOUNTING_REQUEST 4
63 #define PW_ACCOUNTING_RESPONSE 5
64 #define PW_ACCOUNTING_STATUS 6
65 #define PW_PASSWORD_REQUEST 7
66 #define PW_PASSWORD_ACK 8
67 #define PW_PASSWORD_REJECT 9
68 #define PW_ACCOUNTING_MESSAGE 10
69 #define PW_ACCESS_CHALLENGE 11
70
71 #define PW_USER_NAME 1
72 #define PW_PASSWORD 2
73 #define PW_CHAP_PASSWORD 3
74 #define PW_NAS_IP_ADDRESS 4
75 #define PW_NAS_PORT_ID 5
76 #define PW_SERVICE_TYPE 6
77 #define PW_FRAMED_PROTOCOL 7
78 #define PW_FRAMED_IP_ADDRESS 8
79 #define PW_FRAMED_IP_NETMASK 9
80 #define PW_FRAMED_ROUTING 10
81 #define PW_FILTER_ID 11
82 #define PW_FRAMED_MTU 12
83 #define PW_FRAMED_COMPRESSION 13
84 #define PW_LOGIN_IP_HOST 14
85 #define PW_LOGIN_SERVICE 15
86 #define PW_LOGIN_TCP_PORT 16
87 #define PW_OLD_PASSWORD 17
88 #define PW_REPLY_MESSAGE 18
89 #define PW_CALLBACK_NUMBER 19
90 #define PW_CALLBACK_ID 20
91 #define PW_EXPIRATION 21
92 #define PW_FRAMED_ROUTE 22
93 #define PW_FRAMED_IPXNET 23
94 #define PW_STATE 24
95 #define PW_CLASS 25
96 #define PW_VENDOR_SPECIFIC 26
97 #define PW_SESSION_TIMEOUT 27
98 #define PW_IDLE_TIMEOUT 28
99 #define PW_CALLED_STATION_ID 30
100 #define PW_CALLING_STATION_ID 31
101 #define PW_NAS_ID 32
102 #define PW_PROXY_STATE 33
103
104 #define PW_ACCT_STATUS_TYPE 40
105 #define PW_ACCT_DELAY_TIME 41
106 #define PW_ACCT_INPUT_OCTETS 42
107 #define PW_ACCT_OUTPUT_OCTETS 43
108 #define PW_ACCT_SESSION_ID 44
109 #define PW_ACCT_AUTHENTIC 45
110 #define PW_ACCT_SESSION_TIME 46
111 #define PW_ACCT_INPUT_PACKETS 47
112 #define PW_ACCT_OUTPUT_PACKETS 48
113
114 #define PW_CHAP_CHALLENGE 60
115 #define PW_NAS_PORT_TYPE 61
116 #define PW_PORT_LIMIT 62
117 #define PW_CONNECT_INFO 77
118
119 #define PW_HUNTGROUP_NAME 221
120 #define PW_AUTHTYPE 1000
121 #define PW_PREFIX 1003
122 #define PW_SUFFIX 1004
123 #define PW_GROUP 1005
124 #define PW_CRYPT_PASSWORD 1006
125 #define PW_CONNECT_RATE 1007
126 #define PW_USER_CATEGORY 1029
127 #define PW_GROUP_NAME 1030
128 #define PW_SIMULTANEOUS_USE 1034
129 #define PW_STRIP_USERNAME 1035
130 #define PW_FALL_THROUGH 1036
131 #define PW_ADD_PORT_TO_IP_ADDRESS 1037
132 #define PW_EXEC_PROGRAM 1038
133 #define PW_EXEC_PROGRAM_WAIT 1039
134 #define PW_HINT 1040
135 #define PAM_AUTH_ATTR 1041
136 #define PW_LOGIN_TIME 1042
137
138 /*
139 * INTEGER TRANSLATIONS
140 */
141
142 /* USER TYPES */
143
144 #define PW_LOGIN_USER 1
145 #define PW_FRAMED_USER 2
146 #define PW_DIALBACK_LOGIN_USER 3
147 #define PW_DIALBACK_FRAMED_USER 4
148
149 /* FRAMED PROTOCOLS */
150
151 #define PW_PPP 1
152 #define PW_SLIP 2
153
154 /* FRAMED ROUTING VALUES */
155
156 #define PW_NONE 0
157 #define PW_BROADCAST 1
158 #define PW_LISTEN 2
159 #define PW_BROADCAST_LISTEN 3
160
161 /* FRAMED COMPRESSION TYPES */
162
163 #define PW_VAN_JACOBSEN_TCP_IP 1
164
165 /* LOGIN SERVICES */
166
167 #define PW_TELNET 0
168 #define PW_RLOGIN 1
169 #define PW_TCP_CLEAR 2
170 #define PW_PORTMASTER 3
171
172 /* AUTHENTICATION LEVEL */
173
174 #define PW_AUTHTYPE_LOCAL 0
175 #define PW_AUTHTYPE_SYSTEM 1
176 #define PW_AUTHTYPE_SECURID 2
177 #define PW_AUTHTYPE_CRYPT 3
178 #define PW_AUTHTYPE_REJECT 4
179 #define PW_AUTHTYPE_PAM 253
180 #define PW_AUTHTYPE_ACCEPT 254
181
182 /* PORT TYPES */
183 #define PW_NAS_PORT_ASYNC 0
184 #define PW_NAS_PORT_SYNC 1
185 #define PW_NAS_PORT_ISDN 2
186 #define PW_NAS_PORT_ISDN_V120 3
187 #define PW_NAS_PORT_ISDN_V110 4
188
189 /* STATUS TYPES */
190
191 #define PW_STATUS_START 1
192 #define PW_STATUS_STOP 2
193 #define PW_STATUS_ALIVE 3
194 #define PW_STATUS_ACCOUNTING_ON 7
195 #define PW_STATUS_ACCOUNTING_OFF 8
196