
    ?De5                     ^    d Z ddlmZ  G d d          Z G d d          ZddlT ddlmZ d	S )
a  
controls.py - support classes for LDAPv3 extended operations

See https://www.python-ldap.org/ for details.

Description:
The ldap.extop module provides base classes for LDAPv3 extended operations.
Each class provides support for a certain extended operation request and
response.
    )__version__c                   $    e Zd ZdZd Zd Zd ZdS )ExtendedRequesta  
  Generic base class for a LDAPv3 extended operation request

  requestName
      OID as string of the LDAPv3 extended operation request
  requestValue
      value of the LDAPv3 extended operation request
      (here it is the BER-encoded ASN.1 request value)
  c                 "    || _         || _        d S N)requestNamerequestValue)selfr   r	   s      /./ldap/extop/__init__.py__init__zExtendedRequest.__init__   s    "D$D    c                 @    | j         j         d| j         d| j         dS N(,))	__class____name__r   r	   r
   s    r   __repr__zExtendedRequest.__repr__   s,    n%OO(8OO4;LOOOOr   c                     | j         S )za
    returns the BER-encoded ASN.1 request value composed by class attributes
    set before
    )r	   r   s    r   encodedRequestValuez#ExtendedRequest.encodedRequestValue!   s    
 r   N)r   
__module____qualname____doc__r   r   r    r   r   r   r      sN         % % %P P P    r   r   c                   $    e Zd ZdZd Zd Zd ZdS )ExtendedResponsez
  Generic base class for a LDAPv3 extended operation response

  requestName
      OID as string of the LDAPv3 extended operation response
  encodedResponseValue
      BER-encoded ASN.1 value of the LDAPv3 extended operation response
  c                 H    || _         |                     |          | _        d S r   )responseNamedecodeResponseValueresponseValue)r
   r    encodedResponseValues      r   r   zExtendedResponse.__init__3   s'    $D112FGGDr   c                 @    | j         j         d| j         d| j         dS r   )r   r   r    r"   r   s    r   r   zExtendedResponse.__repr__7   s,    n%QQ(9QQD<NQQQQr   c                     |S )zw
    decodes the BER-encoded ASN.1 extended operation response value and
    sets the appropriate class attributes
    r   )r
   values     r   r!   z$ExtendedResponse.decodeResponseValue:   s	    
 Lr   N)r   r   r   r   r   r   r!   r   r   r   r   r   )   sQ         H H HR R R    r   r   )*)PasswordModifyResponseN)r   ldapr   r   r   ldap.extop.ddsldap.extop.passwdr(   r   r   r   <module>r,      s   	 	             4       4     4 4 4 4 4 4 4 4r   