o
    Žõ±jàˆ  ã                   @   sâ	  d dl mZmZmZmZmZmZmZ d dlm	Z	m
Z
mZmZmZmZmZmZmZmZ d dlmZ d dlmZ d dlmZ d dlmZ edƒZG dd	„ d	eƒZd
ZdZdZd Z dZ!dZ"dZ#dZ$dZ%dZ&d Z'dZ(dZ)dZ*d Z+dZ,dZ-dZ.dZ/dZ0dZ1dZ2dZ3d
Z4dZ5dZ6dZ7dZ0dZ8dZ/dZ9G dd„ deƒZ:G dd„ deƒZ;G dd„ deƒZ<G d d!„ d!eƒZ=G d"d#„ d#eƒZ>G d$d%„ d%eƒZ?G d&d'„ d'eƒZ@G d(d)„ d)eƒZAG d*d+„ d+eƒZBG d,d-„ d-eƒZCG d.d/„ d/eƒZDG d0d1„ d1eƒZEG d2d3„ d3eƒZFG d4d5„ d5eƒZGG d6d7„ d7eƒZHG d8d9„ d9eƒZIG d:d;„ d;eƒZJG d<d=„ d=eƒZKG d>d?„ d?eƒZLG d@dA„ dAeƒZMG dBdC„ dCeƒZNG dDdE„ dEeƒZOG dFdG„ dGeƒZPG dHdI„ dIeƒZQG dJdK„ dKeƒZRG dLdM„ dMeƒZSG dNdO„ dOeƒZTG dPdQ„ dQeƒZUG dRdS„ dSeƒZVG dTdU„ dUeƒZWG dVdW„ dWeƒZXG dXdY„ dYeƒZYG dZd[„ d[eƒZZG d\d]„ d]eƒZ[G d^d_„ d_eƒZ\G d`da„ daeƒZ]G dbdc„ dceƒZ^G ddde„ deeƒZ_G dfdg„ dgeƒZ`G dhdi„ dieƒZaG djdk„ dkeƒZbG dldm„ dmeƒZcG dndo„ doeƒZdG dpdq„ dqeƒZeG drds„ dseƒZfG dtdu„ dueƒZgG dvdw„ dweƒZhG dxdy„ dyeƒZiG dzd{„ d{eƒZje
ZkG d|d}„ d}eƒZlG d~d„ deƒZmG d€d�„ d�eƒZnG d‚dƒ„ dƒeƒZoG d„d…„ d…eƒZpG d†d‡„ d‡eƒZqG dˆd‰„ d‰eƒZrG dŠd‹„ d‹eƒZsG dŒd�„ d�eƒZtG dŽd�„ d�eƒZuG d�d‘„ d‘eƒZvG d’d“„ d“eƒZwG d”d•„ d•eƒZxG d–d—„ d—eƒZyG d˜d™„ d™eƒZzG dšd›„ d›eƒZ{G dœd�„ d�eƒZ|G dždŸ„ dŸeƒZ}G d d¡„ d¡eƒZ~G d¢d£„ d£eƒZG d¤d¥„ d¥eƒZ€G d¦d§„ d§eƒZ�G d¨d©„ d©eƒZ‚G dªd«„ d«eƒZƒG d¬d­„ d­eƒZ„G d®d¯„ d¯eƒZ…G d°d±„ d±eƒZ†G d²d³„ d³eƒZ‡G d´dµ„ dµeƒZˆG d¶d·„ d·eƒZ‰G d¸d¹„ d¹eƒZŠG dºd»„ d»eƒZ‹G d¼d½„ d½eƒZŒG d¾d¿„ d¿eƒZ�G dÀdÁ„ dÁeƒZŽG dÂdÃ„ dÃeƒZ�G dÄdÅ„ dÅeƒZ�G dÆdÇ„ dÇeƒZ‘G dÈdÉ„ dÉeƒZ’G dÊdË„ dËeƒZ“G dÌdÍ„ dÍeƒZ”G dÎdÏ„ dÏeƒZ•G dÐdÑ„ dÑeƒZ–G dÒdÓ„ dÓeƒZ—G dÔdÕ„ dÕeƒZ˜G dÖd×„ d×eƒZ™G dØdÙ„ dÙeƒZšG dÚdÛ„ dÛeƒZ›G dÜdÝ„ dÝeƒZœG dÞdß„ dßeƒZ�G dàdá„ dáeƒZžG dâdã„ dãeƒZŸG dädå„ dåeƒZ G dædç„ dçeƒZ¡G dèdé„ déeƒZ¢G dêdë„ dëeƒZ£G dìdí„ díeƒZ¤G dîdï„ dïeƒZ¥G dðdñ„ dñeƒZ¦G dòdó„ dóeƒZ§G dôdõ„ dõeƒZ¨G död÷„ d÷eƒZ©i d e‚eƒf“de„e…f“de†e‡f“deˆe‰f“døeŠe‹f“deŒe�f“dùeŽe�f“dúe�e‘f“dûe’e“f“düe”e•f“dýe–e—f“dþe˜e™f“dÿeše›f“�d eœe�f“�dežeŸf“�de e¡f“�de¢e£f“e¤e¥fe¦e§fe¨e©f�dœ¥Zª�d�d„ Z«�d�d„ Z¬�d.�d	�d
„Z­�d/�d�d„Z®�d�d„ Z¯�d�d„ Z°�d�d„ Z±�d�d„ Z²�d�d„ Z³�d�d„ Z´�d�d„ Zµ�d�d„ Z¶�d�d„ Z·�d�d „ Z¸�d!�d"„ Z¹�d#�d$„ Zº�d%�d&„ Z»�d/�d'�d(„Z¼�d)�d*„ Z½e-f�d+�d,„Z¾�d-S (0  é    )ÚNDRCALLÚ	NDRSTRUCTÚNDRENUMÚNDRUNIONÚNDRUniConformantArrayÚNDRUniFixedArrayÚ
NDRPOINTER)
ÚNULLÚWSTRÚULONGÚLPWSTRÚLONGÚLARGE_INTEGERÚWIDESTRÚRPC_UNICODE_STRINGÚLPULONGÚLPLONG)Úsystem_errors)Úuuidtup_to_bin)ÚEnum)ÚDCERPCException)z$6BFFD098-A112-3610-9833-46C3F87E345Az1.0c                   @   s   e Zd Zddd„Zdd„ ZdS )ÚDCERPCSessionErrorNc                 C   s   t  | |||¡ d S ©N)r   Ú__init__)ÚselfÚerror_stringÚ
error_codeÚpacket© r   úˆ/root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/aiosmb/dcerpc/v5/wkst.pyr   !   s   zDCERPCSessionError.__init__c                 C   sH   | j }tj |¡rtj| d }tj| d }d| j ||f S d| j  S )Nr   é   z'WKST SessionError: code: 0x%x - %s - %sz+WKST SessionError: unknown error code: 0x%x)r   r   ÚERROR_MESSAGESÚhas_key)r   ÚkeyÚerror_msg_shortÚerror_msg_verboser   r   r   Ú__str__$   s   
zDCERPCSessionError.__str__)NNN)Ú__name__Ú
__module__Ú__qualname__r   r&   r   r   r   r   r       s    
r   é   é   ì   ÿÿ r    é   é   é   é   é    é@   é€   i   i   i   i   i   c                   @   ó   e Zd ZdeffZdS )ÚWKSSVC_IDENTIFY_HANDLEÚDataN©r'   r(   r)   r
   Ú	structurer   r   r   r   r5   j   ó    ÿr5   c                   @   r4   )ÚLPWKSSVC_IDENTIFY_HANDLEr6   N)r'   r(   r)   r5   Úreferentr   r   r   r   r:   o   r9   r:   c                   @   r4   )ÚWKSSVC_IMPERSONATE_HANDLEr6   Nr7   r   r   r   r   r<   u   r9   r<   c                   @   r4   )ÚLPWKSSVC_IMPERSONATE_HANDLEr6   N)r'   r(   r)   r<   r;   r   r   r   r   r=   z   r9   r=   c                   @   ó   e Zd ZG dd„ deƒZdS )ÚNETSETUP_JOIN_STATUSc                   @   ó   e Zd ZdZdZdZdZdS )zNETSETUP_JOIN_STATUS.enumItemsr    r-   r.   r/   N)r'   r(   r)   ÚNetSetupUnknownStatusÚNetSetupUnjoinedÚNetSetupWorkgroupNameÚNetSetupDomainNamer   r   r   r   Ú	enumItems�   ó
    rE   N©r'   r(   r)   r   rE   r   r   r   r   r?   €   ó    r?   c                   @   r>   )ÚNETSETUP_NAME_TYPEc                   @   s$   e Zd ZdZdZdZdZdZdZdS )zNETSETUP_NAME_TYPE.enumItemsr   r    r-   r.   r/   r0   N)	r'   r(   r)   ÚNetSetupUnknownÚNetSetupMachineÚNetSetupWorkgroupÚNetSetupDomainÚNetSetupNonExistentDomainÚNetSetupDnsMachiner   r   r   r   rE   ‰   s    rE   NrG   r   r   r   r   rI   ˆ   rH   rI   c                   @   r>   )ÚNET_COMPUTER_NAME_TYPEc                   @   r@   )z NET_COMPUTER_NAME_TYPE.enumItemsr   r    r-   r.   N)r'   r(   r)   ÚNetPrimaryComputerNameÚNetAlternateComputerNamesÚNetAllComputerNamesÚNetComputerNameTypeMaxr   r   r   r   rE   “   rF   rE   NrG   r   r   r   r   rP   ’   rH   rP   c                   @   s.   e Zd ZdefdefdefdefdeffZdS )ÚWKSTA_INFO_100Úwki100_platform_idÚwki100_computernameÚwki100_langroupÚwki100_ver_majorÚwki100_ver_minorN©r'   r(   r)   r   r   r8   r   r   r   r   rU   š   ó    ûrU   c                   @   r4   )ÚLPWKSTA_INFO_100r6   N)r'   r(   r)   rU   r;   r   r   r   r   r]   £   r9   r]   c                   @   s4   e Zd ZdefdefdefdefdefdeffZdS )ÚWKSTA_INFO_101Úwki101_platform_idÚwki101_computernameÚwki101_langroupÚwki101_ver_majorÚwki101_ver_minorÚwki101_lanrootNr[   r   r   r   r   r^   ©   s    úr^   c                   @   r4   )ÚLPWKSTA_INFO_101r6   N)r'   r(   r)   r^   r;   r   r   r   r   re   ³   r9   re   c                   @   s:   e Zd ZdefdefdefdefdefdefdeffZdS )	ÚWKSTA_INFO_102Úwki102_platform_idÚwki102_computernameÚwki102_langroupÚwki102_ver_majorÚwki102_ver_minorÚwki102_lanrootÚwki102_logged_on_usersNr[   r   r   r   r   rf   ¹   ó    ùrf   c                   @   r4   )ÚLPWKSTA_INFO_102r6   N)r'   r(   r)   rf   r;   r   r   r   r   ro   Ä   r9   ro   c                   @   s*  e Zd Zg def‘def‘def‘def‘def‘def‘def‘def‘d	ef‘d
