HACKING file for libradsec (in Emacs -*- org -*- mode). Status as of libradsec-0.0.1-dev (2011-02-28). * Build instructions cd libradsec/lib sh autogen.sh ./configure make examples/client -r examples/client-tls.conf blocking-tls ; echo $? * Design of the API - 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 * Functionality and quality ** Tested and verified ** Not well tested - reading config file - short read - short write - basic tls support ** Known issues - leaking memory - udp issues with libevent - error stack is one entry deep ** Not implemented - client: udp (resending packets), access-challenge, read/write timeout - custom allocation scheme used in all places - server failover - TLS: verify CNAME - TLS preshared key support - DTLS support