3
��X� � @ s� d dl mZ ddlmZmZmZmZmZm Z m
Z
mZmZm
Z
mZ dd� Zddd�Zed dfd d
�Zed dd fdd�Zdd
d�Zddd�Zddd�Zddd�ZdS )� )� AF_UNSPEC� )�__version__�booted�notify�_listen_fds�_is_fifo�
_is_socket�_is_socket_inet�_is_socket_sockaddr�_is_socket_unix�_is_mq�LISTEN_FDS_STARTc C s" y| j � S tk
r | S X d S )N)�fileno�AttributeError)�fileobj� r �/usr/lib64/python3.6/daemon.py�_convert_fileobj s r Nc C s t | �}t||�S )N)r r )r �path�fdr r r �is_fifo s r c C s t | �}t||||�S )N)r r )r �family�type� listeningr r r r � is_socket s r c C s t | �}t|||||�S )N)r r
)r r r r Zportr r r r �is_socket_inet s r c C s t | �}t|||||�S )aa Check socket type, address and/or port, flowinfo, listening state.
Wraps sd_is_socket_inet_sockaddr(3).
`address` is a systemd-style numerical IPv4 or IPv6 address as used in
ListenStream=. A port may be included after a colon (":").
See systemd.socket(5) for details.
Constants for `family` are defined in the socket module.
)r r )r Zaddressr Zflowinfor r r r r �is_socket_sockaddr! s r c C s t | �}t||||�S )N)r r )r r r r r r r r �is_socket_unix/ s r c C s t | �}t||�S )N)r r
)r r r r r r �is_mq3 s r Tc C s t | �}tttt| ��S )aS Return a list of socket activated descriptors
Example::
(in primary window)
$ systemd-activate -l 2000 python3 -c \
'from systemd.daemon import listen_fds; print(listen_fds())'
(in another window)
$ telnet localhost 2000
(in primary window)
...
Execing python3 (...)
[3]
)r �list�ranger )Zunset_environmentZnumr r r �
listen_fds7 s r" )N�����r# r# )r r r# r# )r r# N)N)T)Zsocketr Z
_AF_UNSPECZ_daemonr r r r r r r
r r r
r r r r r r r r r" r r r r �