Ë
    qûàgÂ	  ã                   ó(   — d dl Z d dlZdZdd„Zdd„Zy)é    Né   c                 ó^  — t        t        j                  j                  dd«      «      }t        t        j                  j                  dd«      «      }|t        j                  «       k7  ry| r@t        j                  j                  dd«       t        j                  j                  dd«       |S )a`  
    Get the number of sockets inherited from systemd socket activation.

    :param unset_environment: clear systemd environment variables unless False
    :type unset_environment: bool
    :return: the number of sockets to inherit from systemd socket activation
    :rtype: int

    Returns zero immediately if $LISTEN_PID is not set to the current pid.
    Otherwise, returns the number of systemd activation sockets specified by
    $LISTEN_FDS.

    When $LISTEN_PID matches the current pid, unsets the environment variables
    unless the ``unset_environment`` flag is ``False``.

    .. note::
        Unlike the sd_listen_fds C function, this implementation does not set
        the FD_CLOEXEC flag because the gunicorn arbiter never needs to do this.

    .. seealso::
        `<https://www.freedesktop.org/software/systemd/man/sd_listen_fds.html>`_

    Ú
LISTEN_FDSr   Ú
LISTEN_PIDN)ÚintÚosÚenvironÚgetÚgetpidÚpop)Úunset_environmentÚfdsÚ
listen_pids      úN/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/gunicorn/systemd.pyÚ
listen_fdsr      ss   € ô0 Œb�j‰j�n‰n˜\¨1Ó-Ó
.€CÜ”R—Z‘Z—^‘^ L°!Ó4Ó5€Jà”R—Y‘Y“[Ò ØáÜ
�
‰
�‰�| TÔ*Ü
�
‰
�‰�| TÔ*à€Jó    c                 ód  — t         j                  j                  d«      }|€y	 t        j                  t        j                  t        j
                  t        j                  z  «      }|d   dk(  rd|dd z   }|j                  |«       |j                  | j                  d«      «       |rt         j                  j                  d«       j                  «        y# t        $ r |j                  dd	¬
«       Y ŒPw xY w# |rt         j                  j                  d«       j                  «        w xY w)a  Send a notification to systemd. state is a string; see
    the man page of sd_notify (http://www.freedesktop.org/software/systemd/man/sd_notify.html)
    for a description of the allowable values.

    If the unset_environment parameter is True, sd_notify() will unset
    the $NOTIFY_SOCKET environment variable before returning (regardless of
    whether the function call itself succeeded or not). Further calls to
    sd_notify() will then fail, but the variable is no longer inherited by
    child processes.
    ÚNOTIFY_SOCKETNr   ú@ú é   zutf-8z$Exception while invoking sd_notify()T)Úexc_info)r   r	   r
   ÚsocketÚAF_UNIXÚ
SOCK_DGRAMÚSOCK_CLOEXECÚconnectÚsendallÚencodeÚ	ExceptionÚdebugr   Úclose)ÚstateÚloggerr   ÚaddrÚsocks        r   Ú	sd_notifyr'   0   sä   € ô �:‰:�>‰>˜/Ó*€DØ€|àðÜ�}‰}œVŸ^™^¬V×->Ñ->Ä×ATÑATÑ-TÓUˆØ�‰7�cŠ>Ø˜$˜q˜r˜(‘?ˆDØ�‰�TÔØ�‰�U—\‘\ 'Ó*Ô+ñ Ü�J‰J�N‰N˜?Ô+Ø�
‰
�øô ò LØ�‰Ð;ÀdˆÖKðLûñ Ü�J‰J�N‰N˜?Ô+Ø�
‰
�ús$   ¤BC ÃC9Ã6C< Ã8C9Ã9C< Ã<3D/)T)F)r   r   ÚSD_LISTEN_FDS_STARTr   r'   © r   r   ú<module>r*      s   ðó
 
Û àÐ ó"ôJr   