ef‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘d ef‘d!ef‘d"ef‘d#ef‘R Zd$S )%ÚWKSTA_INFO_502Úwki502_char_waitÚwki502_collection_timeÚwki502_maximum_collection_countÚwki502_keep_connÚwki502_max_cmdsÚwki502_sess_timeoutÚwki502_siz_char_bufÚwki502_max_threadsÚwki502_lock_quotaÚwki502_lock_incrementÚwki502_lock_maximumÚwki502_pipe_incrementÚwki502_pipe_maximumÚwki502_cache_file_timeoutÚwki502_dormant_file_limitÚwki502_read_ahead_throughputÚwki502_num_mailslot_buffersÚwki502_num_srv_announce_buffersÚ"wki502_max_illegal_datagram_eventsÚ-wki502_illegal_datagram_event_reset_frequencyÚwki502_log_election_packetsÚ wki502_use_opportunistic_lockingÚwki502_use_unlock_behindÚwki502_use_close_behindÚwki502_buf_named_pipesÚwki502_use_lock_read_unlockÚwki502_utilize_nt_cachingÚwki502_use_raw_readÚwki502_use_raw_writeÚwki502_use_write_raw_dataÚwki502_use_encryptionÚwki502_buf_files_deny_writeÚwki502_buf_read_only_filesÚwki502_force_core_create_modeÚ wki502_use_512_byte_max_transferN)r'   r(   r)   r   r   r8   r   r   r   r   rp   Ê   s�    ÿþýüûúùø	÷
öõôóòñðïîíìëêéèçæåäãâá à!ß"Þ#
Ýrp   c                   @   r4   )ÚLPWKSTA_INFO_502r6   N)r'   r(   r)   rp   r;   r   r   r   r   r”   ñ   r9   r”   c                   @   r4   )ÚWKSTA_INFO_1013Úwki1013_keep_connN©r'   r(   r)   r   r8   r   r   r   r   r•   ÷   r9   r•   c                   @   r4   )ÚLPWKSTA_INFO_1013r6   N)r'   r(   r)   r•   r;   r   r   r   r   r˜   ü   r9   r˜   c                   @   r4   )ÚWKSTA_INFO_1018Úwki1018_sess_timeoutNr—   r   r   r   r   r™     r9   r™   c                   @   r4   )ÚLPWKSTA_INFO_1018r6   N)r'   r(   r)   r™   r;   r   r   r   r   r›     r9   r›   c                   @   r4   )ÚWKSTA_INFO_1046Úwki1046_dormant_file_limitNr—   r   r   r   r   rœ     r9   rœ   c                   @   r4   )ÚLPWKSTA_INFO_1046r6   N)r'   r(   r)   rœ   r;   r   r   r   r   rž     r9   rž   c                   @   sF   e Zd ZdeffZdefdefdefdefde	fde
fdefd	œZd
S )Ú
WKSTA_INFOÚtagÚWkstaInfo100ÚWkstaInfo101ÚWkstaInfo102ÚWkstaInfo502ÚWkstaInfo1013ÚWkstaInfo1018ÚWkstaInfo1046)éd   ée   éf   iö  iõ  iú  i  N)r'   r(   r)   r   Ú	commonHdrr]   re   ro   r”   r˜   r›   rž   Úunionr   r   r   r   rŸ     s    ÿ
ùrŸ   c                   @   r4   )ÚLPWKSTA_INFOr6   N)r'   r(   r)   rŸ   r;   r   r   r   r   r­   &  r9   r­   c                   @   s.   e Zd ZdefdefdefdefdeffZdS )ÚWKSTA_TRANSPORT_INFO_0Úwkti0_quality_of_serviceÚwkti0_number_of_vcsÚwkti0_transport_nameÚwkti0_transport_addressÚwkti0_wan_ishNr[   r   r   r   r   r®   ,  r\   r®   c                   @   r4   )ÚWKSTA_USER_INFO_0Úwkui0_usernameN©r'   r(   r)   r   r8   r   r   r   r   r´   6  r9   r´   c                   @   s(   e Zd ZdefdefdefdeffZdS )ÚWKSTA_USER_INFO_1Úwkui1_usernameÚwkui1_logon_domainÚwkui1_oth_domainsÚwkui1_logon_serverNr¶   r   r   r   r   r·   <  ó    ür·   c                   @   sR  e Zd Zg def‘def‘def‘def‘def‘def‘def‘def‘d	ef‘d
ef‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘def‘d ef‘d!ef‘d"ef‘d#ef‘d$ef‘d%ef‘d&ef‘d'ef‘d(ef‘R Zd)S )*ÚSTAT_WORKSTATION_0ÚStatisticsStartTimeÚBytesReceivedÚSmbsReceivedÚPagingReadBytesRequestedÚNonPagingReadBytesRequestedÚCacheReadBytesRequestedÚNetworkReadBytesRequestedÚBytesTransmittedÚSmbsTransmittedÚPagingWriteBytesRequestedÚNonPagingWriteBytesRequestedÚCacheWriteBytesRequestedÚNetworkWriteBytesRequestedÚInitiallyFailedOperationsÚFailedCompletionOperationsÚReadOperationsÚRandomReadOperationsÚReadSmbsÚLargeReadSmbsÚSmallReadSmbsÚWriteOperationsÚRandomWriteOperationsÚ	WriteSmbsÚLargeWriteSmbsÚSmallWriteSmbsÚRawReadsDeniedÚRawWritesDeniedÚNetworkErrorsÚSessionsÚFailedSessionsÚ
ReconnectsÚCoreConnectsÚLanman20ConnectsÚLanman21ConnectsÚLanmanNtConnectsÚServerDisconnectsÚHungSessionsÚUseCountÚFailedUseCountÚCurrentCommandsN)r'   r(   r)   r   r   r8   r   r   r   r   r½   E  s¤    ÿþýüûúùø	÷
öõôóòñðïîíìëêéèçæåäãâá à!ß"Þ#Ý$Ü%Û&Ú'Ù(
Ør½   c                   @   r4   )ÚLPSTAT_WORKSTATION_0r6   N)r'   r(   r)   r½   r;   r   r   r   r   ræ   q  r9   ræ   c                   @   ó   e Zd ZeZdS )ÚWKSTA_USER_INFO_0_ARRAYN)r'   r(   r)   r´   Úitemr   r   r   r   rè   w  ó    rè   c                   @   r4   )ÚLPWKSTA_USER_INFO_0_ARRAYr6   N)r'   r(   r)   rè   r;   r   r   r   r   rë   z  r9   rë   c                   @   ó   e Zd ZdefdeffZdS )ÚWKSTA_USER_INFO_0_CONTAINERÚEntriesReadÚBufferN)r'   r(   r)   r   rë   r8   r   r   r   r   rí     ó    þrí   c                   @   r4   )ÚLPWKSTA_USER_INFO_0_CONTAINERr6   N)r'   r(   r)   rí   r;   r   r   r   r   rñ   …  r9   rñ   c                   @   rç   )ÚWKSTA_USER_INFO_1_ARRAYN)r'   r(   r)   r·   ré   r   r   r   r   rò   ‹  rê   rò   c                   @   r4   )ÚLPWKSTA_USER_INFO_1_ARRAYr6   N)r'   r(   r)   rò   r;   r   r   r   r   ró   Ž  r9   ró   c                   @   rì   )ÚWKSTA_USER_INFO_1_CONTAINERrî   rï   N)r'   r(   r)   r   ró   r8   r   r   r   r   rô   “  rð   rô   c                   @   r4   )ÚLPWKSTA_USER_INFO_1_CONTAINERr6   N)r'   r(   r)   rô   r;   r   r   r   r   rõ   ™  r9   rõ   c                   @   s(   e Zd ZdeffZdefdefdœZdS )ÚWKSTA_USER_ENUM_UNIONr    ÚLevel0ÚLevel1)r   r    N)r'   r(   r)   r   r«   rñ   rõ   r¬   r   r   r   r   rö   Ÿ  s    ÿ
þrö   c                   @   rì   )ÚWKSTA_USER_ENUM_STRUCTÚLevelÚWkstaUserInfoN)r'   r(   r)   r   rö   r8   r   r   r   r   rù   ©  rð   rù   c                   @   rç   )ÚWKSTA_TRANSPORT_INFO_0_ARRAYN)r'   r(   r)   r®   ré   r   r   r   r   rü   ±  rê   rü   c                   @   r4   )ÚLPWKSTA_TRANSPORT_INFO_0_ARRAYr6   N)r'   r(   r)   rü   r;   r   r   r   r   rý   ´  r9   rý   c                   @   rì   )Ú WKSTA_TRANSPORT_INFO_0_CONTAINERrî   rï   N)r'   r(   r)   r   rý   r8   r   r   r   r   rþ   ¹  rð   rþ   c                   @   r4   )Ú"LPWKSTA_TRANSPORT_INFO_0_CONTAINERr6   N)r'   r(   r)   rþ   r;   r   r   r   r   rÿ   ¿  r9   rÿ   c                   @   s"   e Zd ZdeffZddefiZdS )ÚWKSTA_TRANSPORT_ENUM_UNIONr    r   r÷   N)r'   r(   r)   r   r«   rÿ   r¬   r   r   r   r   r   Å  s
    ÿÿr   c                   @   rì   )ÚWKSTA_TRANSPORT_ENUM_STRUCTrú   ÚWkstaTransportInfoN)r'   r(   r)   r   r   r8   r   r   r   r   r  Î  rð   r  c                   @   ó   e Zd Zdd„ ZdS )ÚWCHAR_ARRAYc                 C   ó   t S r   )ÚJOIN_MAX_PASSWORD_LENGTH©r   Údatar   r   r   Ú
