Radcli library  1.2.10
A simple radius library
Radcli library Documentation

Introduction

RADIUS stands for Remote Authentication Dial In User Service and is a protocol for carrying authentication, authorization, and configuration information between a Network Access Server (NAS) which desires to authenticate its links and a shared Authentication Server. The protocol originally was designed by the terminal server manufacturer Livingston for use with their Portmaster series of terminal servers. Since then it has been implemented by a lot of other vendors and it is also on it's way to become a Internet Standard.

This library implements the needed standards for the client side of the protocol, in a way the minimum configuration and modification is needed for the clients. The approach is to rely on a small external radius configuration file, read using rc_read_config(), and then using rc_auth() or rc_acct() to communicate with the server. Configuration options (like using TLS or so) are then set when parsing the file, simplifying application configuration and administration.

Alternative operation without a configuration file is also possible, see rc_add_config() and rc_apply_config().

Check radexample.c for a functional example.