]> git.stg.codes - stg.git/blob - projects/rlm_stg/radius.h
Make fee charging rules inclusive (2 includes 0 and 3 includes fee)
[stg.git] / projects / rlm_stg / radius.h
1 /*
2  * radius.h     Constants of the radius protocol.
3  *
4  * Version:     $Id$
5  *
6  */
7
8
9 #define PW_TYPE_STRING                  0
10 #define PW_TYPE_INTEGER                 1
11 #define PW_TYPE_IPADDR                  2
12 #define PW_TYPE_DATE                    3
13 #define PW_TYPE_ABINARY                 4
14 #define PW_TYPE_OCTETS                  5
15 #define PW_TYPE_IFID                    6
16 #define PW_TYPE_IPV6ADDR                7
17 #define PW_TYPE_IPV6PREFIX              8
18 #define PW_TYPE_BYTE                    9
19 #define PW_TYPE_SHORT                   10
20 #define PW_TYPE_ETHERNET                11
21 #define PW_TYPE_SIGNED                  12
22 #define PW_TYPE_COMBO_IP                13
23 #define PW_TYPE_TLV                     14
24
25 #define PW_AUTHENTICATION_REQUEST       1
26 #define PW_AUTHENTICATION_ACK           2
27 #define PW_AUTHENTICATION_REJECT        3
28 #define PW_ACCOUNTING_REQUEST           4
29 #define PW_ACCOUNTING_RESPONSE          5
30 #define PW_ACCOUNTING_STATUS            6
31 #define PW_PASSWORD_REQUEST             7
32 #define PW_PASSWORD_ACK                 8
33 #define PW_PASSWORD_REJECT              9
34 #define PW_ACCOUNTING_MESSAGE           10
35 #define PW_ACCESS_CHALLENGE             11
36 #define PW_STATUS_SERVER                12
37 #define PW_STATUS_CLIENT                13
38 #define PW_DISCONNECT_REQUEST           40
39 #define PW_DISCONNECT_ACK               41
40 #define PW_DISCONNECT_NAK               42
41 #define PW_COA_REQUEST                  43
42 #define PW_COA_ACK                      44
43 #define PW_COA_NAK                      45
44
45 #define PW_AUTH_UDP_PORT                1812
46 #define PW_ACCT_UDP_PORT                1813
47 #define PW_POD_UDP_PORT                 1700
48 #define PW_COA_UDP_PORT                 3799
49
50 #define PW_USER_NAME                    1
51 #define PW_USER_PASSWORD                2
52 #define PW_PASSWORD                     2
53 #define PW_CHAP_PASSWORD                3
54 #define PW_NAS_IP_ADDRESS               4
55 #define PW_NAS_PORT                     5
56 #define PW_SERVICE_TYPE                 6
57 #define PW_FRAMED_PROTOCOL              7
58 #define PW_FRAMED_IP_ADDRESS            8
59 #define PW_FRAMED_IP_NETMASK            9
60 #define PW_FRAMED_ROUTING               10
61 #define PW_FILTER_ID                    11
62 #define PW_FRAMED_MTU                   12
63 #define PW_FRAMED_COMPRESSION           13
64 #define PW_LOGIN_IP_HOST                14
65 #define PW_LOGIN_SERVICE                15
66 #define PW_LOGIN_TCP_PORT               16
67 #define PW_OLD_PASSWORD                 17
68 #define PW_REPLY_MESSAGE                18
69 #define PW_CALLBACK_NUMBER              19
70 #define PW_CALLBACK_ID                  20
71 #if 0
72 /*
73  *  Deprecated, and no longer used.
74  */
75 #define PW_EXPIRATION                   21
76 #endif
77 #define PW_FRAMED_ROUTE                 22
78 #define PW_FRAMED_IPXNET                23
79 #define PW_STATE                        24
80 #define PW_CLASS                        25
81 #define PW_VENDOR_SPECIFIC              26
82 #define PW_SESSION_TIMEOUT              27
83 #define PW_IDLE_TIMEOUT                 28
84 #define PW_CALLED_STATION_ID            30
85 #define PW_CALLING_STATION_ID           31
86 #define PW_NAS_IDENTIFIER               32
87 #define PW_PROXY_STATE                  33
88
89 #define PW_ACCT_STATUS_TYPE             40
90 #define PW_ACCT_DELAY_TIME              41
91 #define PW_ACCT_INPUT_OCTETS            42
92 #define PW_ACCT_OUTPUT_OCTETS           43
93 #define PW_ACCT_SESSION_ID              44
94 #define PW_ACCT_AUTHENTIC               45
95 #define PW_ACCT_SESSION_TIME            46
96 #define PW_ACCT_INPUT_PACKETS           47
97 #define PW_ACCT_OUTPUT_PACKETS          48
98 #define PW_ACCT_TERMINATE_CAUSE         49
99
100 #define PW_EVENT_TIMESTAMP              55
101
102 #define PW_CHAP_CHALLENGE               60
103 #define PW_NAS_PORT_TYPE                61
104 #define PW_PORT_LIMIT                   62
105
106 #define PW_ARAP_PASSWORD                70
107 #define PW_ARAP_FEATURES                71
108 #define PW_ARAP_ZONE_ACCESS             72
109 #define PW_ARAP_SECURITY                73
110 #define PW_ARAP_SECURITY_DATA           74
111 #define PW_PASSWORD_RETRY               75
112 #define PW_PROMPT                       76
113 #define PW_CONNECT_INFO                 77
114 #define PW_CONFIGURATION_TOKEN          78
115 #define PW_EAP_MESSAGE                  79
116 #define PW_MESSAGE_AUTHENTICATOR        80
117
118 #define PW_ARAP_CHALLENGE_RESPONSE      84
119 #define PW_NAS_PORT_ID_STRING           87
120 #define PW_FRAMED_POOL                  88
121 #define PW_CHARGEABLE_USER_IDENTITY     89
122 #define PW_NAS_IPV6_ADDRESS             95
123
124 #define PW_EXTENDED_ATTRIBUTE           192
125
126 #define PW_DIGEST_RESPONSE              206
127 #define PW_DIGEST_ATTRIBUTES            207
128
129 #define PW_FALL_THROUGH                 500
130 #define PW_EXEC_PROGRAM                 502
131 #define PW_EXEC_PROGRAM_WAIT            503
132
133 #define PW_AUTH_TYPE                    1000
134 #define PW_PREFIX                       1003
135 #define PW_SUFFIX                       1004
136 #define PW_GROUP                        1005
137 #define PW_CRYPT_PASSWORD               1006
138 #define PW_CONNECT_RATE                 1007
139 #define PW_ADD_PREFIX                   1008
140 #define PW_ADD_SUFFIX                   1009
141 #define PW_EXPIRATION                   1010
142 #define PW_AUTZ_TYPE                    1011
143 #define PW_ACCT_TYPE                    1012
144 #define PW_SESSION_TYPE                 1013
145 #define PW_POST_AUTH_TYPE               1014
146 #define PW_PRE_PROXY_TYPE               1015
147 #define PW_POST_PROXY_TYPE              1016
148 #define PW_PRE_ACCT_TYPE                1017
149 #define PW_EAP_TYPE                     1018
150 #define PW_EAP_TLS_REQUIRE_CLIENT_CERT  1019
151 #define PW_CLIENT_SHORTNAME             1024
152 #define PW_LOAD_BALANCE_KEY             1025
153 #define PW_RAW_ATTRIBUTE                1026
154 #define PW_TNC_VLAN_ACCESS              1027
155 #define PW_TNC_VLAN_ISOLATE             1028
156 #define PW_USER_CATEGORY                1029
157 #define PW_GROUP_NAME                   1030
158 #define PW_HUNTGROUP_NAME               1031
159 #define PW_SIMULTANEOUS_USE             1034
160 #define PW_STRIP_USER_NAME              1035
161 #define PW_HINT                         1040
162 #define PAM_AUTH_ATTR                   1041
163 #define PW_LOGIN_TIME                   1042
164 #define PW_STRIPPED_USER_NAME           1043
165 #define PW_CURRENT_TIME                 1044
166 #define PW_REALM                        1045
167 #define PW_NO_SUCH_ATTRIBUTE            1046
168 #define PW_PACKET_TYPE                  1047
169 #define PW_PROXY_TO_REALM               1048
170 #define PW_REPLICATE_TO_REALM           1049
171 #define PW_ACCT_SESSION_START_TIME      1050
172 #define PW_ACCT_UNIQUE_SESSION_ID       1051
173 #define PW_CLIENT_IP_ADDRESS            1052
174 #define PW_LDAP_USERDN                  1053
175 #define PW_NS_MTA_MD5_PASSWORD          1054
176 #define PW_SQL_USER_NAME                1055
177 #define PW_LM_PASSWORD                  1057
178 #define PW_NT_PASSWORD                  1058
179 #define PW_SMB_ACCOUNT_CTRL             1059
180 #define PW_SMB_ACCOUNT_CTRL_TEXT        1061
181 #define PW_USER_PROFILE                 1062
182 #define PW_DIGEST_REALM                 1063
183 #define PW_DIGEST_NONCE                 1064
184 #define PW_DIGEST_METHOD                1065
185 #define PW_DIGEST_URI                   1066
186 #define PW_DIGEST_QOP                   1067
187 #define PW_DIGEST_ALGORITHM             1068
188 #define PW_DIGEST_BODY_DIGEST           1069
189 #define PW_DIGEST_CNONCE                1070
190 #define PW_DIGEST_NONCE_COUNT           1071
191 #define PW_DIGEST_USER_NAME             1072
192 #define PW_POOL_NAME                    1073
193 #define PW_LDAP_GROUP                   1074
194 #define PW_MODULE_SUCCESS_MESSAGE       1075
195 #define PW_MODULE_FAILURE_MESSAGE       1076
196 #if 0 /* no longer used */
197 #define PW_X99_FAST                     1077
198 #endif
199 #define PW_REWRITE_RULE                 1078
200 #define PW_SQL_GROUP                    1079
201 #define PW_RESPONSE_PACKET_TYPE         1080
202 #define PW_DIGEST_HA1                   1081
203 #define PW_MS_CHAP_USE_NTLM_AUTH        1082
204 #define PW_MS_CHAP_USER_NAME            1083
205 #define PW_PACKET_SRC_IP_ADDRESS        1084
206 #define PW_PACKET_DST_IP_ADDRESS        1085
207 #define PW_PACKET_SRC_PORT              1086
208 #define PW_PACKET_DST_PORT              1087
209 #define PW_PACKET_AUTHENTICATION_VECTOR 1088
210 #define PW_TIME_OF_DAY                  1089
211 #define PW_REQUEST_PROCESSING_STAGE     1090
212 #define PW_CACHE_NO_CACHING             1091
213 #define PW_CACHE_DELETE_CACHE           1092
214
215 #define PW_SHA_PASSWORD                 1093
216 #define PW_SSHA_PASSWORD                1094
217 #define PW_MD5_PASSWORD                 1095
218 #define PW_SMD5_PASSWORD                1096
219
220 #define PW_PACKET_SRC_IPV6_ADDRESS      1097
221 #define PW_PACKET_DST_IPV6_ADDRESS      1098
222 #define PW_VIRTUAL_SERVER               1099
223 #define PW_CLEARTEXT_PASSWORD           1100
224 #define PW_PASSWORD_WITH_HEADER         1101
225 #define PW_SEND_COA_REQUEST             1107
226 #define PW_MODULE_RETURN_CODE           1108
227 #define PW_PACKET_ORIGINAL_TIMESTAMP    1109
228 #define PW_HOME_SERVER_POOL             1111
229 #define PW_RECV_COA_TYPE                1131
230 #define PW_SEND_COA_TYPE                1132
231 #define PW_MSCHAP_PASSWORD              1133
232 #define PW_PACKET_TRANSMIT_COUNTER      1134
233 #define PW_CACHED_SESSION_POLICY        1135
234
235 /*
236  *      Integer Translations
237  */
238
239 /*      User Types      */
240
241 #define PW_LOGIN_USER                   1
242 #define PW_FRAMED_USER                  2
243 #define PW_CALLBACK_LOGIN_USER          3
244 #define PW_CALLBACK_FRAMED_USER         4
245 #define PW_OUTBOUND_USER                5
246 #define PW_ADMINISTRATIVE_USER          6
247 #define PW_NAS_PROMPT_USER              7
248 #define PW_AUTHENTICATE_ONLY            8
249 #define PW_CALLBACK_NAS_PROMPT          9
250
251 /*      Framed Protocols        */
252
253 #define PW_PPP                          1
254 #define PW_SLIP                         2
255
256 /*      Framed Routing Values   */
257
258 #define PW_NONE                         0
259 #define PW_BROADCAST                    1
260 #define PW_LISTEN                       2
261 #define PW_BROADCAST_LISTEN             3
262
263 /*      Framed Compression Types        */
264
265 #define PW_VAN_JACOBSEN_TCP_IP          1
266
267 /*      Login Services  */
268
269 #define PW_TELNET                       0
270 #define PW_RLOGIN                       1
271 #define PW_TCP_CLEAR                    2
272 #define PW_PORTMASTER                   3
273
274 /*      Authentication Level    */
275
276 #define PW_AUTHTYPE_LOCAL               0
277 #define PW_AUTHTYPE_SYSTEM              1
278 #define PW_AUTHTYPE_SECURID             2
279 #define PW_AUTHTYPE_CRYPT               3
280 #define PW_AUTHTYPE_REJECT              4
281 #define PW_AUTHTYPE_ACTIVCARD           5
282 #define PW_AUTHTYPE_EAP                 6
283 #define PW_AUTHTYPE_ACCEPT              254
284 #define PW_AUTHTYPE_MS_CHAP             1028
285
286 /*      Port Types              */
287
288 #define PW_NAS_PORT_ASYNC               0
289 #define PW_NAS_PORT_SYNC                1
290 #define PW_NAS_PORT_ISDN                2
291 #define PW_NAS_PORT_ISDN_V120           3
292 #define PW_NAS_PORT_ISDN_V110           4
293
294 /*      Status Types    */
295
296 #define PW_STATUS_START                 1
297 #define PW_STATUS_STOP                  2
298 #define PW_STATUS_ALIVE                 3
299 #define PW_STATUS_ACCOUNTING_ON         7
300 #define PW_STATUS_ACCOUNTING_OFF        8
301
302 /*
303  *  Vendor Private Enterprise Codes
304  */
305 #define VENDORPEC_FREERADIUS    11344
306
307
308 /*
309  * Vendor specific attributes
310  */
311 #define PW_FREERADIUS_PROXIED_TO        ((VENDORPEC_FREERADIUS<<16)|1)
312
313 /*
314  *  Microsoft has vendor code 311.
315  */
316 #define PW_MSCHAP_RESPONSE      ((311 << 16) | 1)
317 #define PW_MSCHAP_ERROR         ((311 << 16) | 2)
318 #define PW_MSCHAP_CHALLENGE     ((311 << 16) | 11)
319 #define PW_MSCHAP2_RESPONSE     ((311 << 16) | 25)
320 #define PW_MSCHAP2_SUCCESS      ((311 << 16) | 26)
321
322
323 /*
324  *  Old nonsense.  Will be deleted ASAP
325  */
326 #define PW_AUTHTYPE                     1000
327 #define PW_AUTZTYPE                     1011
328 #define PW_ACCTTYPE                     1012
329 #define PW_SESSTYPE                     1013
330 #define PW_POSTAUTHTYPE                 1014
331
332 /*
333  *      Cisco's VLAN Query Protocol.
334  */
335 #define PW_VQP_PACKET_TYPE              0x2b00
336 #define PW_VQP_ERROR_CODE               0x2b01
337 #define PW_VQP_SEQUENCE_NUMBER          0x2b02
338
339 #define PW_VQP_CLIENT_IP_ADDRESS        0x2c01
340 #define PW_VQP_PORT_NAME                0x2c02
341 #define PW_VQP_VLAN_NAME                0x2c03
342 #define PW_VQP_DOMAIN_NAME              0x2c04
343 #define PW_VQP_ETHERNET_FRAME           0x2c05
344 #define PW_VQP_MAC                      0x2c06
345 #define PW_VQP_UNKNOWN                  0x2c07
346 #define PW_VQP_COOKIE                   0x2c08