MarcJHuber/event-driven-servers

libfreeradius-client has been deprecated in favor of radcli

Closed this issue · 5 comments

libfreeradius-client has been deprecated in favor of radcli
Their homepage says

It was based originally on freeradius-client and is source compatible with it.

Please confider using it in configure instead of freeradius.

#check_for("FREERADIUS_CLIENT", "freeradius", "freeradius-client.h", "freeradius-client", undef);
#check_for("FREERADIUS_CLIENT", "freeradius-client", "freeradius-client.h", "freeradius-client", undef);
check_for("RADCLI", "radcli", "radcli/radcli.h", "radcli", undef) if !exists $DEFS{"WITH_FREERADIUS_CLIENT"} || $DEFS{"WITH_FREERADIUS_CLIENT"} == 0;

Hi,

I remember that libradcli did cause issues a couple of months ago, so I've dropped auto-detection and removed support in the configure script. Did you validate that building with libradcli gives usable radmavis/radmavis-mt binaries? I'm absolute not sure about this, and libfreeradius-client just works.

Thanks,

Marc

On newest Debian, despite of installed libfreeradius-dev, configure script was not detecting this:

Development files were not found for: LIB-FREERADIUS_CLIENT

That is why I started investigating and found out this deprecation. Then decided to switch to RADCLI and I was able to make+make install. I didn't test it yet, since I'm totally newbie in tacacs_plus_ng nad radius client.

Any hint how to test if radmavis/radmavis-mt bins are working OK?

Hi Patryk,

actually, I think that there's no libfreeradus**-client**-dev package available under Debian. I actually haven't checked, but there's none for Ubuntu either.

You can check for radmavis working by setting the environment variables (LDAP_HOSTS, LDAP_USER, ...) and running

printf "0 TACPLUS\n4 $USER\n8 $PASS\n49 AUTH\n=\n" | radmavis "authserver=localhost:1812:yoursecret dictionary=/path/to/dictionary"

Cheers,

Marc

Hi,

for reference, the issue with radcli not working as expected is documented in #55

Cheers,

Marc

Hi,

I've had another look at the radcli issue. There's a new API call, rc_apply_config(), that needs to be used. 5d095b4 adds that call and re-enables radcli support.

Cheers,

Marc