ó
ÐH/\c           @` sT   d  d l  m Z m Z m Z d d l m Z e d e d „ Z e d e d „ Z d S(   i    (   t   absolute_importt   print_functiont   divisioni   (   t   DEFAULT_BIND_ADDR_TUPLEi2   c         C` s~   d d l  m } m } m } | r` y' |  j | | |  j | | ƒ d Bƒ Wq` | k
 r\ q` Xn  |  j | ƒ |  j | ƒ d  S(   Ni    (   t
   SOL_SOCKETt   SO_REUSEADDRt   errori   (   t   socketR   R   R   t
   setsockoptt
   getsockoptt   bindt   listen(   t   sockt   addresst   backlogt
   reuse_addrR   R   R   (    (    s5   lib/python2.7/site-packages/gevent/testing/sockets.pyt   bind_and_listen   s    c         C` s9   d d l  m } | j ƒ  } t | |  d | d | ƒ| S(   sK   A shortcut to create a TCP socket, bind it and put it into listening state.i    (   R   R   R   (   t   geventR   R   (   R   R   R   R   R   (    (    s5   lib/python2.7/site-packages/gevent/testing/sockets.pyt   tcp_listener$   s    N(	   t
   __future__R    R   R   t   paramsR   t   TrueR   R   (    (    (    s5   lib/python2.7/site-packages/gevent/testing/sockets.pyt   <module>   s   