Kannel: Open Source WAP and SMS gateway  svn-r5335
radius_attributes.def
Go to the documentation of this file.
1 /* ====================================================================
2  * The Kannel Software License, Version 1.0
3  *
4  * Copyright (c) 2001-2018 Kannel Group
5  * Copyright (c) 1998-2001 WapIT Ltd.
6  * All rights reserved.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  *
12  * 1. Redistributions of source code must retain the above copyright
13  * notice, this list of conditions and the following disclaimer.
14  *
15  * 2. Redistributions in binary form must reproduce the above copyright
16  * notice, this list of conditions and the following disclaimer in
17  * the documentation and/or other materials provided with the
18  * distribution.
19  *
20  * 3. The end-user documentation included with the redistribution,
21  * if any, must include the following acknowledgment:
22  * "This product includes software developed by the
23  * Kannel Group (http://www.kannel.org/)."
24  * Alternately, this acknowledgment may appear in the software itself,
25  * if and wherever such third-party acknowledgments normally appear.
26  *
27  * 4. The names "Kannel" and "Kannel Group" must not be used to
28  * endorse or promote products derived from this software without
29  * prior written permission. For written permission, please
30  * contact org@kannel.org.
31  *
32  * 5. Products derived from this software may not be called "Kannel",
33  * nor may "Kannel" appear in their name, without prior written
34  * permission of the Kannel Group.
35  *
36  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
37  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
38  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
39  * DISCLAIMED. IN NO EVENT SHALL THE KANNEL GROUP OR ITS CONTRIBUTORS
40  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
41  * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
42  * OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
43  * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
44  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
45  * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
46  * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
47  * ====================================================================
48  *
49  * This software consists of voluntary contributions made by many
50  * individuals on behalf of the Kannel Group. For more information on
51  * the Kannel Group, please see <http://www.kannel.org/>.
52  *
53  * Portions of this software are based upon software originally written at
54  * WapIT Ltd., Helsinki, Finland for the Kannel project.
55  */
56 
57 /*
58  * RADIUS Attributes as defined by RFC2865, page 23 and RFC2866
59  */
60 
61 #ifndef ATTRIBUTES
62 #error Macro ATTRIBUTES not defined.
63 #endif
64 
65 #ifndef ATTR
66 #error Macro ATTR not defined.
67 #endif
68 
69 #ifndef UNASSIGNED
70 #error Macro UNASSIGNED not defined.
71 #endif
72 
73 /* define the length of the undistinguised octets length */
74 #define UMAX 128
75 
76 /* define type mappings for attribute types */
77 
78 #define ATTR_INT(attr, string) \
79  ATTR(attr, t_int, string, 4, 4)
80 #define ATTR_IPADDR(attr, string) \
81  ATTR(attr, t_ipaddr, string, 4, 4)
82 #define ATTR_STR(attr, string, min, max) \
83  ATTR(attr, t_string, string, min, max)
84 
85 /*
86  * defines the Attribute type, (see RFC2865, page 25 and on)
87  * syntax: ATTR(<attribute>, <value-type>, <description string>, <min len>, <max len>)
88  */
89 
90 ATTRIBUTES(
91 ATTR_STR(1, "User-Name", 1, 64)
92 ATTR_STR(2, "User-Password", 16, UMAX)
93 ATTR_STR(3, "CHAP-Password", 16, 16)
94 ATTR_IPADDR(4, "NAS-IP-Address")
95 ATTR_INT(5, "NAS-Port")
96 ATTR_INT(6, "Service-Type")
97 ATTR_INT(7, "Framed-Protocol")
98 ATTR_IPADDR(8, "Framed-IP-Address")
99 ATTR_IPADDR(9, "Framed-IP-Netmask")
100 ATTR_INT(10, "Framed-Routing")
101 ATTR_STR(11, "Filter-Id", 1, UMAX)
102 ATTR_INT(12, "Framed-MTU")
103 ATTR_INT(13, "Framed-Compression")
104 ATTR_IPADDR(14, "Login-IP-Host")
105 ATTR_INT(15, "Login-Service")
106 ATTR_INT(16, "Login-TCP-Port")
107 UNASSIGNED(17)
108 ATTR_STR(18, "Reply-Message", 1, UMAX)
109 ATTR_STR(19, "Callback-Number", 1, UMAX)
110 ATTR_STR(20, "Callback-Id", 1, UMAX)
111 UNASSIGNED(21)
112 ATTR_STR(22, "Framed-Route", 1, UMAX)
113 ATTR_IPADDR(23, "Framed-IPX-Network")
114 ATTR_STR(24, "State", 1, UMAX)
115 ATTR_STR(25, "Class", 1, UMAX)
116 ATTR_STR(26, "Vendor-Specific", 5, 256)
117 ATTR_INT(27, "Session-Timeout")
118 ATTR_INT(28, "Idle-Timeout")
119 ATTR_INT(29, "Termination-Action")
120 ATTR_STR(30, "Called-Station-Id", 1, UMAX)
121 ATTR_STR(31, "Calling-Station-Id", 1, UMAX)
122 ATTR_STR(32, "NAS-Identifier", 1, UMAX)
123 ATTR_STR(33, "Proxy-State", 1, UMAX)
124 ATTR_STR(34, "Login-LAT-Service", 1, UMAX)
125 ATTR_STR(35, "Login-LAT-Node", 1, UMAX)
126 ATTR_STR(36, "Login-LAT-Group", 32, 32)
127 ATTR_INT(37, "Framed-AppleTalk-Link")
128 ATTR_INT(38, "Framed-AppleTalk-Network")
129 ATTR_STR(39, "Framed-AppleTalk-Zone", 1, UMAX)
130 
131 /* accounting types (RFC2866, page 10) */
132 ATTR_INT(40, "Acct-Status-Type")
133 ATTR_INT(41, "Acct-Delay-Time")
134 ATTR_INT(42, "Acct-Input-Octets")
135 ATTR_INT(43, "Acct-Output-Octets")
136 ATTR_STR(44, "Acct-Session-Id", 1, UMAX)
137 ATTR_INT(45, "Acct-Authentic")
138 ATTR_INT(46, "Acct-Session-Time")
139 ATTR_INT(47, "Acct-Input-Packets")
140 ATTR_INT(48, "Acct-Output-Packets")
141 ATTR_INT(49, "Acct-Terminate-Cause")
142 ATTR_STR(50, "Acct-Multi-Session-Id", 1, UMAX)
143 ATTR_INT(51, "Acct-Link-Count")
144 
145 ATTR_STR(60, "CHAP-Challenge", 5, UMAX)
146 ATTR_INT(61, "NAS-Port-Type")
147 ATTR_INT(62, "Port-Limit")
148 ATTR_STR(63, "Login-LAT-Port", 1, UMAX)
149 )
150 
151 #undef UMAX
152 #undef ATTR_INT
153 #undef ATTR_IPADDR
154 #undef ATTR_STR
155 #undef ATTR
156 #undef UNASSIGNED
157 #undef ATTRIBUTES
158 
See file LICENSE for details about the license agreement for using, modifying, copying or deriving work from this software.