K2.6 patches and update.
[tomato.git] / release / src-rt / wl / nas / radius.h
blobf7a4d4a02b97ba49f35083c4920ec8029b258ecb
1 /*
2 * Remote Authentication Dial In User Service (RADIUS) definitions
4 * See RFCs 2865 and 2869
6 * Copyright (C) 2010, Broadcom Corporation
7 * All Rights Reserved.
8 *
9 * This is UNPUBLISHED PROPRIETARY SOURCE CODE of Broadcom Corporation;
10 * the contents of this file may not be disclosed to third parties, copied
11 * or duplicated in any form, in whole or in part, without the prior
12 * written permission of Broadcom Corporation.
14 * $Id: radius.h 241388 2011-02-18 03:33:22Z stakita $
17 #ifndef _radius_h_
18 #define _radius_h_
20 /* RADIUS packet format */
21 typedef struct {
22 unsigned char code; /* RADIUS code */
23 unsigned char id; /* RADIUS Packet identifier */
24 unsigned short length; /* Length including header */
25 unsigned char vector[16]; /* Request/response authenticator */
26 unsigned char attributes[1]; /* Attribute value pairs (optional) */
27 } radius_header_t;
29 #define RADIUS_HEADER_LEN 20
30 #define RADIUS_MAX_LEN 4096
31 #define RADIUS_MAX_ATTRIBUTES ((RADIUS_MAX_LEN - RADIUS_HEADER_LEN) / 255 + 1)
33 /* RADIUS codes */
34 #define RADIUS_ACCESS_REQUEST 1
35 #define RADIUS_ACCESS_ACCEPT 2
36 #define RADIUS_ACCESS_REJECT 3
37 #define RADIUS_ACCOUNTING_REQUEST 4
38 #define RADIUS_ACCOUNTING_RESPONSE 5
39 #define RADIUS_ACCESS_CHALLENGE 11
40 #define RADIUS_STATUS_SERVER 12
41 #define RADIUS_STATUS_CLIENT 13
42 #define RADIUS_RESERVED 255
44 /* RADIUS attributes */
45 #define RD_TP_USER_NAME 1
46 #define RD_TP_USER_PASSWORD 2
47 #define RD_TP_CHAP_PASSWORD 3
48 #define RD_TP_NAS_IP_ADDRESS 4
49 #define RD_TP_NAS_PORT 5
50 #define RD_TP_SERVICE_TYPE 6
51 #define RD_TP_FRAMED_PROTOCOL 7
52 #define RD_TP_FRAMED_IP_ADDRESS 8
53 #define RD_TP_FRAMED_IP_NETMASK 9
54 #define RD_TP_FRAMED_ROUTING 10
55 #define RD_TP_FILTER_ID 11
56 #define RD_TP_FRAMED_MTU 12
57 #define RD_TP_FRAMED_COMPRESSION 13
58 #define RD_TP_LOGIN_IP_HOST 14
59 #define RD_TP_LOGIN_SERVICE 15
60 #define RD_TP_LOGIN_TCP_PORT 16
61 #define RD_TP_UNASSIGNED 17
62 #define RD_TP_REPLY_MESSAGE 18
63 #define RD_TP_CALLBACK_NUMBER 19
64 #define RD_TP_CALLBACK_ID 20
65 #define RD_TP_UNASSIGNED2 21
66 #define RD_TP_FRAMED_ROUTE 22
67 #define RD_TP_FRAMED_IPX_NETWORK 23
68 #define RD_TP_STATE 24
69 #define RD_TP_CLASS 25
70 #define RD_TP_VENDOR_SPECIFIC 26
71 #define RD_TP_SESSION_TIMEOUT 27
72 #define RD_TP_IDLE_TIMEOUT 28
73 #define RD_TP_TERMINATING_ACTION 29
74 #define RD_TP_CALLED_STATION_ID 30
75 #define RD_TP_CALLING_STATION_ID 31
76 #define RD_TP_NAS_IDENTIFIER 32
77 #define RD_TP_PROXY_STATE 33
78 #define RD_TP_LOGIN_LAT_SERVICE 34
79 #define RD_TP_LOGIN_LAT_NODE 35
80 #define RD_TP_LOGIN_LAT_GROUP 36
81 #define RD_TP_FRAMED_APPLETALK_LINK 37
82 #define RD_TP_FRAMED_APPLETALK_NETWORK 38
83 #define RD_TP_FRAMED_APPLETALK_ZONE 39
84 #define RD_TP_ACCT_STATUS_TYPE 40
85 #define RD_TP_ACCT_DELAY_TIME 41
86 #define RD_TP_ACCT_INPUT_OCTETS 42
87 #define RD_TP_ACCT_OUTPUT_OCTETS 43
88 #define RD_TP_ACCT_SESSION_ID 44
89 #define RD_TP_ACCT_AUTHENTIC 45
90 #define RD_TP_ACCT_SESSION_TIME 46
91 #define RD_TP_ACCT_INPUT_PACKETS 47
92 #define RD_TP_ACCT_OUTPUT_PACKETS 48
93 #define RD_TP_ACCT_TERMINATE_CAUSE 49
94 #define RD_TP_ACCT_MULTI_SESSION_ID 50
95 #define RD_TP_ACCT_LINK_COUNT 51
96 #define RD_TP_ACCT_INPUT_GIGAWORDS 52
97 #define RD_TP_ACCT_OUTPUT_GIGAWORDS 53
98 /* 54 Unused */
99 #define RD_TP_EVENT_TIMESTAMP 55
100 /* 56-59 Unused */
101 #define RD_TP_CHAP_CHALLENGE 60
102 #define RD_TP_NAS_PORT_TYPE 61
103 #define RD_TP_PORT_LIMIT 62
104 #define RD_TP_LOGIN_LAT_PORT 63
105 #define RD_TP_TUNNEL_TYPE 64
106 #define RD_TP_TUNNEL_MEDIUM_TYPE 65
107 #define RD_TP_TUNNEL_CLIENT_ENDPOINT 66
108 #define RD_TP_TUNNEL_SERVER_ENDPOINT 67
109 #define RD_TP_TUNNEL_CONNECTION 68
110 #define RD_TP_TUNNEL_PASSWORD 69
111 #define RD_TP_ARAP_PASSWORD 70
112 #define RD_TP_ARAP_FEATURES 71
113 #define RD_TP_ARAP_ZONE_ACCESS 72
114 #define RD_TP_ARAP_SECURITY 73
115 #define RD_TP_ARAP_SECURITY_DATA 74
116 #define RD_TP_PASSWORD_RETRY 75
117 #define RD_TP_PROMPT 76
118 #define RD_TP_CONNECT_INFO 77
119 #define RD_TP_CONFIGURATION_TOKEN 78
120 #define RD_TP_EAP_MESSAGE 79
121 #define RD_TP_MESSAGE_AUTHENTICATOR 80
122 #define RD_TP_TUNNEL_PRIVATE_GROUP_ID 81
123 #define RD_TP_TUNNEL_ASSIGNMENT_ID 82
124 #define RD_TP_TUNNEL_TUNNEL_PREFERENCE 83
125 #define RD_TP_TUNNEL_PACKETS_LOST 86
126 #define RD_TP_NAS_PORT_ID 87
127 #define RD_TP_TUNNEL_CLIENT_AUTH_ID 90
128 #define RD_TP_TUNNEL_SERVER_AUTH_ID 91
129 #define RD_TP_ASCEND_MODEM_PORTNO 120
130 #define RD_TP_ASCEND_MODEM_SLOTNO 121
131 #define RD_TP_ASCEND_MULTILINK_ID 187
132 #define RD_TP_ASCEND_NUM_IN_MULTILINK 188
133 #define RD_TP_ASCEND_FIRST_DEST 189
134 #define RD_TP_ASCEND_PRE_INPUT_OCTETS 190
135 #define RD_TP_ASCEND_PRE_OUTPUT_OCTETS 191
136 #define RD_TP_ASCEND_PRE_INPUT_PACKETS 192
137 #define RD_TP_ASCEND_PRE_OUTPUT_PACKETS 193
138 #define RD_TP_ASCEND_MAXIMUM_TIME 194
139 #define RD_TP_ASCEND_DISCONNECT_CAUSE 195
140 #define RD_TP_ASCEND_CONNECT_PROGRESS 196
141 #define RD_TP_ASCEND_DATA_RATE 197
142 #define RD_TP_ASCEND_PRESESSION_TIME 198
143 #define RD_TP_ASCEND_ASSIGN_IP_POOL 218
144 #define RD_TP_ASCEND_XMIT_RATE 255
146 /* RADIUS vendors */
147 #define RD_VENDOR_ACC 5
148 #define RD_VENDOR_CISCO 9
149 #define RD_VENDOR_SHIVA 166
150 #define RD_VENDOR_LIVINGSTON 307
151 #define RD_VENDOR_MICROSOFT 311
152 #define RD_VENDOR_3COM 429
153 #define RD_VENDOR_ASCEND 529
154 #define RD_VENDOR_BAY 1584
155 #define RD_VENDOR_FOUNDRY 1991
156 #define RD_VENDOR_VERSANET 2180
157 #define RD_VENDOR_REDBACK 2352
158 #define RD_VENDOR_JUNIPER 2636
159 #define RD_VENDOR_APTIS 2637
160 #define RD_VENDOR_COSINE 3085
161 #define RD_VENDOR_SHASTA 3199
162 #define RD_VENDOR_NOMADIX 3309
163 #define RD_VENDOR_UNISPHERE 4874
164 #define RD_VENDOR_ISSANNI 5948
165 #define RD_VENDOR_QUINTUM 6618
166 #define RD_VENDOR_COLUBRIS 8744
167 #define RD_VENDOR_COLUMBIA_UNIVERSITY 11862
169 /* Microsoft vendor-specific RADIUS attributes */
170 #define RD_MS_MPPE_POLICY 7
171 #define RD_MS_MPPE_TYPE 8
172 #define RD_MS_MPPE_SEND 16
173 #define RD_MS_MPPE_RECV 17
176 /* RADIUS UDP port */
177 #define RADIUS_PORT 1812
179 /* NAS-Port-Type */
180 #define NAS_PORT_TYPE_WIRELESS_IEEE80211 19
182 #endif /* _radius_h_ */