RadiusClass
1.0
The RadiusClass is a library for RADIUS authentication and accounting.
- Sending and receiving RADIUS packets.
- Generates password and authentication fields at sending automaticly, you only need to set the plain text password of the user for ACCESS_REQUEST packets.
- optional password length
- timeouts for waiting on response packets
- sending retries if no response from server
- sending to optional number of servers
- one after the other, if a server isn't reachable
- the order is the same as defined in the configfile
- extract attributes from the response packet, e.g. FramedIp or FramedRoutes
- functions to convert values from the response packets for integers and ip address as string (see function parseResponsePacket())
- debug - class
- improve the parsing of the configfile (caseinsensitive, comments, ...), datatype string for config
- create a method which returns a representation of the buffer dependent on the type (enum, ipaddr, string, integer)
- get the NAS ip address automatically from the system
- improve the parsing of framed routes and netmask
- check response packets authenticator field from the radius server
- exceptionhandling with try and catch
- create a routing and ip class with correctness checking
- MAKEfile
Maximum characters for the parameters in the configfile:
- serviceType=1
- framedProtocol=1
- nasPortType=1
- nasIdentifier=128
- nasIpAddress=16
The RadiusClass was developed during my diploma thesis for the EWETEL GmbH (www.ewetel.net). They main idea was to create a virtualized SSL-VPN (OpenVPN) with RADIUS support. The virtualization was done by XEN.
At this place I would like to thank the people from EWETEL GmbH and EWE AG (www.ewe.de) who supported me with the required equipment and hardware and helped me with all my questions.
I tested the RadiusClass on memory leaks with valgrind. A output can be found in the file valgrind. There are no leaks, but some blocks are still reachable. This is no problem, it is a feature of the C++ STL. See Chapter 4.2 at http://valgrind.org/docs/FAQ/ .
Please report bugs and suggestions of improvement to me ralfluebben@gmx.de.
Generated on Sun Nov 27 20:19:12 2005 for RadiusClass by
1.4.2