HEX
Server: Apache
System: Linux server2.voipitup.com.au 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: posscale (1027)
PHP: 8.2.29
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //opt/saltstack/salt/lib/python3.10/email/__pycache__/contentmanager.cpython-310.pyc
o

�N�g;)�@s>ddlZddlZddlZddlZddlmZGdd�d�Ze�Zd%dd�Ze�	de�d	d
�Z
d��D]Ze�	ee
�q3dd
�Z
d��D]
Ze�	dee
�qDdd�Ze�	de�dd�Zdd�Zdd�Zdd�Z			d&dd�Ze�ee�			d'd d!�Ze�ejje�	"		d(d#d$�ZeeefD]Ze�ee�q�dS))�N)�
quoprimimec@s<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�ContentManagercCsi|_i|_dS�N)�get_handlers�set_handlers)�self�r�:/opt/saltstack/salt/lib/python3.10/email/contentmanager.py�__init__	s
zContentManager.__init__cC�||j|<dSr)r)r�key�handlerrrr	�add_get_handler
�zContentManager.add_get_handlercOs�|��}||jvr|j||g|�Ri|��S|��}||jvr.|j||g|�Ri|��Sd|jvrA|jd|g|�Ri|��St|��)N�)�get_content_typer�get_content_maintype�KeyError)r�msg�args�kw�content_type�maintyperrr	�get_contents


zContentManager.get_contentcCrr)r)rZtypekeyr
rrr	�add_set_handlerrzContentManager.add_set_handlercOsD|��dkr
td��|�||�}|��|||g|�Ri|��dS)N�	multipartz"set_content not valid on multipart)r�	TypeError�_find_set_handler�
clear_content)rr�objrrr
rrr	�set_contents
zContentManager.set_contentc	Cs�d}t|�jD]O}||jvr|j|S|j}t|dd�}|r'd�||f�n|}|dur/|}||jvr;|j|S||jvrG|j|S|j}||jvrV|j|Sqd|jvra|jdSt|��)N�
__module__r�.)�type�__mro__r�__qualname__�getattr�join�__name__r)	rrrZfull_path_for_error�typZqname�modname�	full_path�namerrr	r's(



�

z ContentManager._find_set_handlerN)	r(r!r%r
rrrr rrrrr	rs	r�replacecCs&|jdd�}|�dd�}|j||d�S)NT��decode�charset�ASCII)�errors)�get_payload�	get_paramr/)rr2�contentr0rrr	�get_text_content@sr6�textcCs|jdd�S)NTr.�r3�rrrr	�get_non_text_contentGsr:zaudio image video applicationcCs
|�d�S�Nrr8r9rrr	�get_message_contentMs
r<zrfc822 external-bodyzmessage/cCst|�d��Sr;)�bytesr3r9rrr	�%get_and_fixup_unknown_message_contentSsr>�messagec
s�d�||f�|d<|rOt|dd�s|j��fdd�|D�}z|D]}|jr+|jd�|||j<q!WdStjjyN}z
td�	|j
|jd���|�d}~wwdS)	N�/zContent-Typerr,csg|]}�j��|g���qSr)Zheader_factory�header_source_parse)�.0�header��mprr	�
<listcomp>ds�z _prepare_set.<locals>.<listcomp>zInvalid header: {})�policy)r'�hasattrrG�defectsr,�emailr2�HeaderDefect�
ValueError�format�fold)rr�subtype�headersrC�excrrDr	�_prepare_set_s,
�
������rRcCs||dur
|dur
d}|dur||d<|dur|jd|ddd�|dur'||d<|dur:|��D]\}}|�||�q/dSdS)N�
attachmentzContent-Disposition�filenameT)rCr-z
Content-ID)�	set_param�items)r�dispositionrT�cid�paramsr�valuerrr	�
_finalize_setps"��r[cCsVg}|dd}tdt|�|�D]}||||�}|�t�|��d��qd�|�S)N��r�asciir)�range�len�append�binascii�
b2a_base64r/r')�data�max_line_length�
encoded_linesZunencoded_bytes_per_line�i�thislinerrr	�_encode_base64�s
rics�|�|���}|j�d���fdd�}dd�}|durztdd�|D�dd	�|jkrLz
d
||��d�fWSty<Ynw|jdkrLd||��dd�fS||dd
��}t�	|�d�|j�}t
�|�}	t|�t|	�krnd}nd}t|�d
krz||fS|d
kr�||��d�}
||
fS|dkr�||��dd�}
||
fS|dkr�t�	||��d�|j�}
||
fS|dkr�t
||�|j�}
||
fStd�|���)Nr^cs��|��Sr�r'��lines��lineseprr	�
embedded_body��z#_encode_text.<locals>.embedded_bodycSsd�|�dS)N�
rjrkrrr	�normal_body�rpz!_encode_text.<locals>.normal_bodycss�|]}t|�VqdSr)r`)rB�xrrr	�	<genexpr>�s�z_encode_text.<locals>.<genexpr>r)�default�7bit�8bit�surrogateescape�
zlatin-1�base64�quoted-printablez$Unknown content transfer encoding {})�encode�
splitlinesrn�maxrer/�UnicodeDecodeError�cte_typer�body_encoderbrcr`rirLrM)�stringr0�cterGrlrorrZsniffZsniff_qpZsniff_base64rdrrmr	�_encode_text�sL�
�

�����r��plain�utf-8c
Csdt|d||	�t||||j�\}}
|�|
�|jdtjj�||�dd�||d<t	|||||�dS)Nr7r0T�r-�Content-Transfer-Encoding)
rRr�rG�set_payloadrUrJr0�ALIASES�getr[)rr�rOr0r�rWrTrXrYrP�payloadrrr	�set_text_content�s
�r��rfc822c		Cs�|dkrtd��|dkr |dvrtd�|���|durdn|}n|dkr2|dvr/td	�|���d
}n|dur8d
}t|d||�|�|g�||d<t|||||�dS)
N�partialz4message/partial is not supported for Message objectsr�)Nrvrw�binaryz*message/rfc822 parts do not support cte={}rwz
external-body)Nrvz1message/external-body parts do not support cte={}rvr?r�)rLrMrRr�r[)	rr?rOr�rWrTrXrYrPrrr	�set_message_content�s(��r�rzc

Cs�t||||	�|dkrt||jjd�}n'|dkr'tj|dddd�}|�d�}n|dkr1|�d�}n
|d	vr;|�dd
�}|�|�||d<t|||||�dS)Nrz)rer{FT)�istextrC�	quotetabsr^rv)rwr�rxr�)	rRrirGrerb�b2a_qpr/r�r[)
rrdrrOr�rWrTrXrYrPrrr	�set_bytes_content�s
r�r�)r�r�NNNNNN)r�NNNNNN)rzNNNNN)rbZ
email.charsetrJ�
email.messageZemail.errorsrrZraw_data_managerr6rr:�splitrr<rOr>rRr[rir�r�r�strr�r?�Messager�r=�	bytearray�
memoryviewr)rrrr	�<module>sP6
�	'
�
�
��