U
    ڲg3i                     @   s  d dl 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jZ	G d	d
 d
ej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jZG dd dejZG dd dejZG dd dejZG dd dejZG dd de	ZG dd  d ejZG d!d" d"ejZG d#d$ d$e	ZG d%d& d&ejZG d'd( d(ejZG d)d* d*ejZG d+d, d,ejZG d-d. d.ejZG d/d0 d0ejZ G d1d2 d2ejZ!G d3d4 d4ejZ"G d5d6 d6ejZ#G d7d8 d8ejZ$G d9d: d:ejZ%G d;d< d<ejZ&G d=d> d>ej'Z(G d?d@ d@ejZ)G dAdB dBejZ*G dCdD dDejZ+G dEdF dFe*Z,G dGdH dHejZ-G dIdJ dJejZ.G dKdL dLe*Z/G dMdN dNejZ0G dOdP dPejZ1G dQdR dRe*Z2G dSdT dTe*Z3G dUdV dVe*Z4G dWdX dXejZ5G dYdZ dZe*Z6G d[d\ d\ejZ7G d]d^ d^e*Z8G d_d` d`e*Z9G dadb dbejZ:G dcdd ddejZ;G dedf dfejZ<G dgdh dhejZ=diS )j    )
constraint)	namedtype)namedval)tag)univic                   @   s   e Zd ZdS )
LDAPStringN__name__
__module____qualname__ r   r   :/tmp/pip-unpacked-wheel-mj5o32qq/pyasn1_modules/rfc2251.pyr      s   r   c                   @   s   e Zd ZdS )LDAPOIDNr   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )LDAPDNNr   r   r   r   r   r       s   r   c                   @   s   e Zd ZdS )RelativeLDAPDNNr   r   r   r   r   r   $   s   r   c                   @   s   e Zd ZdS )AttributeTypeNr   r   r   r   r   r   (   s   r   c                   @   s   e Zd ZdS )AttributeDescriptionNr   r   r   r   r   r   ,   s   r   c                   @   s   e Zd Ze ZdS )AttributeDescriptionListN)r	   r
   r   r   componentTyper   r   r   r   r   0   s   r   c                   @   s   e Zd ZdS )AttributeValueNr   r   r   r   r   r   4   s   r   c                   @   s   e Zd ZdS )AssertionValueNr   r   r   r   r   r   8   s   r   c                   @   s,   e Zd Zeede ede ZdS )AttributeValueAssertionZattributeDescZassertionValueN)	r	   r
   r   r   
NamedTypes	NamedTyper   r   r   r   r   r   r   r   <   s   r   c                	   @   s4   e Zd Zeede edeje	 dZ
dS )	Attributetypevalsr   Nr	   r
   r   r   r   r   r   r   SetOfr   r   r   r   r   r   r   C   s   r   c                   @   s   e Zd ZdS )MatchingRuleIdNr   r   r   r   r   r    J   s   r    c                	   @   s>   e Zd Zeede ede	de
de ZdS )ControlZcontrolTypeZcriticalityFalseZcontrolValueN)r	   r
   r   r   r   r   r   DefaultedNamedTyper   BooleanOptionalNamedTypeOctetStringr   r   r   r   r   r!   N   s
   r!   c                   @   s   e Zd Ze ZdS )ControlsN)r	   r
   r   r!   r   r   r   r   r   r'   V   s   r'   c                   @   s   e Zd ZdS )LDAPURLNr   r   r   r   r   r(   Z   s   r(   c                   @   s   e Zd Ze ZdS )ReferralN)r	   r
   r   r(   r   r   r   r   r   r)   ^   s   r)   c                   @   s.   e Zd Zeede ede	 Z
dS )SaslCredentialsZ	mechanismcredentialsN)r	   r
   r   r   r   r   r   r%   r   r&   r   r   r   r   r   r*   b   s   r*   c                   @   s   e Zd Zeede je	
e	je	jddede je	
e	je	jddede je	
e	je	jddede je	
e	je	jd	dZd
S )AuthenticationChoicesimpler   ZimplicitTagz
reserved-1   z
reserved-2   Zsasl   N)r	   r
   r   r   r   r   r   r&   subtyper   TagtagClassContexttagFormatSimpler*   r   r   r   r   r   r,   i   s   r,   c                
   @   sf   e Zd Zejjeej	ej
