HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/samba/__pycache__/ms_display_specifiers.cpython-310.pyc
o

�/a��@s�ddlZdd�Ze�d�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Ze	dkrSddl
Z
ze
jdZWne
yJede
jde
jd�e
�d�Ynweee��dSdS)�NcCsl|}	|��}|dd�dkr|dkr|dksJ�||}n|dkr.|}|dkr-	||fSn|}	||fSq)z+Read a line from an LDIF file, unfolding itTN�� ��
)�readline)�f�buffer�line�l�r�=/usr/lib/python3/dist-packages/samba/ms_display_specifiers.py�__read_folded_lines 
��r
z^([A-Za-z][A-Za-z0-9-]*):ccs��d}	g}	t||�\}}|dd�dkrq|dks|dkr n+t�|�}|r;|dd�dkr5|dd�}|�|�ntd|d	tjd
�t�d�qt|�rR|V|dkrXdSq)z(Read an LDIF entry, only unfolding linesrTNr�#r���zInvalid line: %sr)�end�file)	r
�attr_type_re�match�append�print�sys�stderr�exit�len)rr�entryr
�mrrr�__read_raw_entries>s.�

��rcCs*|�d�dkr|�dd�}|�dd�S|S)z"Fix a string DN to use ${CONFIGDN}z%<Configuration NC Distinguished Name>rz
 rz${CONFIGDN})�find�replace)�dnrrr�fix_dnasr cCsZg}|D]#}|ddkr|�d|d|df�q|�d|d|df�qd�|�S)zWrite out entry as LDIF�rz%s: %srz%s:: %sr)r�join)r�outr
rrr�__write_ldif_oneks
r$cCs�g}|D]f}g}|�d�dkr|�dd�}|�d�n|�dd�}|�d�|d��}|dkr1q|dkr6q|d	kr;q|d
kr@q|dkrEq|dkrJq|d
kr]|d������}|dkr]qt|d�|d<|�|�q|}|S)z?Perform required transformations to the Microsoft-provided LDIFz::rz:: rz: r�
changetype�distinguishedname�instancetype�name�cn�objectcategory�showinadvancedviewonly�TRUE)r�splitr�lower�upper�lstrip�rstripr )r�
temp_entryr
�t�key�valuerrr�__transform_entryys:
r6cCsLg}ddlm}||ddd�}t|�D]}|�tt|���qd�|�dS)z0Read and transform Microsoft-provided LDIF file.r)�open�rzlatin-1)�encodingz

)�ior7rrr$r6r")�filenamer#r7rrrrr�read_ms_ldif�sr<�__main__rz*Usage: %s display-specifiers-ldif-file.txt)r)�rer
�compilerrr r$r6r<�__name__r�argv�display_specifiers_file�
IndexErrorrrrrrrr�<module>s$
##
4
��