ó
BwLc           @   sE   d  Z  d d l m Z d d l Z d d l Z d d d „  ƒ  YZ d S(   s   $Id$iÿÿÿÿ(   t   RandomPool_DeprecationWarningNt
   RandomPoolc           B   s‰   e  Z d  Z d d d d d „ Z d „  Z d „  Z d d d „ Z d d „ Z d	 d
 „ Z	 d d „ Z
 d	 d „ Z d „  Z d	 d „ Z RS(   s\   Deprecated.  Use Random.new() instead.

    See http://www.pycrypto.org/randpool-broken
    i    c         C   sK   t  j d t ƒ t j j ƒ  |  _ | |  _ |  j d |  _ |  j |  _	 d  S(   Nsq   This application uses RandomPool, which is BROKEN in older releases.  See http://www.pycrypto.org/randpool-brokeni   (
   t   warningst   warnR    t   Cryptot   Randomt   newt   _RandomPool__rngt   bytest   bitst   entropy(   t   selft   numbytest   ciphert   hasht   file(    (    s8   /usr/lib/python2.7/dist-packages/Crypto/Util/randpool.pyt   __init__&   s    		c         C   s   |  j  j | ƒ S(   N(   R   t   read(   R   t   N(    (    s8   /usr/lib/python2.7/dist-packages/Crypto/Util/randpool.pyt	   get_bytes.   s    c         C   sO   |  j  | 7_  |  j  d k  r* d |  _  n! |  j  |  j k rK |  j |  _  n  d  S(   Ni    (   R
   R	   (   R   t   nbits(    (    s8   /usr/lib/python2.7/dist-packages/Crypto/Util/randpool.pyt   _updateEntropyEstimate1   s
    i    s   /dev/urandomc         C   s   |  j  j ƒ  d S(   s   Dummy _randomize() functionN(   R   t   flush(   R   R   t   devname(    (    s8   /usr/lib/python2.7/dist-packages/Crypto/Util/randpool.pyt
   _randomize8   s    c         C   s   |  j  j ƒ  d S(   s   Dummy randomize() functionN(   R   R   (   R   R   (    (    s8   /usr/lib/python2.7/dist-packages/Crypto/Util/randpool.pyt	   randomize<   s    t    c         C   s   |  j  j ƒ  d S(   s   Dummy stir() functionN(   R   R   (   R   t   s(    (    s8   /usr/lib/python2.7/dist-packages/Crypto/Util/randpool.pyt   stir@   s    i   c         C   s   |  j  j ƒ  d S(   s   Dummy stir_n() functionN(   R   R   (   R   R   (    (    s8   /usr/lib/python2.7/dist-packages/Crypto/Util/randpool.pyt   stir_nD   s    c         C   s   |  j  j ƒ  d S(   s   Dummy add_event() functionN(   R   R   (   R   R   (    (    s8   /usr/lib/python2.7/dist-packages/Crypto/Util/randpool.pyt	   add_eventH   s    c         C   s   |  j  | ƒ S(   s   Dummy getBytes() function(   R   (   R   R   (    (    s8   /usr/lib/python2.7/dist-packages/Crypto/Util/randpool.pyt   getBytesL   s    c         C   s
   |  j  ƒ  S(   s   Dummy addEvent() function(   R   (   R   t   eventR   (    (    s8   /usr/lib/python2.7/dist-packages/Crypto/Util/randpool.pyt   addEventP   s    N(   t   __name__t
   __module__t   __doc__t   NoneR   R   R   R   R   R   R   R   R   R!   (    (    (    s8   /usr/lib/python2.7/dist-packages/Crypto/Util/randpool.pyR   !   s   			(    (   t   __revision__t   Crypto.pct_warningsR    t   Crypto.RandomR   R   R   (    (    (    s8   /usr/lib/python2.7/dist-packages/Crypto/Util/randpool.pyt   <module>   s   