
    h                         S SK r S SKrS SKrS SKJr  S SKJr  S SKJr  S\	S\\	\
4   4S jr\S:X  aJ  \" \	" \R                  S	   5      5      u  rr\ R                   " \S
\-   S-   5        \ R"                  " \5        gg)    N)unpack)Tuple)recvmsgsocketfdreturnc                     [         R                  " U [         R                  [         R                  5      n[	        U5      u  p#nUu  u  pVn[        SU5      u  nX4$ )aZ  
Receive a file descriptor from a L{sendmsg} message on the given C{AF_UNIX}
socket.

@param socketfd: An C{AF_UNIX} socket, attached to another process waiting
    to send sockets via the ancillary data mechanism in L{send1msg}.

@param fd: C{int}

@return: a 2-tuple of (new file descriptor, description).
@rtype: 2-tuple of (C{int}, C{bytes})
i)socketfromfdAF_UNIXSOCK_STREAMr   r   )	r   	ourSocketdata	ancillaryflags	cmsgLevelcmsgTypepackedFD
unpackedFDs	            c/root/1688_scrapy/alibaba-scraper/venv/lib/python3.13/site-packages/twisted/python/test/pullpipe.pyrecvfdr      sU     h8J8JKI$Y/DU(1%$i8 #x(LZ    __main__   s   Test fixture data: s   .
)osr
   sysstructr   typingr   twisted.python.sendmsgr   intbytesr   __name__argvfddescriptionwriteclose r   r   <module>r)      s   
 
  
   *S U3:. . zS!-.OBHHR'+5>?HHRL r   