HEX
Server: Apache
System: Linux scp1.abinfocom.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: confeduphaar (1010)
PHP: 8.1.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //usr/lib/python3/dist-packages/twisted/internet/test/__pycache__/_win32ifaces.cpython-38.pyc
U


W[+�	@s�dZddlmZmZmZddlmZmZmZmZm	Z	m
Z
mZmZm
Z
mZed�Ze	Ze	Ze
Ze
Ze
Ze
Ze
Ze
Ze
ZejZeeeeeeeeeg	e_e	e_ejZeeeeege_e	e_dZdZGdd�de�Z d	d
�Z!dd�Z"d
S)z@
Windows implementation of local network interface enumeration.
�)�socket�AF_INET6�SOCK_STREAM)
�WinDLL�byref�create_string_buffer�create_unicode_buffer�c_int�c_void_p�POINTER�	Structure�cast�
wstring_atZws2_32iHi'c@seZdZdefdefgZdS)�SOCKET_ADDRESS�
lpSockaddr�iSockaddrLengthN)�__name__�
__module__�__qualname__r
r	�_fields_�rr�D/usr/lib/python3/dist-packages/twisted/internet/test/_win32ifaces.pyr=s�rcsG�fdd�dt�}|S)Ncs eZdZdefde�fgZdS)z%make_SAL.<locals>.SOCKET_ADDRESS_LIST�
iAddressCount�AddressN)rrrr	rrr��lnrr�SOCKET_ADDRESS_LISTDs
�r)r)rrrrr�make_SALCsrcCsttt�}d}t�}td�D]B}t|�}t|��tdd||t	|�dd�	}|rZ|j
rZ|j
}qq`q|rltd��t|t
td���}|dj}t|t
t|���}d}t|�}	g}
t|dj�D]J}||_
|dj|}t|j|jd|	t	|��}|r�td��|
�t|	��q�dd�|
D�S)	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�rzWSAIoctl failureizWSAAddressToString failurecSsg|]}d|kr|�qS)�%r)�.0Zaddrrrr�
<listcomp>xsz2win32GetLinkLocalIPv6Addresses.<locals>.<listcomp>)rrrr	�ranger�WSAIoctl�fileno�SIO_ADDRESS_LIST_QUERYr�value�RuntimeErrorr
rrrrr�WSAAddressToStringrr�appendr)�s�sizeZretBytes�iZbufZretZaddrListZ	addrCountZaddressStringBufLengthZaddressStringBufZretListZaddressrrr�win32GetLinkLocalIPv6AddressesKsR
�

�r-N)#�__doc__rrrZctypesrrrrr	r
rrr
rZWS2_32ZSOCKETZDWORDZLPVOIDZ
LPSOCKADDRZLPWSAPROTOCOL_INFOZLPTSTRZLPDWORDZLPWSAOVERLAPPEDZ"LPWSAOVERLAPPED_COMPLETION_ROUTINEr#ZargtypesZrestypeZWSAAddressToStringWr(r%Z	WSAEFAULTrrr-rrrr�<module>sJ0�
