Skip to content

vrobles-gee/radcli

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

676 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The radcli library

0. BRANCH STATE

BuildStatus

1. INTRODUCTION

The radcli library is a library for writing RADIUS Clients. The library's approach is to allow writing RADIUS-aware application in less than 50 lines of C code. It was based originally on freeradius-client and radiusclient-ng and is source compatible with them.

2. Background

For the development of the openconnect VPN server, I needed a simple library to allow using radius for authentication and accounting without having to understand the internals of radius. Such library was the freeradius-client library, but was undocumented, had too much legacy code centered around radlogin, a tool which is of no significance today, was IPv4-only and had no releases for several years.

This library addresses these shortcomings, adds package management via pkg-config, adds support for TCP, TLS and DTLS, provides documentation of the API, and will include any new features for the task. It is provided as a shared library in case it is useful to other projects as well, and is also made source compatible with radiusclient-ng and freeradius-client.

3. Documentation

Documentation and examples are available at: http://radcli.github.io/radcli/

4. Compilation

Run autogen.sh to generate the configure script and makefiles.

Required dependencies (Fedora/RHEL pkg): ` yum install -y autoconf libtool automake nettle-devel gnutls-devel abi-compliance-checker `

Required dependencies (Fedora 23+): ` dnf install -y autoconf libtool automake nettle-devel gnutls-devel gettext-devel abi-compliance-checker `

Required dependencies (Debian pkg): ` apt-get install -y autoconf libtool automake nettle-dev libgnutls28-dev abi-compliance-checker `

5. Contributing/Submitting pull requests

For adding new features or extending functionality in addition to the code, please also submit a test program which verifies the correctness of operation. See tests/ and .travis.yml for the existing test suite.

6. Bug reporting

Please use the issue tracker at: https://github.com/radcli/radcli/issues

7. Web Site

The web site http://radcli.github.io/radcli is the primary web-site for radcli and is auto-generated via the 'make web' rule.

About

A simple RADIUS client library http://radcli.github.io/radcli/

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • C 71.8%
  • M4 15.8%
  • Shell 10.1%
  • Makefile 2.3%