File: README.rst

package info (click to toggle)
radcli 1.2.11-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye, forky, sid, trixie
  • size: 1,768 kB
  • sloc: ansic: 6,089; sh: 767; makefile: 190; perl: 110
file content (84 lines) | stat: -rw-r--r-- 2,499 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
The radcli library
==================

0. BRANCH STATE
---------------
|BuildStatus|_

.. |BuildStatus| image:: https://travis-ci.org/radcli/radcli.png
.. _BuildStatus: https://travis-ci.org/radcli/radcli


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.