summaryrefslogtreecommitdiff
path: root/lib/HACKING
diff options
context:
space:
mode:
Diffstat (limited to 'lib/HACKING')
-rw-r--r--lib/HACKING31
1 files changed, 16 insertions, 15 deletions
diff --git a/lib/HACKING b/lib/HACKING
index 8163fdf..6708c19 100644
--- a/lib/HACKING
+++ b/lib/HACKING
@@ -1,28 +1,29 @@
HACKING file for libradsec (in Emacs -*- org -*- mode).
-Status as of libradsec-0.0.1 (2010-10-05).
+Status as of libradsec-0.0.1-dev (2011-02-28).
* 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
+./configure
make
-examples/client examples/client.conf blocking ; echo $?
+
+
+examples/client -r examples/client-tls.conf blocking-tls ; 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.
+- There are three usage modes
+ - You use the send and receive calls (blocking mode)
+ - You register callbacks and run the libevent dispatch loop (user
+ dispatch mode)
+ - You run your own event loop, using fd's for select and do the I/O
+ using the libradsec send/receive calls (on-your-own mode)
- Fully reentrant (FIXME: any issues with libfreeradius-radius?)
* Dependencies
- libfreeradius-radius -- no i/o used
- libconfuse
-- libevent 2.0.x -- not packaged yet!
+- libevent 2.0.x
* Functionality and quality
** Tested and verified
@@ -30,15 +31,15 @@ examples/client examples/client.conf blocking ; echo $?
- reading config file
- short read
- short write
-- autoconf/automake/libtool
+- basic tls support
** Known issues
- leaking memory
- udp issues with libevent
+- error stack is one entry deep
** Not implemented
-- client: matching responses, resending packets
+- client: udp (resending packets), access-challenge, read/write timeout
- custom allocation scheme used in all places
-- callbacks invoked properly
- server failover
-- TLS support
+- TLS: verify CNAME
- TLS preshared key support
- DTLS support