su password prompt ti stdout instead of /dev/tty
Cyrille Lefevre
cyrille.lefevre-lists at laposte.net
Mon Jan 25 09:40:41 UTC 2010
jhell a écrit :
> On Sun, 24 Jan 2010 21:57, glen.j.barber@ wrote:
>> Cyrille Lefevre wrote:
>>>
>>> su password prompt is displayed to *stdout* instead of */dev/tty*.
>>>
>>> # su user
>>> $ su root -c date > /tmp/date 2>&1
>>> (nothing displayed)
>>> $ cat /tmp/date
>>> Password:su: Sorry
>>> $ uname -a
>>> FreeBSD freebsd8.my.domain 8.0-RELEASE FreeBSD 8.0-RELEASE #0: Sat Nov
>>> 21 15:48:17 UTC 2009
>>> root at almeida.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386
>>>
>>> I suppose this is a getpass() problem ?
>>>
>
> This is intended operation as su(1) may not always be affiliated with a
> TTY. This leaves it open for a script to chat with much like what samba
> does with its passwd chat mechanism.
well, all other oses (netbsd, openbsd, ubuntu at least) don't do it this
way, they all password prompt to /dev/tty instead of stdout. freebsd is
the only one which prompt to stdout.
Regards,
Cyrille Lefevre
--
mailto:Cyrille.Lefevre-lists at laposte.net
More information about the freebsd-stable
mailing list