
    ^h                     T    S r SSKJr  SSKJr  SSKJr  SSKJr  SS jr	SS jr
S	S
/rg)zzmq device functions   )ffi)lib)Socket)_retry_sys_callNc                     [        U[        5      (       a  UR                  nO[        R                  n[        [        R                  U R                  UR                  U5        g N)
isinstancer   _zmq_socketr   NULLr   C	zmq_proxy)frontendbackendcaptures      R/home/james-whalen/.local/lib/python3.13/site-packages/zmq/backend/cffi/devices.pyproxyr      sA    '6""%%((AKK!5!5w7J7JGT    c                 .   [        U[        5      (       a  UR                  nO[        R                  n[        U[        5      (       a  UR                  nO[        R                  n[        [        R                  U R                  UR                  UU5        g)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      so    & '6""%%(('6""%%((	r   r   r   r   )NN)__doc___cffir   r   r   socketr   utilsr   r   r   __all__ r   r   <module>r      s/    
    "U#L %
&r   