[RADIATOR] Random AuthBy LDAP2 "Undefined subroutine &main::" connect failures

Heikki Vatiainen hvn at open.com.au
Sun Aug 26 04:40:11 CDT 2012


On 08/25/2012 02:34 AM, Kevin Schmidt wrote:

> I've been using Radiator in support of a variety of services for years, 
> but I just ran into a really strange bug.  If someone has an idea of 
> what's happening, or a particularly good debugging technique to find the 
> root cause, I'm all ears.

There was one similar case recently. The problem occurred when radiusd
was sent HUP after configuration change.

> Briefly stated, at some apparently-random point the radius server 
> attempts to reconnect to the back-end ldap server, but the connection 
> fails with "Undefined subroutine &main:: called at 
> /usr/share/perl5/IO/Socket/SSL.pm line 391."

Yes, this was the same line where the problem occurred previously. We
got the same backtrace.

This line in IO::Socket::SSL 1.53 as shipped with Ubuntu 12.04 tries to
call Net::SSLeay::connect() but fails. During debugging IO::Socket::SSL
was updated to the latest version, but the problem persisted. I think
the solution was to use restart instead of HUP after reconfiguration.

The problem was seen on RedHat 6.2 with locally compiled Perl 5.14.2.
When I tried to reproduce the problem I could not do it successfully. I
also tried Ubuntu 12.04 but that did not help.

Do you see the problem when radiusd is HUPed or does it happen when
there's a need to reconnect to LDAP server for some other reason?

Also, one idea we discussed here is to try upgrading Net::SSLeay. Can
you try compiling Net::SSLeay locally and try the latest version?

It does not look like a Radiator problem and with IO::Socket:SSL the
problem was seen always when Net::SSLeay::connect() was called. It would
be a good idea to see if upgrading Net::SSLeay helps.

Thanks,
Heikki

-- 
Heikki Vatiainen <hvn at open.com.au>

Radiator: the most portable, flexible and configurable RADIUS server
anywhere. SQL, proxy, DBM, files, LDAP, NIS+, password, NT, Emerald,
Platypus, Freeside, TACACS+, PAM, external, Active Directory, EAP, TLS,
TTLS, PEAP, TNC, WiMAX, RSA, Vasco, Yubikey, MOTP, HOTP, TOTP,
DIAMETER etc. Full source on Unix, Windows, MacOSX, Solaris, VMS,
NetWare etc.


More information about the radiator mailing list