o
    �õ±j£  ã                   @   s   d dl mZmZmZmZmZ d dl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ZdZdZd	Zd
ZdZdZeZG dd„ deƒZG dd„ deƒZG dd„ de	ƒZd dl
m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 d0d1„ d1eƒZ-G d2d3„ d3eƒZ.G d4d5„ d5eƒZ/G d6d7„ d7eƒZ0G d8d9„ d9eƒZ1G d:d;„ d;eƒZ2d<S )=é    )ÚULONGÚRPC_UNICODE_STRINGÚFILETIMEÚPRPC_SIDÚUSHORT)Ú	NDRSTRUCTÚNDRUniConformantArrayÚ
NDRPOINTER)ÚUSER_SESSION_KEYÚCHAR_FIXED_8_ARRAYÚPUCHAR_ARRAYÚPRPC_UNICODE_STRING_ARRAY)ÚTypeSerialization1)Ú	Structureé   é   é   é   é
   é   é   c                   @   ó   e Zd ZdefdeffZdS )ÚKERB_SID_AND_ATTRIBUTESÚSidÚ
AttributesN)Ú__name__Ú
__module__Ú__qualname__ÚPISIDr   Ú	structure© r    r    ú•/root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/minikerberos/protocol/external/pac.pyr   +   ó    þr   c                   @   ó   e Zd ZeZdS )ÚKERB_SID_AND_ATTRIBUTES_ARRAYN)r   r   r   r   Úitemr    r    r    r!   r$   1   ó    r$   c                   @   ó   e Zd ZdeffZdS )ÚPKERB_SID_AND_ATTRIBUTES_ARRAYÚDataN©r   r   r   r$   Úreferentr    r    r    r!   r(   4   ó    ÿr(   )ÚPGROUP_MEMBERSHIP_ARRAYc                   @   ó"   e Zd ZdefdefdeffZdS )ÚDOMAIN_GROUP_MEMBERSHIPÚDomainIdÚ
GroupCountÚGroupIdsN)r   r   r   r   r   r-   r   r    r    r    r!   r/   =   ó
    ýr/   c                   @   r#   )ÚDOMAIN_GROUP_MEMBERSHIP_ARRAYN)r   r   r   r/   r%   r    r    r    r!   r4   D   r&   r4   c                   @   r'   )ÚPDOMAIN_GROUP_MEMBERSHIP_ARRAYr)   Nr*   r    r    r    r!   r5   G   r,   r5   c                   @   ó   e Zd ZdZdS )ÚPACTYPE))ÚcBuffersú<L=0©ÚVersionr9   )ÚBuffersú:N©r   r   r   r   r    r    r    r!   r7   M   r&   r7   c                   @   r6   )ÚPAC_INFO_BUFFER))ÚulTyper9   )ÚcbBufferSizer9   )ÚOffsetú<Q=0Nr>   r    r    r    r!   r?   U   r&   r?   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 )%ÚKERB_VALIDATION_INFOÚ	LogonTimeÚ
LogoffTimeÚKickOffTimeÚPasswordLastSetÚPasswordCanChangeÚPasswordMustChangeÚEffectiveNameÚFullNameÚLogonScriptÚProfilePathÚHomeDirectoryÚHomeDirectoryDriveÚ
LogonCountÚBadPasswordCountÚUserIdÚPrimaryGroupIdr1   r2   Ú	UserFlagsÚUserSessionKeyÚLogonServerÚLogonDomainNameÚLogonDomainIdÚLMKeyÚUserAccountControlÚSubAuthStatusÚLastSuccessfulILogonÚLastFailedILogonÚFailedILogonCountÚ	Reserved3ÚSidCountÚ	ExtraSidsÚResourceGroupDomainSidÚResourceGroupCountÚResourceGroupIdsN)r   r   r   r   r   r   r   r-   r
   r   r   r(   r   r   r    r    r    r!   rD   ]   s�    ÿþýüûúùø	÷