getDataLenÖ  ó   zWCHAR_ARRAY.getDataLenN©r'   r(   r)   r	  r   r   r   r   r  Õ  ó    r  c                   @   r  )Ú
CHAR_ARRAYc                 C   r  r   )ÚJOIN_OBFUSCATOR_LENGTHr  r   r   r   r	  Ú  r
  zCHAR_ARRAY.getDataLenNr  r   r   r   r   r  Ù  r  r  c                   @   rì   )ÚJOINPR_USER_PASSWORDÚ
Obfuscatorrï   N)r'   r(   r)   r  r  r8   r   r   r   r   r  Ý  rð   r  c                   @   s   e Zd ZdZdd„ ZdS )ÚJOINPR_ENCRYPTED_USER_PASSWORD))rï   z524s=""c                 C   s   dS )Nr    r   )r   r   r   r   ÚgetAlignmentè  r
  z+JOINPR_ENCRYPTED_USER_PASSWORD.getAlignmentN)r'   r(   r)   r8   r  r   r   r   r   r  ä  s    r  c                   @   r4   )ÚPJOINPR_ENCRYPTED_USER_PASSWORDr6   N)r'   r(   r)   r  r;   r   r   r   r   r  ë  r9   r  c                   @   r4   )ÚPUNICODE_STRINGr6   N)r'   r(   r)   ÚUNICODE_STRINGr;   r   r   r   r   r  ò  r9   r  c                   @   rç   )ÚUNICODE_STRING_ARRAYN)r'   r(   r)   r   ré   r   r   r   r   r  ø  rê   r  c                   @   r4   )ÚPUNICODE_STRING_ARRAYr6   N)r'   r(   r)   r  r;   r   r   r   r   r  û  r9   r  c                   @   rì   )ÚNET_COMPUTER_NAME_ARRAYrî   ÚComputerNamesN)r'   r(   r)   r   r  r8   r   r   r   r   r     rð   r  c                   @   r4   )ÚPNET_COMPUTER_NAME_ARRAYr6   N)r'   r(   r)   r  r;   r   r   r   r   r    r9   r  c                   @   s   e Zd ZdefdeffZdS )Ú
