
    g                     f    d Z ddlZddlmZ  ej
                  ded       deded	dfd
Z	d	efdZ
y)z*
PRNG management routines, thin wrappers.
    N)libz>OpenSSL.rand is deprecated - you should use os.urandom instead   )
stacklevelbufferentropyreturnc                     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)r   r   s     A/var/www/openai/venv/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   )__doc__warningsOpenSSL._utilr   r   warnDeprecationWarningr   r   r   r   r   r   r   <module>r      sO     % D0 0 0 04 r   