On 01/03/2014 01:32 PM, Hartmaier Alexander wrote: > we had the issue that our Radiator process was running but the TACACS > socket on port 49 wasn't listening. > It turned out that a restart caused this because either debians > start-stop-daemon or the init script doesn't wait until the process is > really gone and Radiator is started while the old process still has the > socket open. > A quick fix is a sleep 1; between stop and start in restart but I find > that ugly. > Do you have a better suggestion?
The current version of init.d script uses '--retry 6' option with start-stop-daemon. The start-stop-daemon manual says about --retry and single option (timeout): If timeout is specified instead of schedule, then the schedule signal/timeout/KILL/timeout is used, where signal is the signal specified with --signal. Default --signal is TERM. So the current init.d script should instruct start-stop-daemon to go as far as this (it should poll and exit as soon as the program exits): kill -TERM $pid; sleep 6; kill -KILL $pid; sleep 6 Does your script use --retry option? I'd think --retry should take care of the problem. > Radiator logged 'ERR: Could not bind Server TACACSPLUS socket: Address > already in use' to its logfile but still started, I'd suggest that such > a fatal startup error results in Radiator dieing with this error message. > > What do you thing about that change? It sounds reasonable. I'll check about patching this. Thanks, Heikki -- Heikki Vatiainen <[email protected]> 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. _______________________________________________ radiator mailing list [email protected] http://www.open.com.au/mailman/listinfo/radiator