USE_INFO_0Ú	ui0_localÚ
ui0_remoteNr¶   r   r   r   r   r    rð   r  c                   @   r4   )ÚLPUSE_INFO_0r6   N)r'   r(   r)   r  r;   r   r   r   r   r    r9   r  c                   @   s:   e Zd ZdefdefdefdefdefdefdeffZdS )	Ú
USE_INFO_1Ú	ui1_localÚ
ui1_remoteÚui1_passwordÚ
ui1_statusÚui1_asg_typeÚui1_refcountÚui1_usecountN)r'   r(   r)   r   r   r8   r   r   r   r   r    rn   r  c                   @   r4   )ÚLPUSE_INFO_1r6   N)r'   r(   r)   r  r;   r   r   r   r   r'  #  r9   r'  c                   @   s"   e Zd ZdefdefdeffZdS )Ú
USE_INFO_2Úui2_useinfoÚui2_usernameÚui2_domainnameN)r'   r(   r)   r  r   r8   r   r   r   r   r(  )  ó
    ýr(  c                   @   r4   )ÚLPUSE_INFO_2r6   N)r'   r(   r)   r(  r;   r   r   r   r   r-  0  r9   r-  c                   @   rì   )Ú
USE_INFO_3Úui3_ui2Ú	ui3_flagsN)r'   r(   r)   r(  r   r8   r   r   r   r   r.  6  rð   r.  c                   @   r4   )ÚLPUSE_INFO_3r6   N)r'   r(   r)   r.  r;   r   r   r   r   r1  <  r9   r1  c                   @   s4   e Zd ZdeffZdefdefdefdefdœZ	dS )ÚUSE_INFOr    ÚUseInfo0ÚUseInfo1ÚUseInfo2ÚUseInfo3)r   r    r-   r.   N)
r'   r(   r)   r   r«   r  r'  r-  r1  r¬   r   r   r   r   r2  B  s    ÿ
ür2  c                   @   rì   )ÚUSE_INFO_0_CONTAINERrî   rï   N)r'   r(   r)   r   r  r8   r   r   r   r   r7  O  rð   r7  c                   @   r4   )ÚLPUSE_INFO_0_CONTAINERr6   N)r'   r(   r)   r7  r;   r   r   r   r   r8  U  r9   r8  c                   @   rì   )ÚUSE_INFO_1_CONTAINERrî   rï   N)r'   r(   r)   r   r'  r8   r   r   r   r   r9  [  rð   r9  c                   @   r4   )ÚLPUSE_INFO_1_CONTAINERr6   N)r'   r(   r)   r9  r;   r   r   r   r   r:  a  r9   r:  c                   @   rì   )ÚUSE_INFO_2_CONTAINERrî   rï   N)r'   r(   r)   r   r-  r8   r   r   r   r   r;  g  rð   r;  c                   @   r4   )ÚLPUSE_INFO_2_CONTAINERr6   N)r'   r(   r)   r;  r;   r   r   r   r   r<  m  r9   r<  c                   @   s.   e Zd ZdeffZdefdefdefdœZdS )ÚUSE_ENUM_UNIONr    r÷   rø   ÚLevel2)r   r    r-   N)	r'   r(   r)   r   r«   r8  r:  r<  r¬   r   r   r   r   r=  s  s    ÿ
ýr=  c                   @   rì   )ÚUSE_ENUM_STRUCTrú   ÚUseInfoN)r'   r(   r)   r   r=  r8   r   r   r   r   r?  ~  rð   r?  c                   @   ó    e Zd ZdZdefdeffZdS )ÚNetrWkstaGetInfor   Ú
ServerNamerú   N)r'   r(   r)   Úopnumr:   r   r8   r   r   r   r   rB  ‰  ó
    þrB  c                   @   rì   )ÚNetrWkstaGetInfoResponseÚ	WkstaInfoÚ	ErrorCodeN)r'   r(   r)   rŸ   r   r8   r   r   r   r   rF  �  rð   rF  c                   @   ó,   e Zd ZdZdefdefdefdeffZdS )ÚNetrWkstaSetInfor    rC  rú   rG  ÚErrorParameterN)	r'   r(   r)   rD  r:   r   rŸ   r   r8   r   r   r   r   rJ  —  ó    ürJ  c                   @   rì   )ÚNetrWkstaSetInfoResponserK  rH  N©r'   r(   r)   r   r   r8   r   r   r   r   rM     rð   rM  c                   @   rI  )ÚNetrWkstaUserEnumr-   rC  ÚUserInfoÚPreferredMaximumLengthÚResumeHandleN)	r'   r(   r)   rD  r:   rù   r   r   r8   r   r   r   r   rO  §  rL  rO  c                   @   ó(   e Zd ZdefdefdefdeffZdS )ÚNetrWkstaUserEnumResponserP  ÚTotalEntriesrR  rH  N)r'   r(   r)   rù   r   r8   r   r   r   r   rT  °  r¼   rT  c                   @   rI  )ÚNetrWkstaTransportEnumr0   rC  ÚTransportInforQ  rR  N)	r'   r(   r)   rD  r:   r  r   r   r8   r   r   r   r   rV  ¹  rL  rV  c                   @   rS  )ÚNetrWkstaTransportEnumResponserW  rU  rR  rH  N)r'   r(   r)   r  r   r8   r   r   r   r   rX  Â  r¼   rX  c                   @   rI  )ÚNetrWkstaTransportAddé   rC  rú   rW  rK  N)	r'   r(   r)   rD  r:   r   r®   r   r8   r   r   r   r   rY  Ë  rL  rY  c                   @   rì   )ÚNetrWkstaTransportAddResponserK  rH  NrN  r   r   r   r   r[  Ô  rð   r[  c                   @   rI  )Ú
NetrUseAddr+   rC  rú   Ú
InfoStructrK  N)	r'   r(   r)   rD  r=   r   r2  r   r8   r   r   r   r   r\  Û  rL  r\  c                   @   rì   )ÚNetrUseAddResponserK  rH  NrN  r   r   r   r   r^  ä  rð   r^  c                   @   ó&   e Zd ZdZdefdefdeffZdS )ÚNetrUseGetInfoé	   rC  ÚUseNamerú   N©r'   r(   r)   rD  r=   r
   r   r8   r   r   r   r   r`  ë  ó    ýr`  c                   @   rì   )ÚNetrUseGetInfoResponser]  rH  N)r'   r(   r)   r2  r   r8   r   r   r   r   re  ó  rð   re  c                   @   r_  )Ú
