]> git.ipfire.org Git - thirdparty/squid.git/blame - src/auth/basic/RADIUS/radius.h
Source Format Enforcement (#763)
[thirdparty/squid.git] / src / auth / basic / RADIUS / radius.h
CommitLineData
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 44typedef 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