Apologies if this issue has already been addressed. But it isn't plain, even using sshd -d -d -d, why function allowed_user would return 0. In my case, an old version of login was ignoring the expiry-date field of /etc/shadow, but sshd was refusing access. There are several reasons why access might be refused, and it shouldn't be necessary to modify auth.c to print out the info - it would be nicer to have debug statements added to the standard code. I hesitate to submit my mods. - I'm too old to be an expert on anything as up-to-date as C :-) -- Roy Millar, finger rmill at shell.ednet.co.uk or rmill at Millstream.ednet.co.uk access http://www.ednet.co.uk/~rmill 100044.14 at CompuServe.com for PGP public key