File: //usr/lib/python3/dist-packages/samba/tests/__pycache__/segfault.cpython-310.pyc
o
�Kya � @ s� d Z ddlZddlZddlZddlmZmZ ddlm Z ddlm
Z
mZ ddlm
Z
mZmZmZmZ ddlmZmZ ddlmZ dd lmZ dd
lmZ ddlmZ ddlmZ ddlZd
d� Zdd� ZG dd� dejj�ZdS )zHTest whether various python calls segfault when given unexpected input.
� N)�Net�LIBNET_JOIN_AUTOMATIC)�DONT_USE_KERBEROS)�
NTSTATUSError�ntstatus)�misc�drsuapi�samr�unixinfo� dnsserver)�auth�gensec)�SamDB)�netbios)�registry)�ldb)� messagingc s � fdd�}|S )Nc
s� t �� }|dkr7z � | i |�� W n ty' } z
t�� W Y d }~nd }~ww tj�� tj�� t � d� t �
|d�\}}t �|�rOt �|�}t
d| ��d S )Nr zFailed with signal %d)�os�fork� Exception� traceback� print_exc�sys�stderr�flush�stdout�_exit�waitpid�WIFSIGNALED�WTERMSIG�AssertionError)�args�kwargs�pid�e�pid2�status�signal��f� �6/usr/lib/python3/dist-packages/samba/tests/segfault.py�wrapper( s ��
�z"segfault_detector.<locals>.wrapperr* )r) r, r* r( r+ �segfault_detector'