
    h                    b    d Z ddlmZ ddlZddlmZ  ej                  ded       d
dZ	dd	Z
y)z*
PRNG management routines, thin wrappers.
    )annotationsN)libz>OpenSSL.rand is deprecated - you should use os.urandom instead   )
stacklevelc                    t        | t              st        d      t        |t              st        d      t	        j
                  | t        |       |       y)a  
    Mix bytes from *string* into the PRNG state.

    The *entropy* argument is (the lower bound of) an estimate of how much
    randomness is contained in *string*, measured in bytes.

    For more information, see e.g. :rfc:`1750`.

    This function is only relevant if you are forking Python processes and
    need to reseed the CSPRNG after fork.

    :param buffer: Buffer with random data.
    :param entropy: The entropy (in bytes) measurement of the buffer.

    :return: :obj:`None`
    zbuffer must be a byte stringzentropy must be an integerN)
isinstancebytes	TypeErrorint_libRAND_addlen)bufferentropys     H/var/www/Befach/backend/env/lib/python3.12/site-packages/OpenSSL/rand.pyaddr      sD    " fe$677gs#455MM&#f+w/    c                 *    t        j                         S )z}
    Check whether the PRNG has been seeded with enough data.

    :return: 1 if the PRNG is seeded enough, 0 otherwise.
    )r   RAND_status r   r   statusr   ,   s     r   )r   r	   r   r   returnNone)r   r   )__doc__
__future__r   warningsOpenSSL._utilr   r   warnDeprecationWarningr   r   r   r   r   <module>r       s6    #  % D04r   