I've moved git head to using the latest libtool (2.2.4). This MAY cause issues, or it MAY solve problems that people have. There's really no way to tell until it's tested on a wide variety of systems.
I've put some effort into fixing the "bind to privileged port" issues. It's possible to run the server as an unprivileged user. In this case, it will temporarily drop permissions when it starts up, "su" to root to bind to the ports, and then permanently drop permissions after that. This helps the server run with the minimum number of permissions. I've also moved about 20% of the server code out of src/main, and into src/modules. See src/modules/frs_*. What are the new modules? Well... they implement the server code that handles incoming packets. when the server sees a "listen" section saying "type = foo", it tries to load a module "frs_foo". This works for auth, acct, control sockets, proxy, "detail" file readers, DHCP, and VMPS. The nice thing about this is that the "weird" code like DHCP && VMPS is now located only in frs_dhcp && frs_vmps. i.e. Neither the server core, nor the RADIUS library know anything about DHCP or VMPS. This makes the server core simpler and easier to understand. The next step is to move much of the RADIUS state machine code from src/main to frs_auth && frs_acct. It's may be a little difficult to do, but I think it will be worth it in the end. Why was this done? For one, src/main/ was getting big. The addition of new protocols like VMPS && DHCP made the build system && internal server code more complicated. This change simplifies it again. As a side effect, it may make it easier to add new protocols... like an ARP watch daemon, or pretty much anything else UDP related. Alan DeKok. - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