dZeede jedddede ede ZdS )	BindRequestr   versionr/      subtypeSpecnameZauthenticationN)r	   r
   r   r   SequencetagSettagImplicitlyr   r3   tagClassApplicationtagFormatConstructedr   r   r   Integerr2   r   ValueRangeConstraintr   r,   r   r   r   r   r   r6   v   s   r6   c                
   @   s<   e Zd Zejeede edej	e
 ddZdS )PartialAttributeListr   r   r   Nr	   r
   r   r   r<   r   r   r   r   r   r   r   r   r   r   r   rC      s   rC   c                   @   sH   e Zd Zejjeej	ej
dZeede ede ZdS )SearchResultEntry   Z
objectName
attributesN)r	   r
   r   r   r<   r=   r>   r   r3   r?   r@   r   r   r   r   rC   r   r   r   r   r   rE      s   rE   c                   @   s   e Zd Zeede je	ej
ejddede je	ej
ejddede je	ej
ejddeded	je	ej
ejd
dZdS )MatchingRuleAssertionZmatchingRuler/   r.   r   r0   Z
matchValuer1   ZdnAttributesr"   rF   N)r	   r
   r   r   r   r%   r    r2   r   r3   r4   r5   r   r   r   r#   r   r$   r   r   r   r   r   rH      s   rH   c                   @   s   e Zd Zeede edejej	eede
 jeejejddede
 jeejejddede
 jeejejd	dd
d
ZdS )SubstringFilterr   
substringsinitialr   r.   anyr/   finalr0   r   N)r	   r
   r   r   r   r   r   r   
SequenceOfChoicer   r2   r   r3   r4   r5   r   r   r   r   r   rI      s.      rI   c                   @   s  e Zd Zeede je	ej
ejddede je	ej
ejddede je	ej
ejddede je	ej
ejd	ded
e je	ej
ejddede je	ej
ejddede je	ej
ejddZdS )Filter3equalityMatchr1   r.   rJ   rF   greaterOrEqual   lessOrEqual   present   approxMatch   extensibleMatch	   N)r	   r
   r   r   r   r   r   r2   r   r3   r4   r@   rI   r   r5   rH   r   r   r   r   r   rP      s.   rP   c                   @   sx  e Zd Zeedeje dj	e
e
je
jddedeje dj	e
e
je
jddede j	e
e
je
jdded	e j	e
e
je
jd
dede j	e
e
je
jddede j	e
e
je
jddede j	e
e
je
jddede j	e
e
je
jddede j	e
e
je
jddede j	e
e
je
jdd
ZdS )Filter2andr   r   r.   orr/   notr0   rQ   r1   rJ   rF   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   N)r	   r
   r   r   r   r   r   r   rP   r2   r   r3   r4   r@   r   rI   r   r5   rH   r   r   r   r   r   r\      s@   r\   c                   @   sx  e Zd Zeedeje dj	e
e
je
jddedeje dj	e
e
je
jddede j	e
e
je
jdded	e j	e
e
je
jd
dede j	e
e
je
jddede j	e
e
je
jddede j	e
e
je
jddede j	e
e
je
jddede j	e
e
je
jddede j	e
e
je
jdd
ZdS )Filterr]   r   r   r.   r^   r/   r_   r0   rQ   r1   rJ   rF   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   N)r	   r
   r   r   r   r   r   r   r\   r2   r   r3   r4   r@   r   rI   r   r5   rH   r   r   r   r   r   r`      s@   r`   c                   @   s   e Zd Zejjeej	ej
dZeede edejeddddedejed	d
dddede jededede jededede ede ede ZdS )SearchRequestr1   
baseObjectZscope)rb   r   )ZsingleLevelr/   )ZwholeSubtreer0   ZnamedValuesZderefAliases)ZneverDerefAliasesr   )ZderefInSearchingr/   )ZderefFindingBaseObjr0   )ZderefAlwaysr1   Z	sizeLimitr   r9   Z	timeLimitZ	typesOnlyfilterrG   N)r	   r
   r   r   r<   r=   r>   r   r3   r?   r@   r   r   r   r   
