diff -r d23e9854aea4 -r 18a7312cfdb3 src/eric7/DebugClients/Python/getpass.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/eric7/DebugClients/Python/getpass.py Sun Jul 24 11:29:56 2022 +0200 @@ -0,0 +1,61 @@ +# -*- coding: utf-8 -*- + +# Copyright (c) 2004 - 2022 Detlev Offenbach <detlev@die-offenbachs.de> +# + +""" +Module implementing utilities to get a password and/or the current user name. + +getpass(prompt) - prompt for a password, with echo turned off +getuser() - get the user name from the environment or password database + +This module is a replacement for the one found in the Python distribution. It +is to provide a debugger compatible variant of the a.m. functions. +""" + +__all__ = ["getpass", "getuser"] + + +def getuser(): + """ + Function to get the username from the environment or password database. + + First try various environment variables, then the password + database. This works on Windows as long as USERNAME is set. + + @return username + @rtype str + """ + # this is copied from the original getpass.py + + import os + + for name in ("LOGNAME", "USER", "LNAME", "USERNAME"): + user = os.environ.get(name) + if user: + return user + + # If this fails, the exception will "explain" why + import pwd + + return pwd.getpwuid(os.getuid())[0] + + +def getpass(prompt="Password: ", stream=None): + """ + Function to prompt for a password, with echo turned off. + + @param prompt Prompt to be shown to the user + @type str + @param stream input stream to read from (ignored) + @type file + @return Password entered by the user + @rtype str + """ + return input(prompt, False) # secok + + +unix_getpass = getpass +win_getpass = getpass +default_getpass = getpass +fallback_getpass = getpass