o
    j                     @   s   d dl T 	 d dlZd dlZG dd dejZG dd dejZG dd dZe	d	Z
ee
Zeej eejd
  eejd
 Zee eejdd  eejdd  eejdd  e	dZ
ee
Zeej dS )    )*Nc                   @   s    e Zd ZdZdZdZdZdZdS )MSV1_0_CREDENTIAL_KEY_TYPEr               N)__name__
__module____qualname__InvalidCredKey
IUMCredKeyDomainUserCredKeyLocalUserCredKeyExternallySuppliedCredKey r   r   /root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/asyauth/protocols/credssp/messages/remcredguard.pyr      s    r   c                   @   s   e Zd ZdZdZdZdS )	NRSC_FLAGr   r      N)r   r	   r
   LMOWFNTOWFCREDKEY_PRESENTr   r   r   r   r      s    r   c                   @   sJ   e Zd Zdd Zdd ZedefddZedej	fd	d
Z
dd ZdS )#NTLM_REMOTE_SUPPLEMENTAL_CREDENTIALc                 C   s(   d | _ d | _d | _d | _d | _d | _d S N)VersionFlagsKeyTypeKeyreservedSize	reserved6)selfr   r   r   __init__$   s   
z,NTLM_REMOTE_SUPPLEMENTAL_CREDENTIAL.__init__c                 C   sr   | j jdddd}|| jjdddd7 }|| jjjdddd7 }|| j7 }|t| jjdddd7 }|| j7 }|S )Nr   littleF	byteordersigned)r   to_bytesr   r   valuer   lenr   )r   tr   r   r   r%   -   s   

z,NTLM_REMOTE_SUPPLEMENTAL_CREDENTIAL.to_bytesbbuffc                 C   s   t t| S r   )r   from_bufferioBytesIO)r)   r   r   r   
from_bytes7   s   z.NTLM_REMOTE_SUPPLEMENTAL_CREDENTIAL.from_bytesbuffc                 C   s   t  }tj| dddd|_ttj| dddd|_| d|_ttj| dddd|_	tj| dddd|_
| |j
|_|S )Nr   r!   Fr"      )r   intr-   readr   r   r   r   r   r   r   r   )r.   msgr   r   r   r*   ;   s   z/NTLM_REMOTE_SUPPLEMENTAL_CREDENTIAL.from_bufferc                 C   sl   d}| j D ].}t| j | tjr| j | }nt| j | tjr&| j | j}n| j | }|d||f 7 }q|S )Nz/==== NTLM_REMOTE_SUPPLEMENTAL_CREDENTIAL ====
z%s: %s
)__dict__
isinstanceenumIntFlagEnumname)r   r(   kr&   r   r   r   __repr__F   s   

z,NTLM_REMOTE_SUPPLEMENTAL_CREDENTIAL.__repr__N)r   r	   r
   r    r%   staticmethodbytesr-   r+   r,   r*   r:   r   r   r   r   r   #   s    	

r     3081dea00a04084e0054004c004d00a181cf0481cc0200ffff08000000d389fe0bc98d23bfef683a874e048c59000000000200000054000000ca7a124b7c282f0c714e025b3f5486310100000000000000000000000000000047e7674810c28f0cdb956d0aa1f4cac4005fb744b102871e16b207d789b3da815b9fac95ba79da02c2ba0e134472979f4b592621000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
credBuffer         30820157a003020104a382014e0482014a050407ff0000001c00000000681ec3f55cbce0b2ef037dbe8afa8f7a6dbc5e7439ff675453fbcdb7cfd0c5b4af942453acf92677f21be4dc829c9e553280c5f37c08c5db5453330328d2fb8e65dd3f1a4f934d6888645365fee5e65888219f6dcaf5020ecea4a91595c1c95b1e3229d1b389c2ee23876e1c89a2fa3b06610201fce4a2427c8a95d52234c2343fbaaeeedecd636a0dc8b3fad75b3be9736ab488183e0bdc793dcce61fc019811970c1d56a02fcd7827ea64f60e163adf01b47ae1641d48ac719ba77c78ec5818d6a09c41c38da69b359a63a602319ab735243acf6c18d40307290d622bf6546a4650494b481228fcaaa62393e29fd10e6d31646eed50fa658eb0d8454ccf88dc4bf859cd98feed69d17fafce30bd03a6e0ccdccd55ba7cc146b60648308cabd2ee989e711675e4150da79ea9070df22223d2df1e41ed687a6575a2ecbce)/asyauth.protocols.credssp.messages.asn1_structsr5   r+   r7   r   r6   r   r   r<   fromhexdataTSRemoteGuardPackageCredloadxprintnativer-   credbuffr   	TSRequestr   r   r   r   <module>   s&   
2



