never close stdin
authortobias <tobias@openbsd.org>
Tue, 30 Apr 2024 15:40:43 +0000 (15:40 +0000)
committertobias <tobias@openbsd.org>
Tue, 30 Apr 2024 15:40:43 +0000 (15:40 +0000)
commitccc53781e71f824e8922bf4053d5be6bf73c0aac
treef6fb36c5f68ad4cfa9116e7744978c520593207c
parenteb799928766efd111ad429f6dc61d2b0c3859e37
never close stdin

The sanitise_stdfd call makes sure that standard file descriptors are
open (if they were closed, they are connected with /dev/null).

Do not close stdin in any case to prevent error messages when stdin is
read multiple times and to prevent later usage of fd 0 for connections,
e.g.

echo localhost | ssh-keyscan -f - -f -

While at it, make stdin-related error messages nicer.

Authored with Max Kunzelmann <maxdev at posteo dot de>

ok djm
usr.bin/ssh/ssh-keyscan.c