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