shell bypass 403
o
ab� � @ s� d dl Z d dlZd dlZd dlmZ d dlZd dlZd dlmZm Z m
Z
mZ d dlmZ ej
ddd�ZdZdd d
�Zdd� Zd
d� ZG dd� dej�ZedkrUe�� dS dS )� N)�support)�parse�Node�Document�parseString)�getDOMImplementationztest.xmlZxmltestdata)Zsubdira <?xml version='1.0' encoding='us-ascii'?>
<!DOCTYPE doc PUBLIC 'http://xml.python.org/public' 'http://xml.python.org/system' [
<!ELEMENT e EMPTY>
<!ENTITY ent SYSTEM 'http://xml.python.org/entity'>
]><doc attr='value'> text
<?pi sample?> <!-- comment --> <e/> </doc>c C s t � �d d| �S )N�doc)r �createDocument)�doctype� r �:/usr/local/python-3.10/lib/python3.10/test/test_minidom.py�create_doc_without_doctype � r
c C sx t � �dd d �} g | j_g | j_tjj�dd d�}| jj� |� tjj�
dd dd�}d|_d|_d|_
| jj� |� | S ) Nr zmy-notationz"http://xml.python.org/notations/myz my-entityz!http://xml.python.org/entities/myz1.0�utf-8�us-ascii)r ZcreateDocumentType�entitiesZ_seq� notations�xml�dom�minidomZNotation�appendZEntity�version�encoding�actualEncoding)r
Znotation�entityr r r �create_nonempty_doctype s ��r c C s. t � } t| �}|| j�d�_|| j�d�_|S �Nr )r r
r �item�
ownerDocumentr )r
r r r r �create_doc_with_doctype. s
r c @ s� e Zd Z�ddd�Zdd� Zdd� Zdd � Zd
d� Zdd
� Zdd� Z dd� Z
dd� Zdd� Zdd� Z
dd� Zdd� Zdd� Zdd� Zd d!� Zd"d#� Zd$d%� Zd&d'� Zd(d)� Zd*d+� Zd,d-� Zd.d/� Zd0d1� Zd2d3� Zd4d5� Zd6d7� Zd8d9� Zd:d;� Zd<d=� Z d>d?� Z!d@dA� Z"dBdC� Z#dDdE� Z$dFdG� Z%dHdI� Z&dJdK� Z'dLdM� Z(dNdO� Z)dPdQ� Z*dRdS� Z+dTdU� Z,dVdW� Z-dXdY� Z.dZd[� Z/d\d]� Z0d^d_� Z1d`da� Z2dbdc� Z3ddde� Z4dfdg� Z5dhdi� Z6djdk� Z7dldm� Z8dndo� Z9dpdq� Z:drds� Z;dtdu� Z<dvdw� Z=dxdy� Z>dzd{� Z?d|d}� Z@d~d� ZAd�d�� ZBd�d�� ZCd�d�� ZDd�d�� ZEd�d�� ZFd�d�� ZGd�d�� ZHd�d�� ZId�d�� ZJd�d�� ZKd�d�� ZLd�d�� ZMd�d�� ZNd�d�� ZOd�d�� ZPd�d�� ZQd�d�� ZRd�d�� ZSd�d�� ZTd�d�� ZUd�d�� ZVd�d�� ZWd�d�� ZXd�d�� ZYd�d�� ZZd�d�� Z[d�d�� Z\d�d�� Z]d�d�� Z^d�d�� Z_d�d�� Z`d�d�� Zad�d�� Zbd�dÄ Zcd�dń Zdd�dDŽ Zed�dɄ Zfd�d˄ Zgd�d̈́ Zhd�dτ Zid�dф Zjd�dӄ Zkd�dՄ Zld�dׄ Zmd�dل Znd�dۄ Zod�d݄ Zpd�d߄ Zqd�d� Zrd�d� Zsd�d� ZtG d�d� d�Zud�d� Zvd�d� Zwd�d� Zxd�d� Zyd�d� Zzd�d� Z{d�d�� Z|d�d�� Z}d�d�� Z~d�d�� Zd�d�� Z�d�d�� Z��d �d� Z��d�d� Z��d�d� Z��d�d� Z��d�d � Z��d
�d� Z��d�d
� Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z��d�d� Z��dS ( �MinidomTest�Testc C s | � ||� d S �N)�
assertTrue)�self�testZtestnamer r r �confirm6 r zMinidomTest.confirmc C s"