o
    jW                     @   s   d Z ddlmZmZmZmZmZ ddlmZm	Z	m
Z
mZmZmZmZmZmZ ddlmZ ddlmZmZmZ ededededddddddddiZ					
dddZdd Zdd Zd	S )
   )SEQUENCE_TYPES
MODIFY_ADDMODIFY_DELETEMODIFY_REPLACEMODIFY_INCREMENT)	ModifyRequestLDAPDNChangesChange	OperationPartialAttributeAttributeDescriptionVals
ResultCode)referrals_to_list)changes_to_listvalidate_attribute_valueprepare_for_sending          NFc                 C   s   t  }d}|D ]i}|| D ]b}	t }
t||
d< t |
d< t|	d trBt|	d D ]\}}|
d |tt	||||||d q*n|
d dtt	|||	d |||d t
 }tt|	d  |d< |
|d< |||< |d7 }qqt }t| |d< ||d	< |S )
Nr   typevalsr   )check_names	operationmodificationobjectchanges)r
   r   r   r   
isinstancer   	enumeratesetComponentByPositionr   r   r   r   change_tabler   r	   )dnr   auto_encodeschema	validatorr   change_listpos	attributechange_operationpartial_attributeindexvaluechangerequest r0   /root/aizidognhua/tmp/workspace/projects/ec89d86c-575f-41c9-af57-ac45cbdbf775/venv/lib/python3.10/site-packages/ldap3/operation/modify.pymodify_operation3   s,   

&(
r2   c                 C   s   t | d t| d dS )Nr   r   )entryr   )strr   )r/   r0   r0   r1   modify_request_to_dictV   s   

r5   c                 C   s@   t | d t  | d t| d t| d t| d dS )N
resultCodediagnosticMessage	matchedDNreferral)resultdescriptionmessager#   	referrals)intr   getNamedValuesgetNamer4   r   )responser0   r0   r1   modify_response_to_dict[   s   



rB   )NNF)__doc__ r   r   r   r   r   protocol.rfc4511r   r	   r
   r   r   r   r   r   r   operation.bindr   protocol.convertr   r   r   r"   r2   r5   rB   r0   r0   r0   r1   <module>   s(    ,
#