o add more support for new configuration files
o enable server to run with child processes
(This is a little more difficult than the threading changes)
+o switch all timers from time() to gettimeofday() so processing is
+ less bursty
+o replace the module_t method table with a set of register_* functions
+ (so different instances of the same module can offer different
+ methods)
+o get rlm_unix and rlm_sql to work with multiple instances
+o have a config file (or section in radiusd.conf) that tells rlm_sql
+ what the names of the tables and columns are instead of hardcoding
+ them
LOW PRIORITY:
rotate the wtmp file properly. It should write "logout" records for
all users, move the file to wtmp.0, and create a new wtmp file with
"login" records for all currently online users.
+o split rlm_files into rlm_users, rlm_fastusers (in-memory hash),
+ rlm_detail, rlm_dbm... they all should share as much code as
+ possible though, not be big cut-and-paste jobs
+o New module: rlm_attrmap. assigns a single attribute based on a
+ username, with ed-friendly/awk-friendly config file. Because the
+ users file is too complicated.
+o New module: rlm_fastradwtmp. with a radutmp-style active session
+ database to guarantee wtmp records are always written in matching
+ pairs. Because radlast is slow.
+o New module: rlm_nsupdate (dyndns). Because dynamic addresses are
+ cruel.
+o New module: rlm_perl.
DONE:
o enable server to run in threaded mode