HEX
Server: LiteSpeed
System: Linux s1049.use1.mysecurecloudhost.com 4.18.0-477.27.2.lve.el8.x86_64 #1 SMP Wed Oct 11 12:32:56 UTC 2023 x86_64
User: xedaptot (3356)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: //lib/python3.6/site-packages/supervisor/__pycache__/pidproxy.cpython-36.pyc
3

�k�`O�@sLdZddlZddlZddlZddlZGdd�d�Zdd�ZedkrHe�dS)z{ An executable which proxies for a subprocess; upon a signal, it sends that
signal to the process identified by a pidfile. �Nc@s@eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dS)�PidProxyNcCsl|j�y4|d|dd�|_}tjj|d�|_||_Wn*ttfk
rf|j	�t
jd�YnXdS)N��r)�
setsignals�pidfile�os�path�abspath�command�cmdargs�
ValueError�
IndexError�usage�sys�exit)�self�argsr�r�/usr/lib/python3.6/pidproxy.py�__init__
s
zPidProxy.__init__cCs`tjtj|j|j�|_xDtjd�ytjdtj	�d}Wnt
k
rPd}YnX|rPqWdS)N�rr���)r�spawnv�P_NOWAITr
r�pid�timeZsleep�waitpid�WNOHANG�OSError)rrrrr�gos

zPidProxy.gocCstd�dS)Nz4pidproxy.py <pidfile name> <command> [<cmdarg1> ...])�print)rrrrr"szPidProxy.usagecCsttjtj|j�tjtj|j�tjtj|j�tjtj|j�tjtj|j�tjtj|j�tjtj|j	�dS)N)
�signal�SIGTERM�passtochild�SIGHUP�SIGINT�SIGUSR1�SIGUSR2�SIGQUIT�SIGCHLD�reap)rrrrr%szPidProxy.setsignalscCsdS)Nr)r�sig�framerrrr*.sz
PidProxy.reapcCsty,t|jd��}t|j�j��}WdQRXWntd|j�dStj||�|tj	tj
tjgkrptj
d�dS)N�rzCan't read child pidfile %s!r)�openr�int�read�stripr r�killr!r"r%r(rr)rr+r,�frrrrr#2szPidProxy.passtochild)
�__name__�
__module__�__qualname__rrrrrr*r#rrrrrs
	rcCsttj�}|j�dS)N)rr�argvr)Zpprrr�main=s
r8�__main__)�__doc__rrr!rrr8r4rrrr�<module>s2