ó
    Ö›‘h‡  ã            	       ó.  • S r SSKJrJrJrJrJrJrJrJ	r	J
r
Jr  SSKJrJrJr  \" S5      r\r\r\r\r\r\r\r\r\r\R2                  r\\\\\\\\\/	\l        \\l        \R8                  r\\\\\/\l        \\l        SrSr " S S\5      r S	 r!S
 r"g)z@
Windows implementation of local network interface enumeration.
é    )
ÚPOINTERÚ	StructureÚWinDLLÚbyrefÚc_intÚc_void_pÚcastÚcreate_string_bufferÚcreate_unicode_bufferÚ
wstring_at)ÚAF_INET6ÚSOCK_STREAMÚsocketÚws2_32i  Hi'  c                   ó$   • \ rS rSrS\4S\4/rSrg)ÚSOCKET_ADDRESSéM   Ú
lpSockaddrÚiSockaddrLength© N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r   r   Ú_fields_Ú__static_attributes__r   ó    ÚfC:\Users\psant\Downloads\Noiseback\school\venv\Lib\site-packages\twisted/internet/test/_win32ifaces.pyr   r   M   s   † Ø˜xÐ(Ð+<¸eÐ*DÐEƒHr   r   c                 ó,   ^ •  " U 4S jS[         5      nU$ )Nc                   ó.   >• \ rS rSrS\4S\ Y -  4/rSrg)Ú%make_SAL.<locals>.SOCKET_ADDRESS_LISTéR   ÚiAddressCountÚAddressr   N)r   r   r   r   r   r   r   r   )Úlns   €r   ÚSOCKET_ADDRESS_LISTr!   R   s   ø† Ø$ eÐ,¨y¸.É2Ñ:MÐ.NÐO‹r   r&   )r   )r%   r&   s   ` r   Úmake_SALr'   Q   s   ø€ ÷Pœiô Pð Ðr   c                  óX  • [        [        [        5      n Sn[        5       n[	        S5       Ha  n[        U5      n[        U R                  5       [        SSXA[        U5      SS5	      nU(       a  UR                  (       a  UR                  nMa    O   W(       a  [        S5      e[        W[        [        S5      5      5      nUS   R                  n[        U[        [        U5      5      5      nSn[!        U5      n	/ n
[	        US   R                  5       Hs  nX‚l
        US   R"                  U   n[%        UR&                  UR(                  SU	[        U5      5      nU(       a  [        S5      eU
R+                  [-        U	5      5        Mu     U
 Vs/ s H  nSU;   d  M  UPM     sn$ s  snf )z¬
Return a list of strings in colon-hex format representing all the link local
IPv6 addresses available on the system, as reported by
I{WSAIoctl}/C{SIO_ADDRESS_LIST_QUERY}.
i   é   r   zWSAIoctl failurei   zWSAAddressToString failureÚ%)r   r   r   r   Úranger
   ÚWSAIoctlÚfilenoÚSIO_ADDRESS_LIST_QUERYr   ÚvalueÚRuntimeErrorr	   r   r'   r#   r   r$   ÚWSAAddressToStringr   r   Úappendr   )ÚsÚsizeÚretBytesÚiÚbufÚretÚaddrListÚ	addrCountÚaddressStringBufLengthÚaddressStringBufÚretListÚaddressÚaddrs                r   Úwin32GetLinkLocalIPv6Addressesr@   X   ss  € ô 	ŒxœÓ%€AØ€DÜ‹w€HÜ�1ŽXˆÜ" 4Ó(ˆÜØ�H‰H‹JÔ.°°1°cÄÀxÃÐRSÐUVó
ˆö �8—>—>Ø—>‘>ŠDáñ ö  ÜÐ-Ó.Ð.ä�Cœ¤¨!£Ó-Ó.€HØ˜‘×)Ñ)€IÜ�Cœ¤¨)Ó!4Ó5Ó6€Hà!ÐÜ,Ð-CÓDÐà€GÜ�8˜A‘;×,Ñ,Ö-ˆØ/ŒØ˜1‘+×%Ñ% aÑ(ˆÜ Ø×ÑØ×#Ñ#ØØÜ�(‹Oó
ˆö ÜÐ;Ó<Ð<Ø�‰”zÐ"2Ó3Ö4ñ .ñ %Ó4šW�T¨¨t©�D™WÑ4Ð4ùÒ4s   Æ
F'ÆF'N)#Ú__doc__Úctypesr   r   r   r   r   r   r	   r
   r   r   r   r   r   ÚWS2_32ÚSOCKETÚDWORDÚLPVOIDÚ
LPSOCKADDRÚLPWSAPROTOCOL_INFOÚLPTSTRÚLPDWORDÚLPWSAOVERLAPPEDÚ"LPWSAOVERLAPPED_COMPLETION_ROUTINEr,   ÚargtypesÚrestypeÚWSAAddressToStringWr1   r.   Ú	WSAEFAULTr   r'   r@   r   r   r   Ú<module>rQ      så   ðñ÷÷ ÷ ÷ 1Ñ 0á	�Ó	€à	€Ø€Ø	€Ø€
ØÐ Ø	€Ø
€Ø€Ø%-Ð "ð �?‰?€à
Ø	Ø
Ø	Ø
Ø	ØØØ&ð
€Ô ð €Ô ð ×/Ñ/Ð Ø)¨5Ð2DÀfÈgÐVÐ Ô Ø"Ð Ô ð $Ð Ø€	ôF�Yô Fòó15r   