
    Ph                     P    d Z ddlmZ ddlmZ ddlmZ ddlmZ ddZ	ddZ
d	d
gZy)zzmq device functions   )ffi)lib)Socket)_retry_sys_callNc                     t        |t              r|j                  }nt        j                  }t        t        j                  | j                  |j                  |       y N)
isinstancer   _zmq_socketr   NULLr   C	zmq_proxy)frontendbackendcaptures      R/var/www/html/saasai/venv/lib/python3.12/site-packages/zmq/backend/cffi/devices.pyproxyr      s>    '6"%%((AKK!5!5w7J7JGT    c                    t        |t              r|j                  }nt        j                  }t        |t              r|j                  }nt        j                  }t        t        j                  | j                  |j                  ||       y)a  proxy_steerable(frontend, backend, capture, control)

    Start a zeromq proxy with control flow.

    .. versionadded:: libzmq-4.1
    .. versionadded:: 18.0

    Parameters
    ----------
    frontend : Socket
        The Socket instance for the incoming traffic.
    backend : Socket
        The Socket instance for the outbound traffic.
    capture : Socket (optional)
        The Socket instance for capturing traffic.
    control : Socket (optional)
        The Socket instance for control flow.
    N)r	   r   r
   r   r   r   r   zmq_proxy_steerable)r   r   r   controls       r   proxy_steerabler      si    & '6"%%(('6"%%((	r   r   r   r   )NN)__doc___cffir   r   r   socketr   utilsr   r   r   __all__ r   r   <module>r      s/    
    "U#L %
&r   