NetrUseDelé
   rC  rb  Ú
ForceLevelNrc  r   r   r   r   rf  ú  rd  rf  c                   @   r4   )ÚNetrUseDelResponserH  Nr—   r   r   r   r   ri    r9   ri  c                   @   rI  )ÚNetrUseEnumé   rC  r]  rQ  rR  N)	r'   r(   r)   rD  r=   r?  r   r   r8   r   r   r   r   rj    rL  rj  c                   @   s(   e Zd ZdefdefdefdeffZdS )ÚNetrUseEnumResponser]  rU  rR  rH  N)r'   r(   r)   r?  r   r   r8   r   r   r   r   rl    r¼   rl  c                   @   s,   e Zd ZdZdefdefdefdeffZdS )ÚNetrWorkstationStatisticsGeté   rC  ÚServiceNamerú   ÚOptionsN)r'   r(   r)   rD  r:   r   r   r8   r   r   r   r   rm    rL  rm  c                   @   rì   )Ú$NetrWorkstationStatisticsGetResponserï   rH  N)r'   r(   r)   ræ   r   r8   r   r   r   r   rq  #  rð   rq  c                   @   rA  )ÚNetrGetJoinInformationé   rC  Ú
NameBufferN)r'   r(   r)   rD  r=   r   r8   r   r   r   r   rr  *  rE  rr  c                   @   ó"   e Zd ZdefdefdeffZdS )ÚNetrGetJoinInformationResponsert  Ú
BufferTyperH  N)r'   r(   r)   r   r?   r   r8   r   r   r   r   rv  1  r,  rv  c                   @   s8   e Zd ZdZdefdefdefdefdefdeffZdS )	ÚNetrJoinDomain2é   rC  ÚDomainNameParamÚMachineAccountOUÚAccountNameÚPasswordrp  N©	r'   r(   r)   rD  r   r
   r  r   r8   r   r   r   r   rx  9  s    úrx  c                   @   r4   )ÚNetrJoinDomain2ResponserH  Nr—   r   r   r   r   r  D  r9   r  c                   @   s,   e Zd ZdZdefdefdefdeffZdS )ÚNetrUnjoinDomain2é   rC  r|  r}  rp  N©r'   r(   r)   rD  r   r  r   r8   r   r   r   r   r€  J  rL  r€  c                   @   r4   )ÚNetrUnjoinDomain2ResponserH  Nr—   r   r   r   r   rƒ  S  r9   rƒ  c                   @   ó2   e Zd ZdZdefdefdefdefdeffZdS )ÚNetrRenameMachineInDomain2é   rC  ÚMachineNamer|  r}  rp  Nr‚  r   r   r   r   r…  Y  ó    ûr…  c                   @   r4   )Ú"NetrRenameMachineInDomain2ResponserH  Nr—   r   r   r   r   r‰  c  r9   r‰  c                   @   ó2   e Zd ZdZdefdefdefdefdeffZdS )ÚNetrValidateName2é   rC  ÚNameToValidater|  r}  ÚNameTypeN)	r'   r(   r)   rD  r   r
   r  rI   r8   r   r   r   r   r‹  i  rˆ  r‹  c                   @   r4   )ÚNetrValidateName2ResponserH  Nr—   r   r   r   r   r�  s  r9   r�  c                   @   rŠ  )ÚNetrGetJoinableOUs2é   rC  rz  r|  r}  ÚOUCountNr~  r   r   r   r   r�  y  rˆ  r�  c                   @   ru  )ÚNetrGetJoinableOUs2Responser’  ÚOUsrH  N)r'   r(   r)   r   r  r   r8   r   r   r   r   r“  ƒ  r,  r“  c                   @   r„  )ÚNetrAddAlternateComputerNameé   rC  ÚAlternateNameÚDomainAccountÚEncryptedPasswordÚReservedNr‚  r   r   r   r   r•  ‹  rˆ  r•  c                   @   r4   )Ú$NetrAddAlternateComputerNameResponserH  Nr—   r   r   r   r   r›  •  r9   r›  c                   @   r„  )ÚNetrRemoveAlternateComputerNameé   rC  r—  r˜  r™  rš  Nr‚  r   r   r   r   rœ  ›  rˆ  rœ  c                   @   r4   )Ú'NetrRemoveAlternateComputerNameResponserH  Nr—   r   r   r   r   rž  ¥  r9   rž  c                   @   r„  )ÚNetrSetPrimaryComputerNameé   rC  ÚPrimaryNamer˜  r™  rš  Nr‚  r   r   r   r   rŸ  «  rˆ  rŸ  c                   @   r4   )Ú"NetrSetPrimaryComputerNameResponserH  Nr—   r   r   r   r   r¢  µ  r9   r¢  c                   @   r_  )ÚNetrEnumerateComputerNamesé   rC  rŽ  rš  N)r'   r(   r)   rD  r=   rP   r   r8   r   r   r   r   r£  »  rd  r£  c                   @   rì   )Ú"NetrEnumerateComputerNamesResponser  rH  N)r'   r(   r)   r  r   r8   r   r   r   r   r¥  Ã  rð   r¥  rZ  ra  rg  rk  rn  rs  ry  r�  r†  rŒ  r‘  r–  )r�  r   r¤  c                 C   s(   | t kr| S | dd … dkr| d S | S )Néÿÿÿÿú )r	   )Ústringr   r   r   ÚcheckNullStringç  s
   r©  c                 Ã   ó(   �t ƒ }d|d< ||d< |  |¡I d H S )Nú
          rC  rú   )rB  Úrequest)ÚdceÚlevelr¬  r   r   r   ÚhNetrWkstaGetInfoð  ó
   €r¯  c                 Ã   sD   �t ƒ }d|d< ||d d< ||d d d< ||d< |  |¡I d H S )Nr«  rC  rP  rú   rû   r    rQ  )rO  r¬  )r­  r®  ÚpreferredMaximumLengthr¬  r   r   r   ÚhNetrWkstaUserEnumö  s   €r²  c                 Ã   sL   �t ƒ }d|d< ||d d< ||d d d< ||d< ||d< |  |¡I d H S )	Nr«  rC  rW  rú   r  r    rR  rQ  )rV  r¬  ©r­  r®  ÚresumeHandler±  r¬  r   r   r   ÚhNetrWkstaTransportEnumþ  s   €rµ  c                 Ã   óD   �t ƒ }d|d< ||d< ||d d< ||d d| < |  |¡I d H S )Nr«  rC  rú   rG  r    zWkstaInfo%d)rJ  r¬  )r­  r®  ÚwkstInfor¬  r   r   r   ÚhNetrWkstaSetInfo  ó   €r¸  c                 Ã   s8   �t ƒ }d|d< ||d< ||d< ||d< |  |¡I d H S )Nr«  rC  ro  rú   rp  )rm  r¬  )r­  ÚserviceNamer®  Úoptionsr¬  r   r   r   ÚhNetrWorkstationStatisticsGet  s   €r¼  c                 Ã   rª  )Nr«  rC  rt  )rr  r¬  )r­  Ú
