CasperSecurity

Current Path : /lib/python3.10/distutils/__pycache__/
Upload File :
Current File : //lib/python3.10/distutils/__pycache__/spawn.cpython-310.pyc

o

��bc4�@sndZddlZddlZddlZddlmZmZddlmZddl	m
Z
ejdkr+dada
ddd	�Zd
d
d�ZdS)z�distutils.spawn

Provides the 'spawn()' function, a front-end to various platform-
specific functions for launching another program in a sub-process.
Also provides the 'find_executable()' to search the path for a given
executable name.
�N)�DistutilsPlatformError�DistutilsExecError)�DEBUG)�log�darwin�c

Cszt|�}t�d�|��|rdS|r t|d�}|dur ||d<d}tjdkr|tdurDddlm	}|�
d�p7datrDdd	�t�d
�D�atr|t
j�dt�}dd	�|�d
�D�}tdd�d
dgkru|dd�d
dgkrud|tf}	t|	��tt
j|d�}ztj||d�}
|
��|
j}Wnty�}zts�|d}td||jdf�|�d}~ww|r�ts�|d}td||f��dS)a�Run another program, specified as a command list 'cmd', in a new process.

    'cmd' is just the argument list for the new process, ie.
    cmd[0] is the program to run and cmd[1:] are the rest of its arguments.
    There is no way to run a program with a name different from that of its
    executable.

    If 'search_path' is true (the default), the system's executable
    search path will be used to find the program; otherwise, cmd[0]
    must be the exact path to the executable.  If 'dry_run' is true,
    the command will not actually be run.

    Raise DistutilsExecError if running the program fails in any way; just
    return on success.
    � Nrr)�	sysconfig�MACOSX_DEPLOYMENT_TARGET�cS�g|]}t|��qS���int��.0�xr
r
�&/usr/lib/python3.10/distutils/spawn.py�
<listcomp><�zspawn.<locals>.<listcomp>�.cSrr
rrr
r
rrDr��
�z]$MACOSX_DEPLOYMENT_TARGET mismatch: now "%s" but "%s" during configure;must use 10.3 or later)r
)�envzcommand %r failed: %s���z#command %r failed with exit code %s)�listr�info�join�find_executable�sys�platform�_cfg_target�	distutilsr	�get_config_var�split�_cfg_target_split�os�environ�getr�dict�
subprocess�Popen�wait�
returncode�OSErrorrr�args)
�cmd�search_path�verbose�dry_run�
executablerr	�
cur_target�cur_target_split�my_msg�proc�exitcode�excr
r
r�spawnsf
��(��
����
��r<c	Cs�tj�|�\}}tjdkr|dkr|d}tj�|�r|S|durBtj�dd�}|durBzt�d�}Wnt	t
fyAtj}Ynw|sFdS|�tj
�}|D]}tj�||�}tj�|�ra|SqNdS)z�Tries to find 'executable' in the directories listed in 'path'.

    A string listing directories separated by 'os.pathsep'; defaults to
    os.environ['PATH'].  Returns the complete filename or None if not found.
    �win32z.exeN�PATH�CS_PATH)r'�path�splitextr r!�isfiler(r)�confstr�AttributeError�
ValueError�defpathr%�pathsepr)r5r@�_�ext�paths�p�fr
r
rr_s,
��r)rrr)N)�__doc__r r'r+�distutils.errorsrr�distutils.debugrr#rr!r"r&r<rr
r
r
r�<module>s

H
Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY