o
    jU                     @   sP  d dl mZ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 d dlmZ d dlmZ d dlmZmZ d dlmZ d dlmZ edZG d	d
 d
eZdZeZdZee d 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Z8dZ9dZ:d Z;d Z<d Z=d Z>dZ?dZ@dZAdZBdZCdZDdZEd ZFdZGdZHdZIdZJdZKdZLdZMdZNdZOdZPdZQdZRdZSdZTd ZUd!ZVd"ZWd#ZXdZYdZZdZ[dZ\dZ]eZ^dZ_dZ`dZadZbdZcdZddZed$Zfd%ZgdZhdZidZjdZkdZld&ZmG d'd( d(eZnG d)d* d*eZoG d+d, d,eZpG d-d. d.eZqG d/d0 d0eZrG d1d2 d2eZsG d3d4 d4eZtG d5d6 d6eZuG d7d8 d8eZvG d9d: d:eZwG d;d< d<eZxG d=d> d>eZyG d?d@ d@eZzG dAdB dBeZ{G dCdD dDeZ|G dEdF dFeZ@G dGdH dHeZAG dIdJ dJeZBG dKdL dLeZ}G dMdN dNe
Z~G dOdP dPe
ZG dQdR dRe
ZG dSdT dTe
ZG dUdV dVe
ZG dWdX dXe
ZG dYdZ dZe
ZG d[d\ d\e
ZG d]d^ d^e
ZG d_d` d`e
ZG dadb dbe
ZG dcdd dde
ZG dedf dfe
ZG dgdh dhe
ZG didj dje
ZG dkdl dle
ZG dmdn dne
ZG dodp dpe
ZG dqdr dre
ZG dsdt dte
ZG dudv dve
ZG dwdx dxe
ZG dydz dze
ZG d{d| d|e
ZG d}d~ d~e
ZG dd 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 e~efdeefdeefdeefdeefdeefdeefdeefdeefd eefd!eefd"eefd#eefdeefdeefdeefdeefeefeefeefdZdd Zdd ZdddZdddZefddZdd ZdddZehd dfddZehd dfddZehfddZdd ZdddZdddZdd d efddZdddZdddZeed d!fddĄZddƄ ZdddȄZddʄ Zddd̈́ZdS )    )DWORDLPWSTRULONGWSTRNULLGUIDPSYSTEMTIME
SYSTEMTIME)NDRCALL	NDRSTRUCT
NDRPOINTERNDRUniConformantArray)DCERPCException)uuidtup_to_bin)system_errorshresult_errors)SMBException)	Structure)z$86D35949-83C9-4044-B424-DB363231FD0Cz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/tsch.pyr   )   s   zDCERPCSessionError.__init__c                 C   s   | j }|tjv rtj| d }tj| d }d| j ||f S |d@ tjv r?tj|d@  d }tj|d@  d }d| j ||f S d| j  S )Nr      z'TSCH SessionError: code: 0x%x - %s - %si  z+TSCH SessionError: unknown error code: 0x%x)r   r   ERROR_MESSAGESr   )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             i  i       	   
         i    i   @i   c                   @      e Zd ZeZdS )TASK_NAMES_ARRAYN)r#   r$   r%   