Enumeratedr   NamedValuesrA   r2   r   rB   maxIntr$   r`   r   r   r   r   r   r   ra     s0   

 ra   c                   @   s(   e Zd Zejjeej	ej
dZdS )UnbindRequestr0   N)r	   r
   r   r   r<   r=   r>   r   r3   r?   r5   r   r   r   r   rh     s   rh   c                <   @   s  e Zd Zejjeej	ej
dZeedejeddddddd	d
dddddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d64d7ed8e ed9e ed:e jeejej
d;d<ed=e jeejej
d>d<Zd?S )@BindResponser/   
resultCodesuccessr   ZoperationsErrorr/   ZprotocolErrorr0   ZtimeLimitExceededr1   ZsizeLimitExceededrF   ZcompareFalserS   ZcompareTruerU   ZauthMethodNotSupportedrW   ZstrongAuthRequiredrY   z
reserved-9r[   referral
   ZadminLimitExceeded   ZunavailableCriticalExtension   ZconfidentialityRequired   ZsaslBindInProgress   ZnoSuchAttribute   ZundefinedAttributeType   ZinappropriateMatching   ZconstraintViolation   ZattributeOrValueExists   ZinvalidAttributeSyntax   ZnoSuchObject    ZaliasProblem!   ZinvalidDNSyntax"   zreserved-35#   ZaliasDereferencingProblem$   ZinappropriateAuthentication0   ZinvalidCredentials1   ZinsufficientAccessRights2   busy3   unavailable4   ZunwillingToPerform5   Z
loopDetect6   ZnamingViolation@   ZobjectClassViolationA   ZnotAllowedOnNonLeafB   ZnotAllowedOnRDNC   ZentryAlreadyExistsD   ZobjectClassModsProhibitedE   zreserved-70F   ZaffectsMultipleDSAsG   otherP   zreserved-81Q   zreserved-82R   zreserved-83S   zreserved-84T   zreserved-85U   zreserved-86V   zreserved-87W   zreserved-88X   zreserved-89Y   zreserved-90Z   rc   	matchedDNerrorMessagerw   r1   r.   ZserverSaslCredsrW   N)r	   r
   r   r   r<   r=   r>   r   r3   r?   r@   r   r   r   re   r   rf   r   r   r%   r)   r2   r4   r&   r   r   r   r   r   ri     s   

                             ri   c                <   @   s   e Zd Zeedeje	dddddddd	d
dddddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d54d6ed7e
 ed8e ed9e jeejejd:d;Zd<S )=
LDAPResultrj   rk   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   ry   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   rc   r   r   rw   r1   r.   N)r	   r
   r   r   r   r   r   re   r   rf   r   r   r%   r)   r2   r   r3   r4   r@   r   r   r   r   r   r   @  sx   

                             r   c                   @   s.   e Zd Zejjeej	ej
dZe ZdS )SearchResultReferencer   N)r	   r
   r   r   r<   r=   r>   r   r3   r?   r@   r(   r   r   r   r   r   r   _  s   r   c                   @   s(   e Zd Zejjeej	ej
dZdS )SearchResultDonerS   Nr	   r
   r   r   r<   r=   r>   r   r3   r?   r@   r   r   r   r   r   f  s   r   c                	   @   s4   e Zd Zeede edeje	 dZ
dS )AttributeTypeAndValuesr   r   r   Nr   r   r   r   r   r   l  s   r   c                   @   s   e Zd Zejjeej	ej
dZeede edejejeedejeddddede d	d	Zd
S )ModifyRequestrU   objectZmodificationZ	operation)addr   )deleter/   )replacer0   rc   r   N)r	   r
   r   r   r<   r=   r>   r   r3   r?   r@   r   r   r   r   rN   re   r   rf   r   r   r   r   r   r   r   s  s&    r   c                   @   s(   e Zd Zejjeej	ej
dZdS )ModifyResponserW   Nr   r   r   r   r   r     s   r   c                
   @   s<   e Zd Zejeede edej	e
 ddZdS )AttributeListr   r   r   NrD   r   r   r   r   r     s   r   c                   @   sH   e Zd Zejjeej	ej
dZeede ede ZdS )
AddRequestrY   entryrG   N)r	   r
   r   r   r<   r=   r>   r   r3   r?   r@   r   r   r   r   r   r   r   r   r   r   r     s   r   c                   @   s(   e Zd Zejjeej	ej
dZdS )AddResponser[   Nr   r   r   r   r   r     s   r   c                   @   s(   e Zd Zejjeej	ej
dZdS )
DelRequestrx   Nr   r   r   r   r   r     s   r   c                   @   s(   e Zd Zejjeej	ej
dZdS )DelResponserz   Nr   r   r   r   r   r     s   r   c                   @   sx   e Zd Zejjeej	ej
dZeede ede ede ede jeejejddZdS )	ModifyDNRequestr|   r   ZnewrdnZdeleteoldrdnZnewSuperiorr   r.   N)r	   r
   r   r   r<   r=   r>   r   r3   r?   r@   r   r   r   r   r   r$   r%   r2   r4   r5   r   r   r   r   r   r     s   r   c                   @   s(   e Zd Zejjeej	ej
dZdS )ModifyDNResponser~   Nr   r   r   r   r   r     s   r   c                   @   sH   e Zd Zejjeej	ej
dZeede ede ZdS )CompareRequestr   r   ZavaN)r	   r
   r   r   r<   r=   r>   r   r3   r?   r@   r   r   r   r   r   r   r   r   r   r   r     s   r   c                   @   s(   e Zd Zejjeej	ej
dZdS )CompareResponse   Nr   r   r   r   r   r     s   r   c                   @   s(   e Zd Zejjeej	ej
dZdS )AbandonRequestr   Nr   r   r   r   r   r     s   r   c                   @   sv   e Zd Zejjeej	ej
dZeede jeejejddede jeejejddZdS )ExtendedRequest   ZrequestNamer   r.   ZrequestValuer/   N)r	   r
   r   r   r<   r=   r>   r   r3   r?   r@   r   r   r   r   r2   r4   r5   r%   r&   r   r   r   r   r   r     s   r   c                <   @   s.  e Zd Zejjeej	ej
dZeedejeddddddd	d
dddddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/d0d1d2d3d4d5d64d7ed8e ed9e ed:e jeejej
d;d<ed=e jeejejd>d<ed?e jeejejd@d<ZdAS )BExtendedResponse   rj   rk   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   ry   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   rc   r   r   rw   r1   r.   ZresponseNamerx   responserz   N)r	   r
   r   r   r<   r=   r>   r   r3   r?   r@   r   r   r   re   r   rf   r   r   r%   r)   r2   r4   r   r5   r&   r   r   r   r   r   r     s   

                             r   c                   @   s    e Zd Zejjede ZdS )	MessageIDr   N)	r	   r
   r   r   rA   r:   r   rB   rg   r   r   r   r   r     s   
 r   c                    @   sH  e Zd Zeede edejeede	 ede
 ede ede ede ede ed	e ed
e ede ede ede ede ede ede ede ede ede ede ede ede dede je !e j"e j#ddZ$dS )LDAPMessageZ	messageIDZ
protocolOpZbindRequestZbindResponseZunbindRequestZsearchRequestZsearchResEntryZsearchResDoneZsearchResRefZmodifyRequestZmodifyResponseZ
addRequestZaddResponseZ
delRequestZdelResponseZmodDNRequestZmodDNResponseZcompareRequestZcompareResponseZabandonRequestZextendedReqZextendedRespr   controlsr   r.   N)%r	   r
   r   r   r   r   r   r   rO   r6   ri   rh   ra   rE   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r%   r'   r2   r   r3   r4   r@   r   r   r   r   r   r     sB    r   N)>Zpyasn1.typer   r   r   r   r   rA   rg   r&   r   r   r   r   r   r   rN   r   r   r   r<   r   r   r    r!   r'   r(   r)   r*   rO   r,   r6   rC   rE   rH   rI   rP   r\   r`   ra   ZNullrh   ri   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>   sl   
	
$	

'