[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [Libvir] Use of getpass



Daniel P. Berrange wrote:
On Thu, Dec 06, 2007 at 02:28:58PM +0000, Richard W.M. Jones wrote:
We recently added a call to getpass(3) function. Needless to say this doesn't exist on Windows. More seriously the man-page for getpass on Linux has strong exhortations not to use the function.

NAME
       getpass - get a password

SYNOPSIS
       #include <unistd.h>

       char *getpass( const char * prompt );

DESCRIPTION
       This function is obsolete.  Do not use it.

The getpass() function opens /dev/tty (the controlling terminal of the process), outputs the string prompt, turns off echoing, reads one line (the "password"), restores the terminal state and closes /dev/tty
       again.
[...]
CONFORMING TO
       Present in SUSv2, but marked LEGACY.  Removed in POSIX.1-2001.

Should we remove it?  Replace it?

I'm open to suggestions? I'm not aware of any 'easy' functions to do
the same thing. Could write a whole tonne of sick code which uses the
tcgetattr/tcsetattr() apis to turn off echoing on stdin, but getpass
was simpler. Maybe gnulib has something we can use ?

Sorry should have checked that. Yes, gnulib does have getpass, LGPLv2+, written by Jim Meyering.

Rich.

--
Emerging Technologies, Red Hat - http://et.redhat.com/~rjones/
Registered Address: Red Hat UK Ltd, Amberley Place, 107-111 Peascod
Street, Windsor, Berkshire, SL4 1TE, United Kingdom.  Registered in
England and Wales under Company Registration No. 03798903

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]