bin/134694: gives false-positive when unable to obtain socket [WAS: sshd(8) - alert user when fails to execute from rc.d]

Dimitry Andric dimitry at andric.com
Wed May 20 10:54:56 UTC 2009


On 2009-05-20 12:19, Eygene Ryabinkin wrote:
> You seem to mix two things: binding to the port and the output from rc.d
> 'status' command.  Binding to the port is done by SSH by the bind(2)
> system call and if something is already listening on the given address,
> the socket won't be bound, so SSH daemon terminates.

I think what might be confusing, is the fact that sshd dies due to
bind() failing, and it should; but you will only see this in the syslog,
NOT on the command line.

E.g. the /etc/rc.d/sshd script will NOT give an error, because the
/usr/bin/sshd it calls will fork, and as soon as the fork is okay, the
original instance with exit with 0.  The forked instance is what will
die on bind(), so you will not see any failures from it.


More information about the freebsd-hackers mailing list