TASK_NAMESitemr   r   r   r   r8          r8   c                   @      e Zd ZdeffZdS )PTASK_NAMES_ARRAYDataN)r#   r$   r%   r8   referentr   r   r   r   r=          r=   c                   @   r7   )
WSTR_ARRAYN)r#   r$   r%   r   r:   r   r   r   r   rA      r;   rA   c                   @   r<   )PWSTR_ARRAYr>   N)r#   r$   r%   rA   r?   r   r   r   r   rB      r@   rB   c                   @   r7   )
GUID_ARRAYN)r#   r$   r%   r   r:   r   r   r   r   rC      r;   rC   c                   @   r<   )PGUID_ARRAYr>   N)r#   r$   r%   rC   r?   r   r   r   r   rD      r@   rD   c                   @   r7   )SYSTEMTIME_ARRAYN)r#   r$   r%   r	   r:   r   r   r   r   rE      r;   rE   c                   @   r<   )PSYSTEMTIME_ARRAYr>   N)r#   r$   r%   rE   r?   r   r   r   r   rF      r@   rF   c                   @   "   e Zd ZdefdefdeffZdS )TASK_USER_CREDuserIdpasswordflagsN)r#   r$   r%   r   r   	structurer   r   r   r   rH      
    rH   c                   @   r7   )TASK_USER_CRED_ARRAYN)r#   r$   r%   rH   r:   r   r   r   r   rN      r;   rN   c                   @   r<   )LPTASK_USER_CRED_ARRAYr>   N)r#   r$   r%   rN   r?   r   r   r   r   rO      r@   rO   c                   @   s(   e Zd ZdefdefdefdeffZdS )TASK_XML_ERROR_INFOlinecolumnnodevalueN)r#   r$   r%   r   r   rL   r   r   r   r   rP          rP   c                   @   r<   )PTASK_XML_ERROR_INFOr>   N)r#   r$   r%   rP   r?   r   r   r   r   rV      r@   rV   c                   @      e Zd ZdZdS )FIXDLEN_DATA))zProduct Version<H=0)zFile VersionrY   )zJob uuidz16s=")zApp Name Len OffsetrY   )zTrigger OffsetrY   )zError Retry CountrY   )zError Retry IntervalrY   )zIdle DeadlinerY   )z	Idle WaitrY   )Priority<L=0)zMaximum Run Timer[   )z	Exit Coder[   )Statusr[   Flagsr[   Nr#   r$   r%   rL   r   r   r   r   rX      r;   rX   c                   @   rW   )TRIGGERS))zTrigger SizerY   )	Reserved1rY   )z
Begin YearrY   )zBegin MonthrY   )z	Begin DayrY   )zEnd YearrY   )z	End MonthrY   )zEnd DayrY   )z
Start HourrY   )zStart MinuterY   )zMinutes Durationr[   )zMinutes Intervalr[   r]   zTrigger Typer[   )TriggerSpecific0rY   )TriggerSpecific1rY   )TriggerSpecific2rY   PaddingrY   	Reserved2rY   	Reserved3rY   Nr_   r   r   r   r   r`     r;   r`   c                   @   rW   )WEEKLY)rb   )zWeeks IntervalrY   DaysOfTheWeekrY   )UnusedrY   rf   Nr_   r   r   r   r   rl     r;   rl   c                   @   rW   )MONTHLYDATE)rb   )Daysr[   MonthsrY   rf   Nr_   r   r   r   r   rp   '  r;   rp   c                   @   rW   )
MONTHLYDOW)rb   )	WhichWeekrY   rm   rr   rf   rh   rj   Nr_   r   r   r   r   rt   0  r;   rt   c                   @   rW   )JOB_SIGNATURE))SignatureVersionz<HH0)MinClientVersionrY   )	Signaturez64s="Nr_   r   r   r   r   rv   <  r;   rv   c                   @   s   e Zd ZdZdZdS )SchRpcHighestVersionr   r   N)r#   r$   r%   opnumrL   r   r   r   r   rz   G  s    rz   c                   @      e Zd ZdefdeffZdS )SchRpcHighestVersionResponsepVersion	ErrorCodeNr#   r$   r%   r   r   rL   r   r   r   r   r}   L      r}   c                   @   s>   e Zd 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 )
SchRpcRegisterTaskr   pathxmlrK   sddl	logonTypecCredspCredsN)	r#   r$   r%   r{   r   r   r   rO   rL   r   r   r   r   r   S  s    r   c                   @   "   e Zd ZdefdefdeffZdS )SchRpcRegisterTaskResponsepActualPath
pErrorInfor   N)r#   r$   r%   r   rV   r   rL   r   r   r   r   r   _  rM   r   c                   @   &   e Zd ZdZdefdefdeffZdS )SchRpcRetrieveTaskr(   r   lpcwszLanguagesBufferpulNumLanguagesNr#   r$   r%   r{   r   r   rL   r   r   r   r   r   g      r   c                   @   r|   )SchRpcRetrieveTaskResponsepXmlr   Nr#   r$   r%   r   r   rL   r   r   r   r   r   o  r   r   c                   @   s&   e Zd ZdZdefdefdeffZdS )SchRpcCreateFolderr.   r   r   rK   N)r#   r$   r%   r{   r   r   r   rL   r   r   r   r   r   v  r   r   c                   @   r<   )SchRpcCreateFolderResponser   Nr#   r$   r%   r   rL   r   r   r   r   r   ~  r@   r   c                   @   r   )SchRpcSetSecurityr)   r   r   rK   Nr   r   r   r   r   r     r   r   c                   @   r<   )SchRpcSetSecurityResponser   Nr   r   r   r   r   r     r@   r   c                   @       e Zd ZdZdefdeffZdS )SchRpcGetSecurityr/   r   securityInformationNr   r   r   r   r   r     
    r   c                   @   r|   )SchRpcGetSecurityResponser   r   Nr   r   r   r   r   r     r   r   c                   @   ,   e Zd ZdZdefdefdefdeffZdS )SchRpcEnumFoldersr0   r   rK   
