Added attribute to control behaviour of TLS
[freeradius.git] / src / include / 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
16 #define PW_AUTHENTICATION_REQUEST       1
17 #define PW_AUTHENTICATION_ACK           2
18 #define PW_AUTHENTICATION_REJECT        3
19 #define PW_ACCOUNTING_REQUEST           4
20 #define PW_ACCOUNTING_RESPONSE          5
21 #define PW_ACCOUNTING_STATUS            6
22 #define PW_PASSWORD_REQUEST             7
23 #define PW_PASSWORD_ACK                 8
24 #define PW_PASSWORD_REJECT              9
25 #define PW_ACCOUNTING_MESSAGE           10
26 #define PW_ACCESS_CHALLENGE             11
27 #define PW_STATUS_SERVER                12
28 #define PW_STATUS_CLIENT                13
29 #define PW_DISCONNECT_REQUEST           40
30 #define PW_DISCONNECT_ACK               41
31 #define PW_DISCONNECT_NAK               42
32 #define PW_COF_REQUEST                  43
33 #define PW_COF_ACK                      44
34 #define PW_COF_NAK                      45
35
36 #define PW_AUTH_UDP_PORT                1812
37 #define PW_ACCT_UDP_PORT                1813
38 #define PW_POD_UDP_PORT                 1700
39
40 #define PW_USER_NAME                    1
41 #define PW_USER_PASSWORD                2
42 #define PW_PASSWORD                     2
43 #define PW_CHAP_PASSWORD                3
44 #define PW_NAS_IP_ADDRESS               4
45 #define PW_NAS_PORT                     5
46 /*
47  *  FIXME: We should remove this...
48  */
49 #define PW_NAS_PORT_ID                  5
50 #define PW_SERVICE_TYPE                 6
51 #define PW_FRAMED_PROTOCOL              7
52 #define PW_FRAMED_IP_ADDRESS            8
53 #define PW_FRAMED_IP_NETMASK            9
54 #define PW_FRAMED_ROUTING               10
55 #define PW_FILTER_ID                    11
56 #define PW_FRAMED_MTU                   12
57 #define PW_FRAMED_COMPRESSION           13
58 #define PW_LOGIN_IP_HOST                14
59 #define PW_LOGIN_SERVICE                15
60 #define PW_LOGIN_TCP_PORT               16
61 #define PW_OLD_PASSWORD                 17
62 #define PW_REPLY_MESSAGE                18
63 #define PW_CALLBACK_NUMBER              19
64 #define PW_CALLBACK_ID                  20
65 #if 0
66 /*
67  *  Deprecated, and no longer used.
68  */
69 #define PW_EXPIRATION                   21
70 #endif
71 #define PW_FRAMED_ROUTE                 22
72 #define PW_FRAMED_IPXNET                23
73 #define PW_STATE                        24
74 #define PW_CLASS                        25
75 #define PW_VENDOR_SPECIFIC              26
76 #define PW_SESSION_TIMEOUT              27
77 #define PW_IDLE_TIMEOUT                 28
78 #define PW_CALLED_STATION_ID            30
79 #define PW_CALLING_STATION_ID           31
80 #define PW_NAS_IDENTIFIER               32
81 #define PW_PROXY_STATE                  33
82
83 #define PW_ACCT_STATUS_TYPE             40
84 #define PW_ACCT_DELAY_TIME              41
85 #define PW_ACCT_INPUT_OCTETS            42
86 #define PW_ACCT_OUTPUT_OCTETS           43
87 #define PW_ACCT_SESSION_ID              44
88 #define PW_ACCT_AUTHENTIC               45
89 #define PW_ACCT_SESSION_TIME            46
90 #define PW_ACCT_INPUT_PACKETS           47
91 #define PW_ACCT_OUTPUT_PACKETS          48
92 #define PW_ACCT_TERMINATE_CAUSE         49
93
94 #define PW_EVENT_TIMESTAMP              55
95
96 #define PW_CHAP_CHALLENGE               60
97 #define PW_NAS_PORT_TYPE                61
98 #define PW_PORT_LIMIT                   62
99
100 #define PW_ARAP_PASSWORD                70
101 #define PW_ARAP_FEATURES                71
102 #define PW_ARAP_ZONE_ACCESS             72
103 #define PW_ARAP_SECURITY                73
104 #define PW_ARAP_SECURITY_DATA           74
105 #define PW_PASSWORD_RETRY               75
106 #define PW_PROMPT                       76
107 #define PW_CONNECT_INFO                 77
108 #define PW_CONFIGURATION_TOKEN          78
109 #define PW_EAP_MESSAGE                  79
110 #define PW_MESSAGE_AUTHENTICATOR        80
111
112 #define PW_ARAP_CHALLENGE_RESPONSE      84
113 #define PW_NAS_PORT_ID_STRING           87
114 #define PW_FRAMED_POOL                  88
115
116 #define PW_DIGEST_RESPONSE              206
117 #define PW_DIGEST_ATTRIBUTES            207
118
119 #define PW_FALL_THROUGH                 500
120 #define PW_ADD_PORT_TO_IP_ADDRESS       501
121 #define PW_EXEC_PROGRAM                 502
122 #define PW_EXEC_PROGRAM_WAIT            503
123
124 #define PW_AUTH_TYPE                    1000
125 #define PW_PREFIX                       1003
126 #define PW_SUFFIX                       1004
127 #define PW_GROUP                        1005
128 #define PW_CRYPT_PASSWORD               1006
129 #define PW_CONNECT_RATE                 1007
130 #define PW_ADD_PREFIX                   1008
131 #define PW_ADD_SUFFIX                   1009
132 #define PW_EXPIRATION                   1010
133 #define PW_AUTZ_TYPE                    1011
134 #define PW_ACCT_TYPE                    1012
135 #define PW_SESSION_TYPE                 1013
136 #define PW_POST_AUTH_TYPE               1014
137 #define PW_PRE_PROXY_TYPE               1015
138 #define PW_POST_PROXY_TYPE              1016
139 #define PW_PRE_ACCT_TYPE                1017
140 #define PW_EAP_TYPE                     1018
141 #define PW_EAP_TLS_REQUIRE_CLIENT_CERT  1019
142
143 #define PW_USER_CATEGORY                1029
144 #define PW_GROUP_NAME                   1030
145 #define PW_HUNTGROUP_NAME               1031
146 #define PW_SIMULTANEOUS_USE             1034
147 #define PW_STRIP_USER_NAME              1035
148 #define PW_HINT                         1040
149 #define PAM_AUTH_ATTR                   1041
150 #define PW_LOGIN_TIME                   1042
151 #define PW_STRIPPED_USER_NAME           1043
152 #define PW_CURRENT_TIME                 1044
153 #define PW_REALM                        1045
154 #define PW_NO_SUCH_ATTRIBUTE            1046
155 #define PW_PACKET_TYPE                  1047
156 #define PW_PROXY_TO_REALM               1048
157 #define PW_REPLICATE_TO_REALM           1049
158 #define PW_ACCT_SESSION_START_TIME      1050
159 #define PW_ACCT_UNIQUE_SESSION_ID       1051
160 #define PW_CLIENT_IP_ADDRESS            1052
161 #define PW_LDAP_USERDN                  1053
162 #define PW_NS_MTA_MD5_PASSWORD          1054
163 #define PW_SQL_USER_NAME                1055
164 #define PW_LM_PASSWORD                  1057
165 #define PW_NT_PASSWORD                  1058
166 #define PW_SMB_ACCOUNT_CTRL             1059
167 #define PW_SMB_ACCOUNT_CTRL_TEXT        1061
168 #define PW_USER_PROFILE                 1062
169 #define PW_DIGEST_REALM                 1063
170 #define PW_DIGEST_NONCE                 1064
171 #define PW_DIGEST_METHOD                1065
172 #define PW_DIGEST_URI                   1066
173 #define PW_DIGEST_QOP                   1067
174 #define PW_DIGEST_ALGORITHM             1068
175 #define PW_DIGEST_BODY_DIGEST           1069
176 #define PW_DIGEST_CNONCE                1070
177 #define PW_DIGEST_NONCE_COUNT           1071
178 #define PW_DIGEST_USER_NAME             1072
179 #define PW_POOL_NAME                    1073
180 #define PW_LDAP_GROUP                   1074
181 #define PW_MODULE_SUCCESS_MESSAGE       1075
182 #define PW_MODULE_FAILURE_MESSAGE       1076
183 #define PW_X99_FAST                     1077
184 #define PW_REWRITE_RULE                 1078
185 #define PW_SQL_GROUP                    1079
186 #define PW_RESPONSE_PACKET_TYPE         1080
187
188 /*
189  *      Integer Translations
190  */
191
192 /*      User Types      */
193
194 #define PW_LOGIN_USER                   1
195 #define PW_FRAMED_USER                  2
196 #define PW_CALLBACK_LOGIN_USER          3
197 #define PW_CALLBACK_FRAMED_USER         4
198 #define PW_OUTBOUND_USER                5
199 #define PW_ADMINISTRATIVE_USER          6
200 #define PW_NAS_PROMPT_USER              7
201 #define PW_AUTHENTICATE_ONLY            8
202 #define PW_CALLBACK_NAS_PROMPT          9
203               
204 /*      Framed Protocols        */
205
206 #define PW_PPP                          1
207 #define PW_SLIP                         2
208
209 /*      Framed Routing Values   */
210
211 #define PW_NONE                         0
212 #define PW_BROADCAST                    1
213 #define PW_LISTEN                       2
214 #define PW_BROADCAST_LISTEN             3
215
216 /*      Framed Compression Types        */
217
218 #define PW_VAN_JACOBSEN_TCP_IP          1
219
220 /*      Login Services  */
221
222 #define PW_TELNET                       0
223 #define PW_RLOGIN                       1
224 #define PW_TCP_CLEAR                    2
225 #define PW_PORTMASTER                   3
226
227 /*      Authentication Level    */
228
229 #define PW_AUTHTYPE_LOCAL               0
230 #define PW_AUTHTYPE_SYSTEM              1
231 #define PW_AUTHTYPE_SECURID             2
232 #define PW_AUTHTYPE_CRYPT               3
233 #define PW_AUTHTYPE_REJECT              4
234 #define PW_AUTHTYPE_ACTIVCARD           5
235 #define PW_AUTHTYPE_EAP                 6
236 #define PW_AUTHTYPE_ACCEPT              254
237
238 /*      Port Types              */
239
240 #define PW_NAS_PORT_ASYNC               0
241 #define PW_NAS_PORT_SYNC                1
242 #define PW_NAS_PORT_ISDN                2
243 #define PW_NAS_PORT_ISDN_V120           3
244 #define PW_NAS_PORT_ISDN_V110           4
245
246 /*      Status Types    */
247
248 #define PW_STATUS_START                 1
249 #define PW_STATUS_STOP                  2
250 #define PW_STATUS_ALIVE                 3
251 #define PW_STATUS_ACCOUNTING_ON         7
252 #define PW_STATUS_ACCOUNTING_OFF        8
253
254 /*
255  *  Vendor Private Enterprise Codes
256  */
257 #define VENDORPEC_FREERADIUS    11344
258
259
260 /*
261  * Vendor specific attributes
262  */
263 #define PW_FREERADIUS_PROXIED_TO        ((VENDORPEC_FREERADIUS<<16)|1)
264
265 /*
266  *  Microsoft has vendor code 311.
267  */
268 #define PW_MSCHAP_RESPONSE      ((311 << 16) | 1)
269 #define PW_MSCHAP_CHALLENGE     ((311 << 16) | 11)
270 #define PW_MSCHAP2_RESPONSE     ((311 << 16) | 25)
271 #define PW_MSCHAP2_SUCCESS      ((311 << 16) | 26)
272
273
274 /*
275  *  Old nonsense.  Will be deleted ASAP
276  */
277 #define PW_AUTHTYPE                     1000
278 #define PW_AUTZTYPE                     1011
279 #define PW_ACCTTYPE                     1012
280 #define PW_SESSTYPE                     1013
281 #define PW_POSTAUTHTYPE                 1014