From 5886bda12130ff8e76c4dd73762c183c1ab31871 Mon Sep 17 00:00:00 2001 From: Linus Nordberg Date: Tue, 5 Oct 2010 22:07:21 +0200 Subject: More info to README and HACKING. --- lib/HACKING | 56 +++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 39 insertions(+), 17 deletions(-) (limited to 'lib/HACKING') diff --git a/lib/HACKING b/lib/HACKING index 38826d4..8163fdf 100644 --- a/lib/HACKING +++ b/lib/HACKING @@ -1,22 +1,44 @@ HACKING file for libradsec (in Emacs -*- org -*- mode). -* Design of the libraray -- three usage models - - using send and receive calls in blocking mode - - running the libevent loop, getting callbacks - - running own event loop, using fd's for select and doing the i/o - using libradsec send/receive -* Functionality -** Not implemented + +Status as of libradsec-0.0.1 (2010-10-05). + +* Build instructions +cd libradsec/lib +ln -s /usr/share/libtool/config/ltmain.sh .. # bug +sh autogen.sh +./configure # bug -- won't complain when missing libraries +make +examples/client examples/client.conf blocking ; echo $? + +* Design of the API +- There are three usage models. + - You use the send and receive calls in blocking mode. + - You run the libevent loop and get callbacks instead of doing + blocking reads. + - You run your own event loop, using fd's for select and do the i/o + using the libradsec send/receive calls. +- Fully reentrant (FIXME: any issues with libfreeradius-radius?) + +* Dependencies +- libfreeradius-radius -- no i/o used +- libconfuse +- libevent 2.0.x -- not packaged yet! + +* Functionality and quality +** Tested and verified +** Not well tested +- reading config file +- short read +- short write - autoconf/automake/libtool +** Known issues +- leaking memory +- udp issues with libevent +** Not implemented - client: matching responses, resending packets - custom allocation scheme used in all places - callbacks invoked properly -- server fail over -- TLS -- TLS PSK -- DTLS -** Not tested -- reading config file -- short read -- short write -** Tested and verified +- server failover +- TLS support +- TLS preshared key support +- DTLS support -- cgit v1.1