OwlCyberSecurity - MANAGER
Edit File: message.cpython-39.pyc
a kH�f]E � @ s� d dl Z d dlmZ d dlmZ d dlmZmZ d dlm Z d dl mZ d dlm Z mZ d dlmZ d d lmZ d d lmZ d dlmZ d dlmZ d d lmZmZmZmZ d dlmZm Z d dl!m"Z" d dl#m$Z$ d dl%m&Z& d dl'm(Z(m)Z) e�d�Z*de*_+e�d�Z,ej-e,_+dZ.dZ/G dd� de0�Z1h d�Z2dd� Z3dd� Z4G dd� d�Z5G dd � d e5e�Z6G d!d"� d"e5e�Z7G d#d$� d$e5e�Z8G d%d&� d&�Z9G d'd(� d(e9�Z:dS ))� N��charset)�encoders)� generator�message_from_string)�HeaderParseError)�Header)�Address�parser)�Message)�MIMEBase)�MIMEMessage)� MIMEMultipart)�MIMEText)� formataddr� formatdate�getaddresses� make_msgid)�BytesIO�StringIO)�Path)�settings)�DNS_NAME)� force_str�punycode�utf-8zapplication/octet-streami� c @ s e Zd ZdS )�BadHeaderErrorN)�__name__� __module__�__qualname__� r r �Z/home/gouroczh/virtualenv/test/3.9/lib/python3.9/site-packages/django/core/mail/message.pyr # s r > zreply-tozresent-from�bccz resent-sender�fromz resent-ccZsenderz resent-bcc�to�ccz resent-toc s� � pt j� t|�}d|v s"d|v r2td|| f ��z|�d� W nL ty� | �� tv rzd�� fdd�t |f�D ��}nt |� ��� }Y n0 | �� dkr�t |��� }| |fS ) z6Forbid multi-line headers to prevent header injection.� � z;Header values can't contain newlines (got %r for header %r)�ascii�, c 3 s | ]}t |� �V qd S �N)�sanitize_address)�.0�addr��encodingr r! � <genexpr>C s z,forbid_multi_line_headers.<locals>.<genexpr>�subject)r �DEFAULT_CHARSET�strr �encode�UnicodeEncodeError�lower�ADDRESS_HEADERS�joinr r )�name�valr/ r r. r! �forbid_multi_line_headers7 s"