su password prompt ti stdout instead of /dev/tty
jhell
jhell at DataIX.net
Mon Jan 25 03:49:12 UTC 2010
On Sun, 24 Jan 2010 21:57, glen.j.barber@ wrote:
> Hi,
>
> Cyrille Lefevre wrote:
>>
>> Hi,
>>
>> 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.
>
> I cannot reproduce this. In fact,
>
> su root -c date > /tmp/date
>
> hangs waiting for input.
>
> orion % su root -c date > /tmp/date
> ^C
> su: Sorry
> orion % less /tmp/date
> Password:
> orion %
>
This is essentially what the OP stated was happening except you forgot the
2>&1.
> Also, you appear to be running an unpatched version of FreeBSD 8.0,
> subject to the rtld exploit (among a few others). I'd suggest upgrading.
>
> For what it's worth:
> orion % uname -a
> FreeBSD orion 8.0-STABLE FreeBSD 8.0-STABLE #20 r202187: Wed Jan 13
> 11:51:15 EST 2010 root at orion:/usr/obj/usr/src/sys/ORION amd64
>
> Regards,
>
>
--
jhell
More information about the freebsd-stable
mailing list