
``getpass`` --- Portable password input
***************************************

The ``getpass`` module provides two functions:

getpass.getpass([prompt[, stream]])

   Prompt the user for a password without echoing.  The user is
   prompted using the string *prompt*, which defaults to ``'Password:
   '``. On Unix, the prompt is written to the file-like object
   *stream*.  *stream* defaults to the controlling terminal (/dev/tty)
   or if that is unavailable to ``sys.stderr`` (this argument is
   ignored on Windows).

   If echo free input is unavailable getpass() falls back to printing
   a warning message to *stream* and reading from ``sys.stdin`` and
   issuing a ``GetPassWarning``.

   Availability: Macintosh, Unix, Windows.

   Changed in version 2.5: The *stream* parameter was added.

   Changed in version 2.6: On Unix it defaults to using /dev/tty
   before falling back to ``sys.stdin`` and ``sys.stderr``.

   Note: If you call getpass from within IDLE, the input may be done in
     the terminal you launched IDLE from rather than the idle window
     itself.

exception getpass.GetPassWarning

   A ``UserWarning`` subclass issued when password input may be
   echoed.

getpass.getuser()

   Return the "login name" of the user. Availability: Unix, Windows.

   This function checks the environment variables **LOGNAME**,
   **USER**, **LNAME** and **USERNAME**, in order, and returns the
   value of the first one which is set to a non-empty string.  If none
   are set, the login name from the password database is returned on
   systems which support the ``pwd`` module, otherwise, an exception
   is raised.