startIndex
cRequestedNr   r   r   r   r   r         r   c                   @   (   e Zd ZdefdefdefdeffZdS )SchRpcEnumFoldersResponser   pcNamespNamesr   Nr#   r$   r%   r   r=   r   rL   r   r   r   r   r     rU   r   c                   @   r   )SchRpcEnumTasksr1   r   rK   r   r   Nr   r   r   r   r   r     r   r   c                   @   r   )SchRpcEnumTasksResponser   r   r   r   Nr   r   r   r   r   r     rU   r   c                   @   r   )SchRpcEnumInstancesr2   r   rK   Nr#   r$   r%   r{   r   r   rL   r   r   r   r   r     r   r   c                   @   r   )SchRpcEnumInstancesResponsepcGuidspGuidsr   N)r#   r$   r%   r   rD   r   rL   r   r   r   r   r     rM   r   c                   @      e Zd ZdZdeffZdS )SchRpcGetInstanceInfor3   guidN)r#   r$   r%   r{   r   rL   r   r   r   r   r         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deffZd	S )
SchRpcGetInstanceInfoResponsepPathpStatepCurrentActionpInfopcGroupInstancespGroupInstances
pEnginePIDr   N)r#   r$   r%   r   r   rD   r   rL   r   r   r   r   r     s    r   c                   @   r   )SchRpcStopInstancer4   r   rK   N)r#   r$   r%   r{   r   r   rL   r   r   r   r   r     r   r   c                   @   r<   )SchRpcStopInstanceResponser   Nr   r   r   r   r   r     r@   r   c                   @   r   )
SchRpcStopr5   r   rK   Nr   r   r   r   r   r     r   r   c                   @   r<   )SchRpcStopResponser   Nr   r   r   r   r   r     r@   r   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 )		SchRpcRunr6   r   cArgspArgsrK   	sessionIduserN)	r#   r$   r%   r{   r   r   rB   r   rL   r   r   r   r   r      s    r   c                   @   r|   )SchRpcRunResponsepGuidr   N)r#   r$   r%   r   r   rL   r   r   r   r   r     r   r   c                   @   r   )SchRpcDelete   r   rK   Nr   r   r   r   r   r     r   r   c                   @   r<   )SchRpcDeleteResponser   Nr   r   r   r   r   r     r@   r   c                   @   r   )SchRpcRename   r   newNamerK   Nr   r   r   r   r   r     r   r   c                   @   r<   )SchRpcRenameResponser   Nr   r   r   r   r   r   '  r@   r   c                   @   s2   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 )SchRpcScheduledRuntimesr&   r   startendrK   r   N)r#   r$   r%   r{   r   r   r   rL   r   r   r   r   r   -  s    r   c                   @   r   )SchRpcScheduledRuntimesResponse
pcRuntimes	pRuntimesr   N)r#   r$   r%   r   rF   r   rL   r   r   r   r   r   7  rM   r   c                   @   r   )SchRpcGetLastRunInfor*   r   Nr#   r$   r%   r{   r   rL   r   r   r   r   r   ?  r   r   c                   @   r   )SchRpcGetLastRunInfoResponsepLastRuntimepLastReturnCoder   N)r#   r$   r%   r	   r   r   rL   r   r   r   r   r   E  rM   r   c                   @   r   )SchRpcGetTaskInfo   r   rK   Nr   r   r   r   r   r   M  r   r   c                   @   rG   )SchRpcGetTaskInfoResponsepEnabledr   r   Nr   r   r   r   r   r   T  rM   r   c                   @   r   )SchRpcGetNumberOfMissedRuns   r   Nr   r   r   r   r   r   \  r   r   c                   @   r|   )#SchRpcGetNumberOfMissedRunsResponsepNumberOfMissedRunsr   Nr   r   r   r   r   r   b  r   r   c                   @   r   )SchRpcEnableTask   r   enabledNr   r   r   r   r   r   i  r   r   c                   @   r<   )SchRpcEnableTaskResponser   Nr   r   r   r   r   r   p  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                    s   |  t I d H S r   )requestrz   )dcer   r   r   hSchRpcHighestVersion  s   r   r   c           	         s   t  }t||d< t||d< ||d< ||d< ||d< t||d< t|dkr-t|d< n|D ]	}|d | q/| |I d H S )	Nr   r   rK   r   r   r   r   r   )r   r   lenr   appendr   )	r   r   r   rK   r   r   r   r   credr   r   r   hSchRpcRegisterTask  s   
r   r   c                    s4   t  }t||d< ||d< ||d< | |I d H S )Nr   r   r   )r   r   r   )r   r   r   r   schRpcRetrieveTaskr   r   r   hSchRpcRetrieveTask     r   c                    s4   t  }t||d< ||d< d|d< | |I d H S )Nr   r   r   rK   )r   r   r   )r   r   r   schRpcCreateFolderr   r   r   hSchRpcCreateFolder  r   r   c                    8   t  }t||d< t||d< ||d< | |I d H S )Nr   r   rK   )r   r   r   )r   r   r   rK   schRpcSetSecurityr   r   r   hSchRpcSetSecurity     r       c                    ,   t  }t||d< ||d< | |I d H S )Nr   r   )r   r   r   )r   r   r   schRpcGetSecurityr   r   r   hSchRpcGetSecurity  
   r   c                    <   t  }t||d< ||d< ||d< ||d< | |I d H S Nr   rK   r   r   )r   r   r   )r   r   rK   r   r   schRpcEnumFoldersr   r   r   hSchRpcEnumFolders     r  c                    r   r   )r   r   r   )r   r   rK   r   r   schRpcEnumTasksr   r   r   hSchRpcEnumTasks  r  r  c                    r   Nr   rK   )r   r   r   )r   r   rK   schRpcEnumInstancesr   r   r   hSchRpcEnumInstances  r   r  c                    s    t  }||d< | |I d H S )Nr   )r   r   )r   r   schRpcGetInstanceInfor   r   r   hSchRpcGetInstanceInfo  s   r
  c                    (   t  }||d< ||d< | |I d H S )Nr   rK   )r   r   )r   r   rK   schRpcStopInstancer   r   r   hSchRpcStopInstance  
   r  c                    r  r  )r   r   )r   r   rK   
