Sindbad~EG File Manager

Current Path : /proc/2568807/root/usr/local/lib/python3.12/test/__pycache__/
Upload File :
Current File : //proc/2568807/root/usr/local/lib/python3.12/test/__pycache__/audit-tests.cpython-312.pyc

�

&Μg�5��~�dZddlZddlZddlZGd�d�Zd�Zd�Zd�Zd�Zejd	��Z
d
�Zd�Zd�Z
d
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d �Z!d!�Z"d"�Z#e$d#k(r7dd$l%m&Z&e&�ejNd%Z(e)�e(ejNd&d�yy)'z�This script contains the actual auditing tests.

It should not be imported directly, but should be run by the test_audit
module with arguments identifying each test.

�Nc�D�eZdZdZdefd�Zd�Zd�Zd�Ze	d��Z
d�Zy)	�TestHookz�Used in standard hook tests to collect any logged events.

    Should be used in a with block to ensure that it has no impact
    after the test completes.
    Nc�D�|xsd|_||_g|_d|_y)N�F)�raise_on_events�exc_type�seen�closed)�selfrrs   �-/usr/local/lib/python3.12/test/audit-tests.py�__init__zTestHook.__init__s$��.�4�"��� ��
���	����c�0�tj|�|S�N)�sys�addaudithook�r�as  r�	__enter__zTestHook.__enter__s��������rc�$�|j�yr)�closers  r�__exit__zTestHook.__exit__s���
�
�rc��d|_y)NT)r
�rs rrzTestHook.close!s	����rc�F�|jD�cgc]}|d��	c}Scc}w)Nr)r	)r�is  r�seen_eventszTestHook.seen_events$s"��"�i�i�(�i���!��i�(�(��(s�c��|jry|jj||f�||jvr|j	d|z��y)Nz
saw event )r
r	�appendrr)r�event�argss   r�__call__zTestHook.__call__(sI���;�;���	�	���%���'��D�(�(�(��-�-��u� 4�5�5�)r)�__name__�
__module__�__qualname__�__doc__�RuntimeErrorr
rrr�propertyrr"rrrrr
s;���(,�l������)��)�6rrc�.�||k7rt|�d|����y)N� should equal ��AssertionError��x�ys  r�assertEqualr01s$���A�v���u�N�1�%�8�9�9�rc�,�||vrt|�d|����y)Nz should be in r+��el�seriess  r�assertInr56s%��	�����v�^�F�:�>�?�?�rc�,�||vrt|�d|����y)Nz should not be in r+r2s  r�assertNotInr7;s%��	�V�|���v�%7��z�B�C�C�rc��t|�t|�k7rt|�d|����td�t||�D��rt|�d|����y)Nr*c3�,K�|]\}}||k7���y�wrr)�.0�ix�iys   r�	<genexpr>z&assertSequenceEqual.<locals>.<genexpr>Cs����
,�)���B�2��8�)�s�)�lenr,�any�zipr-s  r�assertSequenceEqualrA@sW��
�1�v��Q�����u�N�1�%�8�9�9�
�
,�#�a��)�
,�,���u�N�1�%�8�9�9�-rc#�K�	d��Jd|����#t$r4}t|t�r�t|�|usJ|�d|����Yd}~yd}~wwxYw�w)Nz	expected z should be )�
BaseException�
isinstancer,�type)�ex_type�exs  r�assertRaisesrHGs`����@�
�+�	�'��+�+�u���@��b�.�)���B�x�7�"�?�r�d�+�g�Y�$?�?�"��@�s%�A��	A�*A
�A�
A�Ac���t�5}tjdddd�t|jddd�t|jddd�ddd�y#1swYyxYw)N�
test_event���r)rKrLrM)rr�auditr0r	)�hooks r�
test_basicrPRsQ��	��t��	�	�,��1�a�(��D�I�I�a�L��O�\�2��D�I�I�a�L��O�Y�/�
���s�AA%�%A.c��td��5}t�5}tjd�td|j�td|j�ddd�ddd�y#1swY�xYw#1swYyxYw)N�sys.addaudithook�rrJ)rrrNr5rr7��hook1�hook2s  r�test_block_add_hookrWYs^��
�"4�	5��
�Z�5��I�I�l�#��\�5�#4�#4�5���e�&7�&7�8��
6�	5�
�Z��
6�	5�s#�A7�AA+�A7�+A4	�0A7�7Bc���tt�5tdt��5}t�5}	ddd�ddd�ddd�y#1swY�xYw#1swY�xYw#1swYyxYw)NrR)rr)rHrCrrTs  r�!test_block_add_hook_baseexceptionrYcsR��	�m�	$�
�.��
�
���u���	
�
%�	$�
���	
�
��
%�	$�s7�A �A�A�A�A �A�
A�A	�A � A)c	��ddl}d}|j|�}t�5}t||j	|j|���	tdd�5}|j
||�ddd�tdd�5}t||j|��ddd�tjd�	ddd�jD��cgc]\}}|dk(s�|d|df��}}}t|||jfgdz�|jD��cgc]\}}|d	k(s�|d��}}}t||g�|jD��cgc]
\}}|d
k(s�|��}}}t|d
g�y#1swY��xYw#1swY��xYw#tjd�wxYw#1swY��xYwcc}}wcc}}wcc}}w)Nr�r�b�crKrLrMztest-marshal.bin�wb�rbz
marshal.dumpsrKrLz
marshal.loadszmarshal.load)
�marshal�dumpsrr0�loads�open�dump�load�os�unlinkr	rA�version)r`�o�payloadrO�f�er�actuals        r�test_marshalrnns��� �A��m�m�A��G�	��t��A�w�}�}�W�]�]�1�%5�6�7�	*��(�$�/�1����Q��"�0��(�$�/�1��A�w�|�|�A��/�0�
�I�I�(�)�
�(,�y�y�
I�y�t�q�!�A��4H�q��t�Q�q�T�l�y�F�
I���!�W�_�_�!5� 6�� :�;�#�y�y�
A�y�t�q�!�A��,@�a��d�y�F�
A����	�*� �I�I�
=�I�D�A�q��n�)<�a�I�F�
=���� 0�1�0�/��/�/��
�I�I�(�)��
���J��B��>sw�+F$�F
�E1�-F
�E>�F
�%F$�
F0� F0�
F6�(F6�
F<�F<�1E;	�6F
�>F	�F
�
F!�!F$�$F-c�r�ddl}Gd�d�}|j|��}|jd�}td|j|��t	d��5}tt�5|j|�ddd�|j|�ddd�y#1swY�#xYw#1swYyxYw)Nrc��eZdZd�Zy)� test_pickle.<locals>.PicklePrintc��tdfS)N)�Pwned!)�str)r�ps  r�
__reduce_ex__z.test_pickle.<locals>.PicklePrint.__reduce_ex__�s
����#�#rN)r#r$r%rvrrr�PicklePrintrq�s��	$rrwr[rszpickle.find_classrS)�picklerar0rbrrHr')rxrw�	payload_1�	payload_2rOs     r�test_pickler{�s����$�$����[�]�+�I����5�6�I���&�,�,�y�1�2�	�"5�	6�$�
�,�
'��L�L��#�(�	���Y��
7�	6�
'�
'��
7�	6�s$�B-�-B!�?B-�!B*	�&B-�-B6c���Gd�d�}Gd�d�}Gd�d|�}|�}t�5}d|_|f|_tjdj||f�|j|_d	|_||_ddd�jD��cgc]\}}|d
k(s�|d|df��}}}t|d
f|df|dfdfg|�y#1swY�NxYwcc}}w)Nc��eZdZy)�test_monkeypatch.<locals>.AN�r#r$r%rrr�Ar~����rr�c��eZdZy)�test_monkeypatch.<locals>.BNrrrr�Br��r�rr�c��eZdZy)�test_monkeypatch.<locals>.CNrrrr�Cr��r�rr��X�	__bases__�{zobject.__setattr__rrKr#�	__class__)rr#r�rE�__dict__�__set__r
�new_attrr�r	rA)r�r�r�rrOrlrms       r�test_monkeypatchr��s���
�
�
�
�
�A�
�	
��A�	��t���
��d����
�
�k�"�*�*�1�q�d�3��Z�Z��
���
����
�(,�y�y�
N�y�t�q�!�A�9M�4M�q��t�Q�q�T�l�y�F�
N��
�Z��1�k�*�Q��,<�q�+�>N�O�QW��
���Os�AC�
C�)C�Cc
��	ddl}|j�j}t	dh��5}t
|dft
tjdft
ddft
|dd	dddd
d�f	||ffD]$^}}|s�tt�5||�ddd��&	ddd�jD��cgc]\}}|dk(s�|ds�|d|df��}}}|jD��cgc]\}}|dk(s�|dr�|d|d
f��}	}}t|dftjdfd|df|r|dfndfD�
cgc]}
|
�|
��c}
|�tg|	�y#t$rd}Y��2wxYw#1swY��xYw#1swY��xYwcc}}wcc}}wcc}
w)NrrcrS�rr_rMr^�w���Fc��y)NrKr�rs r�<lambda>ztest_open.<locals>.<lambda>�s��rrKrL)rMr�)�ssl�create_default_context�load_dh_params�ImportErrorrrcr�
executablerHr'r	rA)�testfnr�r�rO�fnr!rlr�actual_mode�actual_flagrs           r�	test_openr��s������3�3�5�D�D��
�6�(�	+�t�
�6�3��
�3�>�>�4�(�
�1�d�O�
�6�3��D�$��e�\�J�
�V�$�
�I�B�����l�+��D�	�,�+�
�
,�-1�I�I�N�I�D�A�q��f���1��A�a�D�!�A�$�<�I�K�N�,0�I�I�R�I�D�A�q��f��Q�q�T�A�a�D�!�A�$�<�I�K�R����
�����%����
�"0����d��
	
����}�
��
	
�	�
���K�(��E������,�+��
,�	+��O��R��
	
s_�E�AE"�?E�
E"�'
E.�5E.�;E.�
E4�'E4�-E4�$E:�E�E�E�E"�"E+c���g��fd�}tj|�}	t�5}td�d|_td�d|_td�d|_td�d	|_ddd�tj|�td
gdz��y#1swY�/xYw#tj|�wxYw)Nc�x��|jtjjk(r�j	|�yyr)�f_coderr"�__code__r)�framer r!�traceds   �r�traceztest_cantrace.<locals>.trace�s,����<�<�8�,�,�5�5�5��M�M�%� �6r�1F�2T�3rK�4r�call�)r�settracer�eval�__cantrace__rA)r��oldrOr�s   @r�
test_cantracer��s����
�F�!��,�,�u�
�C��
�Z�4���I�!&�D����I�!%�D����I�!"�D����I�!"�D��#�&	���S�����1��f�-�+�Z��&	���S��s#�
B,�A	B �2B,� B)�%B,�,Cc��ddl}t�5}|jdd�t|jddddd�ddd�y#1swYyxYw)Nrr��rKrL)r�r�)�mmaprr0r	)r�rOs  r�	test_mmapr�	sA���	��t��	�	�"�a���D�I�I�a�L��O�B�Q�'��1�
���s�2A
�
Ac�j��d���fd�}tj|��t_td��)Nc�D�|turtj|||�yyr)r'r�__excepthook__)r�	exc_value�exc_tbs   r�
excepthookz#test_excepthook.<locals>.excepthooks!���<�'����x��F�;�(rc����|dk(r_t|d|d�std|d�d|d�d���|d�k7rtd|d�d	�����t|t	|d��yy)
Nzsys.excepthookrLrKzExpected isinstance(z, �)r�	Expected � == )rD�	TypeError�
ValueError�print�repr)r r!r�s  �rrOztest_excepthook.<locals>.hooks�����$�$��d�1�g�t�A�w�/��"6�t�A�w�k���Q��{�RS� T�U�U��A�w�*�$� �9�T�!�W�I�T�*��!F�G�G��%��d�1�g��'�%rzfatal-error)rrr�r')rOr�s @r�test_excepthookr�s/���<�(����T���C�N�
�}�
%�%rc���ddlm}d���fd�}tj|��t_|td�dd�y)Nr)�write_unraisable_excc��yrr)�hookargss r�unraisablehookz+test_unraisablehook.<locals>.unraisablehook&s��rc���|dk(rM|d�k7rtd|d�d�����t|t|dj�|dj�yy)Nzsys.unraisablehookrr�r�rK)r�r�r�r��err_msg)r r!r�s  �rrOz!test_unraisablehook.<locals>.hook)s]����(�(��A�w�.�(� �9�T�!�W�I�T�.�9I�!J�K�K��%��d�1�g�/�/�0�$�q�'�/�/�B�)rznonfatal-errorzfor audit hook test)�	_testcapir�rrr�r')r�rOr�s  @r�test_unraisablehookr�#s=���.�
�C����T��'�C����&6�7�9N�PT�Urc���ddlm}m}m}m}d�}tj|�||d�}||d�	||d�td��#t$rYnwxYw|j�}||�y)Nr)�OpenKey�EnumKey�CloseKey�HKEY_LOCAL_MACHINEc�@�|jd�syt|g|���y)Nzwinreg.��
startswithr��r r!s  rrOztest_winreg.<locals>.hook7s �����	�*��
�e��d�r�Softwarei'z%Expected EnumKey(HKLM, 10000) to fail)
�winregr�r�r�r�rrr'�OSError�Detach)r�r�r�r�rO�k�kvs       r�test_winregr�4sy��E�E��
���T���"�J�/�A��A�q�M�D���5���B�C�C���
��
��

����B��R�Ls�	A�	A�Ac�4�ddl}d�}tj|�|j�|j|j|j
�}	|j
d�|j�y#t$rY�wxYw#|j�wxYw)Nrc�@�|jd�r
t|g|���yy)Nzsocket.r�r�s  rrOztest_socket.<locals>.hookN�"�����I�&��%��$��'r)z	127.0.0.1i�)	�socketrr�gethostname�AF_INET�SOCK_STREAM�bind�	Exceptionr)r�rO�socks   r�test_socketr�Ks��� ����T��
�����=�=�����);�);�<�D���	�	�%�&�	
�
�
����
��
��	
�
�
��s$�A6�6	B�?B�B�B�Bc��ddl}d�}tj|�|jd��t	�}|g}|j|�|j
|�y)Nrc�@�|jd�r
t|g|���yy)Nzgc.r�r�s  rrOztest_gc.<locals>.hookds"�����E�"��%��$��#rrK)�
generation)�gcrr�get_objects�object�
get_referrers�
get_referents)r�rOr.r/s    r�test_gcr�asR��
� ����T���N�N�a�N� ���A�	
��A����Q�����Q�rc��ddl}d�}tj|�|jj	d�}	|jdd�|j�y#t$rtdd�Y�(wxYw#|j�wxYw)Nrc�F�|jd�rt|g|dd���yy)Nzhttp.client.rKr�r�s  rrOztest_http_client.<locals>.hookvs(�����N�+��%�#�$�q�r�(�#�,rzwww.python.org�GET�/zhttp.client.sendz
[cannot send])	�http.clientrr�client�HTTPConnection�requestr�r�r)�httprO�conns   r�test_http_clientr�ssu���$����T���;�;�%�%�&6�7�D�����U�C� �	
�
�
����3�
� �/�2�3��	
�
�
��s#�A�A4�1A7�3A4�4A7�7B	c�2�ddl}d�}tj|�|jd�}|j	d�}t|jd�r.|j
d�	|jd�td��y#|j$rYywxYw)Nrc�@�|jd�r
t|g|���yy)Nzsqlite3.r�r�s  rrOztest_sqlite3.<locals>.hook�s"�����J�'��%��$��(rz:memory:�enable_load_extensionF�testz'Expected sqlite3.load_extension to fail)
�sqlite3rr�connect�
Connection�hasattrr�load_extensionr'�OperationalError)rrO�cx1�cx2s    r�test_sqlite3r
�s���� ����T��
�/�/�*�
%�C�
�
�
�Z�
(�C��w�!�!�#:�;��!�!�%�(�	J����v�&��H�I�I�<���'�'�	��	�s�'B�B�Bc�X�ddl}d�}|j|�|j�y)Nrc�n�|jd�r$t||djj�yy)N�sys.r)r�r�r��co_namer�s  rrOztest_sys_getframe.<locals>.hook�s-�����F�#��%��a����/�/�0�$r)rr�	_getframe�rrOs  r�test_sys_getframer�s'���1��C���T���C�M�M�Orc�X�ddl}d�}|j|�|j�y)Nrc�@�|jd�r
t|g|���yy)Nr
r�r�s  rrOz)test_sys_getframemodulename.<locals>.hook�s"�����F�#��%��$��$r)rr�_getframemodulenamers  r�test_sys_getframemodulenamer�s*��� ��C���T���C���rc����ddl}d�}tj|�|j���j	�G�fd�d�}|j|�d�}�j	�y)Nrc�@�|jd�r
t||�yy)N)z_thread.zcpython.PyThreadStateztest.r�r�s  rrOztest_threading.<locals>.hook�s!�����J�K��%���Lrc���eZdZd�Z�fd�Zy)�!test_threading.<locals>.test_funcc��y)Nz<test_func>rrs r�__repr__z*test_threading.<locals>.test_func.__repr__�s��=rc�P��tjd��j�y)Nztest.test_func)rrN�release)r�locks �rr"z*test_threading.<locals>.test_func.__call__�s����I�I�&�'��L�L�NrN)r#r$r%rr")rs�r�	test_funcr�s���0�	rrr)�_threadrr�
allocate_lock�acquire�start_new_thread)r rOrrrs    @r�test_threadingr$�s[��������T��� � �"�D��L�L�N���	� � ���b�1�A��L�L�Nrc���ddl}Gd�dt���fd�}tj|�	|j	d�d�y#�$rYywxYw)Nrc��eZdZy)�1test_threading_abort.<locals>.ThreadNewAbortErrorNrrrr�ThreadNewAbortErrorr'�r�rr(c���|dk(r���y)Nzcpython.PyThreadState_Newr)r r!r(s  �rrOz"test_threading_abort.<locals>.hook�s����/�/�%�'�'�0rc��yrrrrrr�z&test_threading_abort.<locals>.<lambda>�s��rr)r r�rrr#)r rOr(s  @r�test_threading_abortr+�sN����
�i�
�(����T��
�� � ��r�2���
��
�s�A�A�Ac�^�ddl}d�}tj|�|jd�y)Nrc�F�|jd�rt||d�yy)Nz_wmi.rr�r�s  rrOz!test_wmi_exec_query.<locals>.hook�s#�����G�$��%��a��!�%rz#SELECT * FROM Win32_OperatingSystem)�_wmirr�
exec_query)r.rOs  r�test_wmi_exec_queryr0�s'���"����T���O�O�9�:rc��ddl}d�}tj|�|jd�|jd�|j	|j
�|j
�|jd�|j|j|j��dt_	|j�|j
�y)Nrc�@�|jd�r
t|g|���yy)Nzsyslog.r�r�s  rrOztest_syslog.<locals>.hook�r�r�pythonr�test2)�	logoption�facility)
�syslogrr�openlog�
setlogmask�	LOG_DEBUG�closelog�
LOG_NDELAY�
LOG_LOCAL0�argv)r7rOs  r�test_syslogr?�s���� ����T��
�N�N�8��
�M�M�&��
���f�&�&�'�
�O�O��
�M�M�'��
�N�N�V�.�.��9J�9J�N�K��C�H�
�N�N��
�O�O�rc��ddl}d�}tj|�|j�D]}t	|t
�s�||vr�J�y)Nrc��yrrr�s rr�z test_not_in_gc.<locals>.<lambda>�s��dr)r�rrr�rD�list)r�rOris   r�test_not_in_gcrC�s?��
��D����T��
�^�^�
���a����q�=� �=�rc�p�ddl}d�}|j|�|jjddd�y)Nrc�@�|jd�r
t||�yy)Nzsys.monitoringr�r�s  rrOz3test_sys_monitoring_register_callback.<locals>.hooks �����,�-��%���.rrK)rr�
monitoring�register_callbackrs  r�%test_sys_monitoring_register_callbackrHs2�����C���T���N�N�$�$�Q��4�0rc
��ddl}d�}tj|�|j||jdddddd�y)Nrc�(�|dk(r
t||�yy)Nz_winapi.CreateNamedPipe)r�r�s  rrOz)test_winapi_createnamedpipe.<locals>.hooks���-�-��%���.rr�rL)�_winapirr�CreateNamedPipe�PIPE_ACCESS_DUPLEX)�	pipe_namerKrOs   r�test_winapi_createnamedpiperOs=�������T�����I�w�'A�'A�1�a��A�q�RS�Tr�__main__)�suppress_msvcrt_assertsrKrL)*r&�
contextlibrfrrr0r5r7rA�contextmanagerrHrPrWrYrnr{r�r�r�r�r�r�r�r�r�r�r
rrr$r+r0r?rCrHrOr#�test.supportrQr>r�globalsrrr�<module>rVs����	�
� 6� 6�H:�
@�
D�
:����@��@�0�9��2�4 �*�@()�V.�B2�&�$V�"�.�,�$�$J�,���,
�(;��*!�1�U��z��4����8�8�A�;�D��G�I�d�O�S�X�X�a�b�\�"�
r

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists