-í
ç¶<c       s    d  Z  	  d k Z  d d g Z  d d „ Z + d d „ Z B d d „ Z G d d	 „ Z U d
 „  Z i y j d k Z Wn k e	 j
 o~ l y m d k
 Z
 WnX n e	 j
 oI o y p d k l Z Wn q e	 j
 o r e Z n Xt e Z n Xv e Z n Xx e Z d S(   s)  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

On Windows, the msvcrt module will be used.
On the Mac EasyDialogs.AskPassword is used, if available.

Ns   getpasss   getusers
   Password: c    sÛ      y  t  i i ƒ  } Wn   t |  ƒ Sn X t i | ƒ }  | }   | d t i
 @| d <! z, " t i | t i | ƒ # t |  ƒ } Wd $ % t i | t i | ƒ X' t  i i d ƒ ( | Sd S(   sX   Prompt for a password, with echo turned off.

    Restore terminal settings at end.
    i   Ns   
(   s   syss   stdins   filenos   fds   default_getpasss   prompts   termioss	   tcgetattrs   olds   news   ECHOs	   tcsetattrs	   TCSADRAINs
   _raw_inputs   passwds   stdouts   write(   s   prompts   fds   news   passwds   old(    (    s   /usr/lib/python2.2/getpass.pys   unix_getpass s   
c    s(  + , - t  i t  i j	 o . t |  ƒ Sn / d k } 0 x! |  D0 ] } 1 | i | ƒ qC W2 d } 3 xŽ 3 d oƒ 4 | i	 ƒ  } 5 | d j p
 | d j o 6 Pn 7 | d j o 8 t
 ‚ n 9 | d j o : | d  } n < | | } qo W= | i d ƒ > | i d ƒ ? | Sd S(	   s9   Prompt for password with echo off, using Windows getch().Ns    i   s   s   
s   s   iÿÿÿÿ(   s   syss   stdins	   __stdin__s   default_getpasss   prompts   msvcrts   cs   putchs   pws   getchs   KeyboardInterrupt(   s   prompts   cs   pws   msvcrt(    (    s   /usr/lib/python2.2/getpass.pys   win_getpass+ s*   
 		 
c    s   B C d GHD t  |  ƒ Sd  S(   Ns7   Warning: Problem with getpass. Passwords may be echoed.(   s
   _raw_inputs   prompt(   s   prompt(    (    s   /usr/lib/python2.2/getpass.pys   default_getpassB s   s    c    s   G J t  |  ƒ }  K |  o L t i i |  ƒ n M t i i ƒ  } N | o O t ‚ n P | d d j o Q | d  } n R | Sd  S(   Niÿÿÿÿs   
(	   s   strs   prompts   syss   stdouts   writes   stdins   readlines   lines   EOFError(   s   prompts   line(    (    s   /usr/lib/python2.2/getpass.pys
   _raw_inputG s   
c     s‰   U [ ] d k  } _ xG d d d d f D_ ]0 } ` | i i | ƒ } a | o b | Sn q( We d k }  f |  i | i ƒ  ƒ d Sd S(   sÂ   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.

    Ns   LOGNAMEs   USERs   LNAMEs   USERNAMEi    (   s   oss   names   environs   gets   users   pwds   getpwuids   getuid(   s   pwds   oss   names   user(    (    s   /usr/lib/python2.2/getpass.pys   getuserU s    	
(   s   AskPassword(   s   __doc__s   syss   __all__s   unix_getpasss   win_getpasss   default_getpasss
   _raw_inputs   getusers   termioss   ImportErrors   msvcrts   EasyDialogss   AskPasswords   getpass(   s   unix_getpasss   getpasss   __all__s
   _raw_inputs   win_getpasss   termioss   syss   getusers   msvcrts   default_getpasss   AskPassword(    (    s   /usr/lib/python2.2/getpass.pys   ?	 s(   