
    c                         d Z ddlmZmZ ddlZ	 ddlmZ n# e$ r	 ddlmZ Y nw xY wda	 e
            ad Zd Zd Zd Zd	 Zd
 Z	 ddlZn# e$ r dZ ed           Y nw xY wd Zd Zd Zd ZdS )z OS keychain/keyring abstraction.    )absolute_importprint_functionN
quote_plusc                      t           dz   a d S )N   _fallback_keyring     Alib/python3.11/site-packages/anaconda_project/internal/keyring.pyenable_fallback_keyringr      s    )A-r   c                  j    t           dk    sJ t           dz
  a t           dk    rt                      ad S d S )Nr   r   )r
   dict_fake_in_memory_keyringr   r   r   disable_fallback_keyringr      sG     q    )A-A )"&&&) )r   c                      t           dk    S Nr   r	   r   r   r   _use_fallback_keyringr   %   s    q  r   c                     t                      sIt          dt          j                   t          d| z  t          j                   t	                       d S d S )Nz0Unable to use system keyring to store passwords.)filez  (%s))r   printsysstderrr   )	complaints    r   %_onetime_keyring_complain_and_disabler   *   s^     "" " 	@szRRRRh"4444!!!!!" "r   c                  &    t                      adad S r   )r   r   r
   r   r   r   reset_keyring_moduler   4   s     #ffr   c                      t           S )N)r   r   r   r   fallback_datar    ;   s    ""r   zEModule 'keyring' not available, try installing the 'keyring' package.c                 T    | J |J t          |           dt          |          S )N/r   )
env_prefixvariables     r   _make_usernamer%   F   s>    !!! ,,,,j.B.B.BCCr   c                    t          | |          }t                      sN	 t          j        d|          }|S # t          $ r)}t          dt          |          z              Y d }~nd }~ww xY wt                              |d           S )NanacondazException getting a password: )	r%   r   keyringget_password	Exceptionr   strr   get)r#   r$   namegotes        r   r,   r,   M   s    *h//D "" ]	]&z488CJ 	] 	] 	] 22RUXYZU[U[2[\\\\\\\\	] #&&tT222s   7 
A*A%%A*c                     |J t          | |          }t                      sO	 t          j        d||           d S # t          $ r)}t          dt          |          z              Y d }~nd }~ww xY w|t          |<   d S )Nr'   zException setting a password: )r%   r   r(   set_passwordr*   r   r+   r   )r#   r$   valuer-   r/   s        r   setr3   \   s    *h//D "" ]	] T5999F 	] 	] 	] 22RUXYZU[U[2[\\\\\\\\	] %*D!!!s   < 
A/A**A/c                    t          | |          }t                      sN	 t          j        d|           d S # t          $ r)}t          dt          |          z              Y d }~nd }~ww xY w|t          v r
t          |= d S d S )Nr'   zException deleting a password: )r%   r   r(   delete_passwordr*   r   r+   r   )r#   r$   r-   r/   s       r   unsetr6   m   s    *h//D "" ^	^#J555F 	^ 	^ 	^ 22SVYZ[V\V\2\]]]]]]]]	^ && *#D)))* *s   7 
A*A%%A*)__doc__
__future__r   r   r   urllib.parser   ImportErrorurllibr
   r   r   r   r   r   r   r   r    r(   r%   r,   r3   r6   r   r   r   <module>r<      s   ' & 6 6 6 6 6 6 6 6 



"''''''' " " "!!!!!!!!"  $&& . . .
) ) )! ! !
" " "  # # #sNNNN s s sG))*qrrrrrs
D D D3 3 3* * *"* * * * *s    %%A A! A!