HEX
Server: LiteSpeed
System: Linux php-prod-1.spaceapp.ru 5.15.0-157-generic #167-Ubuntu SMP Wed Sep 17 21:35:53 UTC 2025 x86_64
User: sport3497 (1034)
PHP: 8.1.33
Disabled: NONE
Upload Files
File: //usr/local/CyberCP/lib64/python3.10/site-packages/uvicorn/__pycache__/workers.cpython-310.pyc
o

�h7�@s�ddlmZddlZddlZddlZddlZddlZddlmZddl	m
Z
ddlmZddl
mZddlmZe�de�Gd	d
�d
e�ZGdd�de�ZdS)
�)�annotationsN)�Any)�Arbiter)�Worker)�Config)�Serverz�The `uvicorn.workers` module is deprecated. Please use `uvicorn-worker` package instead.
For more details, see https://github.com/Kludex/uvicorn-worker.csveZdZUdZddd�Zded<d�fdd�Zd�fd
d�Zddd�Zddd�Z	ddd�Z
ddd�Zddd�Z�Z
S)�
UvicornWorkerzv
    A worker class for Gunicorn that interfaces with an ASGI consumer callable,
    rather than a WSGI callable.
    �auto��loop�httpzdict[str, Any]�
CONFIG_KWARGS�argsr�kwargs�return�Nonec	s8t�j|i|��t�d�}|jjj|_|�|jjj�d|_	t�d�}|jj
j|_|�|jj
j�d|_	dd|jj|j
|j|j|jjd�}|jjr||jj�d�|jj�d�|jj�d�|jj�d�|jj�d	�|jj�d
�|jj�d�d�}|�|�|jjd
jr�|jjd
j|d
<|�|j�tdi|��|_dS)Nz
uvicorn.errorFzuvicorn.access)�app�
log_config�timeout_keep_alive�timeout_notify�callback_notify�limit_max_requests�forwarded_allow_ips�keyfile�certfile�password�ssl_version�	cert_reqs�ca_certs�ciphers)�ssl_keyfile�ssl_certfile�ssl_keyfile_passwordr�
ssl_cert_reqs�ssl_ca_certs�ssl_ciphers�backlog�)�super�__init__�logging�	getLogger�log�	error_log�handlers�setLevel�level�	propagate�
access_log�cfg�	keepalive�timeoutr�max_requestsr�is_ssl�ssl_options�get�update�settings�valuer
r�config)�selfrr�logger�
config_kwargs�
ssl_kwargs��	__class__r'�B/usr/local/CyberCP/lib/python3.10/site-packages/uvicorn/workers.pyr)s>

�
�
	zUvicornWorker.__init__cs|j��t���dS�N)r=�setup_event_loopr(�init_process�r>rBr'rDrGIs
zUvicornWorker.init_processcCs<|jD]	}t�|tj�qt�tj|j�t�tjd�dS)NF)�SIGNALS�signal�SIG_DFL�SIGUSR1�handle_usr1�siginterrupt)r>�sr'r'rD�init_signalsMs
zUvicornWorker.init_signalscCs"t��}|�tj|jtjd�dS)z�Install a SIGQUIT handler on workers.

        - https://github.com/encode/uvicorn/issues/1116
        - https://github.com/benoitc/gunicorn/issues/2604
        N)�asyncio�get_running_loop�add_signal_handlerrJ�SIGQUIT�handle_exit)r>rr'r'rD�_install_sigquit_handlerXsz&UvicornWorker._install_sigquit_handlerc�sN�|j|j_t|jd�}|��|j|jd�IdH|js%t�	t
j�dSdS)N)r=)�sockets)�wsgir=rrrV�serverW�started�sys�exitr�WORKER_BOOT_ERROR)r>�serverr'r'rD�_servebs�
�zUvicornWorker._servecCst�|���SrE)rQ�runr_rHr'r'rDr`jszUvicornWorker.runc�s�|��dSrE)�notifyrHr'r'rDrms�zUvicornWorker.callback_notify)rrrrrr)rr)�__name__�
__module__�__qualname__�__doc__r
�__annotations__r)rGrPrVr_r`r�
__classcell__r'r'rBrDrs
*




rc@seZdZddd�ZdS)�UvicornH11WorkerrQ�h11r
N)rbrcrdr
r'r'r'rDrhqsrh)�
__future__rrQr*rJr[�warnings�typingr�gunicorn.arbiterr�gunicorn.workers.baser�uvicorn.configr�uvicorn.serverr�warn�DeprecationWarningrrhr'r'r'rD�<module>s"�Z