nameBufferr¬  r   r   r   ÚhNetrGetJoinInformation  r°  r¾  c                 Ã   sj   �t ƒ }d|d< t|ƒ|d< t|ƒ|d< t|ƒ|d< |tkr#t|d< n||d d< ||d< |  |¡I d H S )	Nr«  rC  rz  r{  r|  r}  rï   rp  )rx  r©  r	   r¬  )r­  ÚdomainNameParamÚmachineAccountOUÚaccountNameÚpasswordr»  r¬  r   r   r   ÚhNetrJoinDomain2  s   €
rÃ  c                 Ã   sR   �t ƒ }d|d< t|ƒ|d< |tkrt|d< n||d d< ||d< |  |¡I d H S )Nr«  rC  r|  r}  rï   rp  )r€  r©  r	   r¬  )r­  rÁ  rÂ  r»  r¬  r   r   r   ÚhNetrUnjoinDomain2*  s   €
rÄ  c                 Ã   ó^   �t ƒ }d|d< t|ƒ|d< t|ƒ|d< |tkrt|d< n||d d< ||d< |  |¡I d H S )Nr«  rC  r‡  r|  r}  rï   rp  )r…  r©  r	   r¬  )r­  ÚmachineNamerÁ  rÂ  r»  r¬  r   r   r   ÚhNetrRenameMachineInDomain25  ó   €
rÇ  c                 Ã   rÅ  )Nr«  rC  r�  r|  r}  rï   rŽ  )r‹  r©  r	   r¬  )r­  ÚnameToValidaterÁ  rÂ  ÚnameTyper¬  r   r   r   ÚhNetrValidateName2A  rÈ  rË  c                 Ã   rÅ  )Nr«  rC  rz  r|  r}  rï   r’  )r�  r©  r	   r¬  )r­  r¿  rÁ  rÂ  r’  r¬  r   r   r   ÚhNetrGetJoinableOUs2M  rÈ  rÌ  c                 Ã   óV   �t ƒ }d|d< t|ƒ|d< t|ƒ|d< |tkrt|d< n||d d< |  |¡I d H S ©Nr«  rC  r—  r˜  r™  rï   )r•  r©  r	   r¬  ©r­  ÚalternateNameÚdomainAccountÚencryptedPasswordr¬  r   r   r   ÚhNetrAddAlternateComputerNameY  ó   €
rÓ  c                 Ã   rÍ  rÎ  )rœ  r©  r	   r¬  rÏ  r   r   r   Ú hNetrRemoveAlternateComputerNamed  rÔ  rÕ  c                 Ã   rÍ  )Nr«  rC  r¡  r˜  r™  rï   )rŸ  r©  r	   r¬  )r­  ÚprimaryNamerÑ  rÒ  r¬  r   r   r   ÚhNetrSetPrimaryComputerNameo  rÔ  r×  c                 Ã   rª  )Nr«  rC  rŽ  )r£  r¬  )r­  rÊ  r¬  r   r   r   ÚhNetrEnumerateComputerNamesz  r°  rØ  c                 Ã   r¶  )Nr«  rC  rú   r]  r    z	UseInfo%d)r\  r¬  )r­  r®  Ú
infoStructr¬  r   r   r   ÚhNetrUseAdd€  r¹  rÚ  c                 Ã   sd   �t ƒ }d|d< ||d d< ||d d d< t|d d d|  d< ||d	< ||d
< |  |¡I d H S )Nr«  rC  r]  rú   r@  r    zLevel%drï   rQ  rR  )rj  r	   r¬  r³  r   r   r   ÚhNetrUseEnumˆ  s   €rÛ  c                 Ã   ó4   �t ƒ }d|d< t|ƒ|d< ||d< |  |¡I d H S )Nr«  rC  rb  rú   )r`  r©  r¬  )r­  ÚuseNamer®  r¬  r   r   r   ÚhNetrUseGetInfo’  ó   €rÞ  c                 Ã   rÜ  )Nr«  rC  rb  rh  )rf  r©  r¬  )r­  rÝ  Ú
forceLevelr¬  r   r   r   ÚhNetrUseDel™  rß  rá  N)r,   )r   r,   )¿Úaiosmb.dcerpc.v5.ndrr   r   r   r   r   r   r   Úaiosmb.dcerpc.v5.dtypesr	   r
   r   r   r   r   r   r   r   r   Úaiosmb.dcerpc.v5r   Úaiosmb.dcerpc.v5.uuidr   Úaiosmb.dcerpc.v5.enumr   Úaiosmb.dcerpc.v5.rpcrtr   ÚMSRPC_UUID_WKSTr   r  r  ÚMAX_PREFERRED_LENGTHÚUSE_OKÚ
USE_PAUSEDÚUSE_SESSLOSTÚ
USE_NETERRÚUSE_CONNÚ
USE_RECONNÚUSE_WILDCARDÚUSE_DISKDEVÚUSE_SPOOLDEVÚUSE_CHARDEVÚUSE_IPCÚUSE_NOFORCEÚ	USE_FORCEÚUSE_LOTS_OF_FORCEÚNETSETUP_JOIN_DOMAINÚNETSETUP_ACCT_CREATEÚNETSETUP_ACCT_DELETEÚNETSETUP_DOMAIN_JOIN_IF_JOINEDÚNETSETUP_JOIN_UNSECUREÚNETSETUP_MACHINE_PWD_PASSEDÚNETSETUP_DEFER_SPN_SETÚNETSETUP_JOIN_DC_ACCOUNTÚNETSETUP_JOIN_WITH_NEW_NAMEÚNETSETUP_INSTALL_INVOCATIONÚ!NETSETUP_IGNORE_UNSUPPORTED_FLAGSÚNETSETUP_DNS_NAME_CHANGES_ONLYr5   r:   r<   r=   r?   rI   rP   rU   r]   r^   re   rf   ro   rp   r”   r•   r˜   r™   r›   rœ   rž   rŸ   r­   r®   r´   r·   r½   ræ   rè   rë   rí   rñ   rò   ró   rô   rõ   rö   rù   rü   rý   rþ   rÿ   r   r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r'  r(  r-  r.  r1  r2  r7  r8  r9  r:  r;  r<  r=  r?  rB  rF  rJ  rM  rO  rT  rV  rX  rY  r[  r\  r^  r`  re  rf  ri  rj  rl  rm  rq  rr  rv  rx  r  r€  rƒ  r…  r‰  r‹  r�  r�  r“  r•  r›  rœ  rž  rŸ  r¢  r£  r¥  ÚOPNUMSr©  r¯  r²  rµ  r¸  r¼  r¾  rÃ  rÄ  rÇ  rË  rÌ  rÓ  rÕ  r×  rØ  rÚ  rÛ  rÞ  rá  r   r   r   r   Ú<module>   s¤  $0
	
'
	,
												





	ÿþýüûùø	÷
öõôóò
ñ
ð
ï
î
ë		