öõôóòñðïîíìëêéæäãâá à!ß#Ý%Û&Ú'Ù(
ØrD   c                   @   r'   )ÚPKERB_VALIDATION_INFOr)   N)r   r   r   rD   r+   r    r    r    r!   rf   ‰   r,   rf   c                   @   r6   )ÚPAC_CREDENTIAL_INFO)r:   )ÚEncryptionTyper9   )ÚSerializedDatar=   Nr>   r    r    r    r!   rg   �   r&   rg   c                   @   r.   )ÚSECPKG_SUPPLEMENTAL_CREDÚPackageNameÚCredentialSizeÚCredentialsN)r   r   r   r   r   r   r   r    r    r    r!   rj   —   r3   rj   c                   @   r#   )ÚSECPKG_SUPPLEMENTAL_CRED_ARRAYN)r   r   r   rj   r%   r    r    r    r!   rn   ž   r&   rn   c                   @   r   )ÚPAC_CREDENTIAL_DATAÚCredentialCountrm   N)r   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dfZdS )ÚNTLM_SUPPLEMENTAL_CREDENTIALr;   ÚFlags)Ú
LmPasswordú16s=b"")Ú
NtPasswordrt   N)r   r   r   r   r   r    r    r    r!   rq   ©   s    ürq   c                   @   r6   )ÚPAC_CLIENT_INFO))ÚClientIdrC   )Ú
NameLengthú<H=0)Ú_Namez_-Namezself["NameLength"])ÚNamer=   Nr>   r    r    r    r!   rv   ²   r&   rv   c                   @   r6   )ÚPAC_SIGNATURE_DATA))ÚSignatureTypez<l=0)Ú	Signaturer=   Nr>   r    r    r    r!   r|   »   r&   r|   c                   @   r.   )ÚS4U_DELEGATION_INFOÚS4U2proxyTargetÚTransitedListSizeÚS4UTransitedServicesN)r   r   r   r   r   r   r   r    r    r    r!   r   Â   r3   r   c                   @   r6   )ÚUPN_DNS_INFO))Ú	UpnLengthry   )Ú	UpnOffsetry   )ÚDnsDomainNameLengthry   )ÚDnsDomainNameOffsetry   )rr   r9   Nr>   r    r    r    r!   rƒ   Ê   r&   rƒ   c                   @   r6   )ÚPAC_CLIENT_CLAIMS_INFO©)ÚClaimsr=   Nr>   r    r    r    r!   rˆ   Ô   r&   rˆ   c                
   @   sF   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d	eff	Zd
S )ÚPAC_DEVICE_INFOrS   rT   ÚAccountDomainIdÚAccountGroupCountÚAccountGroupIdsra   rb   ÚDomainGroupCountÚDomainGroupN)	r   r   r   r   r   r-   r(   r5   r   r    r    r    r!   r‹   Ú   s    ÷r‹   c                   @   r6   )ÚPAC_DEVICE_CLAIMS_INFOr‰   Nr>   r    r    r    r!   r‘   è   r&   r‘   c                   @   r'   )ÚVALIDATION_INFOr)   N)r   r   r   rf   r   r    r    r    r!   r’   í   r,   r’   N)3Ú%minikerberos.protocol.external.dtypesr   r   r   r   r   Ú"minikerberos.protocol.external.ndrr   r   r	   Ú#minikerberos.protocol.external.nrpcr
   r   r   r   Ú$minikerberos.protocol.external.rpcrtr   Ú(minikerberos.protocol.external.structurer   ÚPAC_LOGON_INFOÚPAC_CREDENTIALS_INFOÚPAC_SERVER_CHECKSUMÚPAC_PRIVSVR_CHECKSUMÚPAC_CLIENT_INFO_TYPEÚPAC_DELEGATION_INFOÚPAC_UPN_DNS_INFOr   r   r$   r(   r-   r/   r4   r5   r7   r?   rD   rf   rg   rj   rn   ro   rq   rv   r|   r   rƒ   rˆ   r‹   r‘   r’   r    r    r    r!   Ú<module>   sJ   	,		
