subprocess pipe
Nobody
nobody at nowhere.com
Mon Nov 15 03:08:26 EST 2010
On Sun, 14 Nov 2010 19:47:55 +0000, Tim Harig wrote:
> On 2010-11-14, Camille Harang <mammique at garbure.org> wrote:
>> # pg_dump prompts for password so I inject it in stdin.
>> pgsql.stdin.write('MY_PASSWORD' + '\n')
>
> For security reasons, some programs use direct access to the TTY system
> for password entry rather then reading from stdin.
Indeed, the getpass() function exists[1] for this purpose:
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.
[1] Or existed. It was dropped from the Unix standard in POSIX.1-2001, but
most systems still provide it.
More information about the Python-list
mailing list