I've just been cooking up a patch to pass the connecting client's IP address as ipparam to pppd. The radius plugin for pppd passes the ipparam as the Calling-Station-Id tag, so what I would like to see on the radius side is something like this:
Calling-Station-Id = "172.24.5.10"
Which can then be logged as part of the radius session logs. One could even use it as part of the authentication/authorization phase on the radius side.
Patch available at https://bugs.gentoo.org/attachment.cgi?id=275845
As it stands it will apply cleanly after applying the optionsfile patch too. This is unfortunate but it touches many of the same code paths.
One thing that worries me ever so slightly is that there might be memory leaks based on the strdup() calls in ppp_unix_params_to_argv in plugins/ppp_unix.so - unless this is invoked after the daemon fork(2)s but before execve*(2).