Edit File: child.cpython-36.pyc
3 �e% � @ s, d Z ddlmZmZmZmZmZmZmZm Z m Z mZmZm Z ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZ dd lZdd lZyed �ZW n ek r� dZY nX G dd � d e�ZG dd� de�Zdd� Z dd� Z!dd� Z"dd� Z#dd� Z$df fdd�Z%dd� Z&d df fdd �Z'd S )!zL Error pipe and serialization code comes from Python 2.5 subprocess module. � )�fork�execvp�execvpe�waitpid�close�dup2�pipe�read�write�devnull�sysconf�set_inheritable)�exc_info)�format_exception)�ptrace_traceme)�PtraceError)�exit)�EINTRN�SC_OPEN_MAX� c @ s e Zd ZdS )� ChildErrorN)�__name__� __module__�__qualname__� r r �>/tmp/pip-build-uv1wutoy/python-ptrace/ptrace/debugger/child.pyr s r c @ s e Zd ZdS )�ChildPtraceErrorN)r r r r r r r r s r c C sJ y t j}W n tk r" d}Y nX t j | t j�}t j | t j||B � d S )N� )�fcntl� FD_CLOEXEC�AttributeError�F_GETFD�F_SETFD)�fdZcloexec_flag�oldr r r �_set_cloexec_flag s r% c C sH xBy t | |�S tk r> } z|jtkr,wn� W Y dd}~X qX qW dS )z%Like os.waitpid, but retries on EINTRN)r �OSError�errnor )�pid�options�er r r �_waitpid_no_intr) s r+ c C sH xBy t | |�S tk r> } z|jtkr,wn� W Y dd}~X qX qW dS )z"Like os.read, but retries on EINTRN)r r&