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 dd deZnG dd deZoG dd deZpG dd deZqG dd deZrG dd deZsG dd deZtG dd deZuG dd deZvG dd deZwG dd deZxG dd deZyG dd deZzG dd deZ{G dd deZ|G dd deZ}G dd deZ~G dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG ddÄ deZG ddń deZG ddǄ deZG ddɄ deZG dd˄ deZG dd̈́ deZG ddτ deZG ddф deZG ddӄ deZG ddՄ deZG ddׄ deZG ddل deZG ddۄ deZG dd݄ deZG dd߄ deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZi d eefdeefdeefdeefdeefdeefdeefdeefdeefdeefdeefdeefdeefd eefdeefdeefdeefeefeefeef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* Ze-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
	
'
	,
												





		





		