schRpcStopr   r   r   hSchRpcStop  r  r  c           	         sr   t  }t||d< t||d< |D ]}t }t||d< |d | q||d< ||d< ||d< | |I d H S )Nr   r   r>   r   rK   r   r   )r   r   r   r   r   r   )	r   r   r   rK   r   r   	schRpcRunargargnr   r   r   
hSchRpcRun  s   r  c                    r   r  )r   r   r   )r   r   rK   schRpcDeleter   r   r   hSchRpcDelete  r   r  c                    r   )Nr   r   rK   )r   r   r   )r   r   r   rK   schRpcRenamer   r   r   hSchRpcRename  r   r  c                    sD   t  }t||d< ||d< ||d< ||d< ||d< | |I d H S )Nr   r   r   rK   r   )r   r   r   )r   r   r   r   rK   r   schRpcScheduledRuntimesr   r   r   hSchRpcScheduledRuntimes	  s   r  c                    $   t  }t||d< | |I d H S Nr   )r   r   r   )r   r   schRpcGetLastRunInfor   r   r   hSchRpcGetLastRunInfo     r  c                    r   r  )r   r   r   )r   r   rK   schRpcGetTaskInfor   r   r   hSchRpcGetTaskInfo  r   r!  c                    r  r  )r   r   r   )r   r   schRpcGetNumberOfMissedRunsr   r   r   hSchRpcGetNumberOfMissedRuns  r  r#  Tc                    s>   t  }t||d< |du rd|d< nd|d< | |I d H S )Nr   Tr   r   r   )r   r   r   )r   r   r   schRpcEnableTaskr   r   r   hSchRpcEnableTask"  s   
r%  N)r   )r   r   )r   )r   )T)aiosmb.dcerpc.v5.dtypesr   r   r   r   r   r   r   r	   aiosmb.dcerpc.v5.ndrr
   r   r   r   aiosmb.dcerpc.v5.rpcrtr   aiosmb.dcerpc.v5.uuidr   aiosmb.dcerpc.v5r   r   aiosmb.commons.exceptionsr   aiosmb.dcerpc.v5.structurer   MSRPC_UUID_TSCHSr   CNLENDNLENUNLENMAX_BUFFER_SIZETASK_FLAG_INTERACTIVETASK_FLAG_DELETE_WHEN_DONETASK_FLAG_DISABLEDTASK_FLAG_START_ONLY_IF_IDLETASK_FLAG_KILL_ON_IDLE_END$TASK_FLAG_DONT_START_IF_ON_BATTERIES$TASK_FLAG_KILL_IF_GOING_ON_BATTERIESTASK_FLAG_RUN_ONLY_IF_DOCKEDTASK_FLAG_HIDDEN&TASK_FLAG_RUN_IF_CONNECTED_TO_INTERNET TASK_FLAG_RESTART_ON_IDLE_RESUMETASK_FLAG_SYSTEM_REQUIREDTASK_FLAG_RUN_ONLY_IF_LOGGED_ONTASK_LOGON_NONETASK_LOGON_PASSWORDTASK_LOGON_S4UTASK_LOGON_INTERACTIVE_TOKENTASK_LOGON_GROUPTASK_LOGON_SERVICE_ACCOUNT(TASK_LOGON_INTERACTIVE_TOKEN_OR_PASSWORDTASK_STATE_UNKNOWNTASK_STATE_DISABLEDTASK_STATE_QUEUEDTASK_STATE_READYTASK_STATE_RUNNINGSCHED_S_TASK_READYSCHED_S_TASK_RUNNINGSCHED_S_TASK_NOT_SCHEDULEDTASK_TRIGGER_FLAG_HAS_END_DATE&TASK_TRIGGER_FLAG_KILL_AT_DURATION_ENDTASK_TRIGGER_FLAG_DISABLEDONCEDAILYrl   rp   rt   EVENT_ON_IDLEEVENT_AT_SYSTEMSTARTEVENT_AT_LOGONSUNDAYMONDAYTUESDAY	WEDNESDAYTHURSDAYFRIDAYSATURDAYJANUARYFEBRUARYMARCHAPRILMAYJUNEJULYAUGUST	SEPTEMBEROCTOBERNOVEMBERDECEMBER
FIRST_WEEKSECOND_WEEK
THIRD_WEEKFOURTH_WEEK	LAST_WEEKr9   TASK_VALIDATE_ONLYTASK_CREATETASK_UPDATETASK_DISABLETASK_DON_ADD_PRINCIPAL_ACE!TASK_IGNORE_REGISTRATION_TRIGGERSTASK_DONT_ADD_PRINCIPAL_ACESCH_FLAG_FOLDERSCH_FLAG_TASKTASK_ENUM_HIDDENTASK_RUN_AS_SELFTASK_RUN_IGNORE_CONSTRAINTSTASK_RUN_USE_SESSION_IDTASK_RUN_USER_SIDSCH_FLAG_STATEr8   r=   rA   rB   rC   rD   rE   rF   rH   rN   rO   rP   rV   rX   r`   rv   rz   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   OPNUMSr   r   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  (

					
	
	






	
