
     `e                        d Z ddlZ ej        e          ZddlmZ ddlmZ ddl	m
Z
 ddlmZ g dZd Z e
e	          Z e
d
dgedk     rdnd
dddd          Zg dZ e
eddg          Zg dez   Z e
ee          Z ee          Ze                    dd            e
ee          Zg dZ e
e          Z ee          Ze                    d            e
e          ZeZg dZ e
e          Z d Z!d Z" e
 e"                      Z# e
dg          Z$ e
ddgd           Z%e%Z& e
d!g          Z'd" Z( e
g d#e($          Z) e
d%gd&'          Z*g d(Z+ e
e+          Z, e
e+d)gz   e+d)d*+          xZ-Z.dS ),zpasslib.apps    N)chain)hash)LazyCryptContext)sys_bits)
custom_app_contextdjango_contextldap_contextldap_nocrypt_contextmysql_contextmysql4_contextmysql3_contextphpass_contextphpbb3_contextpostgres_contextc                      ddl m}   |             }g d}|D ]}|                    |           t          |d          S )Nr   )list_crypt_handlers)bigcryptcrypt16	cisco_pixcisco_type7htdigestmysql323oracle10lmhashmsdccmsdcc2nthash	plaintextldap_plaintextdjango_disabledunix_disabledunix_fallbacksha256_crypt)schemesdefault)passlib.registryr   removedict)r   r$   excludednames       F/var/www/html/Alfredo/env/lib/python3.11/site-packages/passlib/apps.py_load_master_configr,      sp    444444 "!##G  H6   t 8888    )onloadsha512_cryptr#   @   i) i  )r$   r%   sha512_crypt__min_roundssha256_crypt__min_roundsadmin__sha512_crypt__min_roundsadmin__sha256_crypt__min_rounds)django_salted_sha1django_salted_md5django_des_crypthex_md5r    r5   r8   )r$   r%   
deprecated)django_pbkdf2_sha256django_pbkdf2_sha1django_bcrypt)r$   r9      django_bcrypt_sha256)r:   r;   django_argon2r<   r>   r    )r$   r<   )ldap_salted_sha512ldap_salted_sha256ldap_salted_sha1ldap_salted_md5	ldap_sha1ldap_md5r   c                  &    ddl m}  d | D             S )Nr   unix_crypt_schemesc              3       K   | ]	}d |z   V  
dS )ldap_N ).0r*   s     r+   	<genexpr>z+_iter_ldap_crypt_schemes.<locals>.<genexpr>   s&      ::tGdN::::::r-   )passlib.utilsrH   rG   s    r+   _iter_ldap_crypt_schemesrO      s)    000000::'9::::r-   c                  D    t          t          t                                S )z5helper which iterates over supported std ldap schemes)r   std_ldap_schemesrO   rK   r-   r+   _iter_ldap_schemesrR      s    !#;#=#=>>>r-   r   mysql41)r9   postgres_md5c                  P    t           j                                        rdnd| d<   | S )z9helper to choose default alg based on bcrypt availabilitybcryptphpassr%   )r   rV   has_backend)kwdss    r+   _create_phpass_policyrZ      s'    "&+"9"9";";IhhDOKr-   )rV   rW   
bsdi_crypt)r$   r.   rW   H)phpass__ident)ldap_hex_sha1ldap_hex_md5ldap_des_cryptroundup_plaintextldap_pbkdf2_sha1i'  )r$   r9   r%    ldap_pbkdf2_sha1__default_rounds)/__doc__logging	getLogger__name__log	itertoolsr   passlibr   passlib.contextr   rN   r   __all__r,   master_contextr   _django10_schemesdjango10_context_django14_schemesdjango14_contextlist_django16_schemesinsertdjango16_context_django_110_schemesdjango110_context_django21_schemesr'   django21_contextr   rQ   r
   rO   rR   r	   r   r   r   r   rZ   r   r   _std_roundup_schemesroundup10_contextroundup_contextroundup15_contextrK   r-   r+   <module>r~      sf    
 'g'11             , , , , , , " " " " " "  &9 &9 &9N "!)<===
 &%^, 'mmNN  &% '.&-   0    $# {      	  $#     D*++    2 3 3 3##        %$-@AAA  D,--     ) ) )##,=>>>  "    ('(899 ; ; ;? ? ?   2 2 4 455 "!:,//!!9j"9jQQQ
 $#^$455 
  
 "!...   
 "!8*C@@@ baa $$%9::  '7&6 %7#99# ',	' ' ' ###r-   