X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=man%2Fsd_listen_fds.xml;h=6999db98049f3ce55907056c46feac06f61fbb0d;hb=1b600437bac3c0676cc72f589909c4cbfe38ba10;hp=6fb8d27f24d773401af06884f7aac399964fcbfa;hpb=ad678a066b4ba5d8914dd7d5a4093572841205cf;p=elogind.git
diff --git a/man/sd_listen_fds.xml b/man/sd_listen_fds.xml
index 6fb8d27f2..6999db980 100644
--- a/man/sd_listen_fds.xml
+++ b/man/sd_listen_fds.xml
@@ -8,20 +8,21 @@
Copyright 2010 Lennart Poettering
systemd is free software; you can redistribute it and/or modify it
- under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
+ under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.
systemd is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- General Public License for more details.
+ Lesser General Public License for more details.
- You should have received a copy of the GNU General Public License
+ You should have received a copy of the GNU Lesser General Public License
along with systemd; If not, see .
-->
-
+
sd_listen_fds
@@ -44,12 +45,13 @@
sd_listen_fds
- Check for file descriptors passed by the init system.
+ SD_LISTEN_FDS_START
+ Check for file descriptors passed by the system manager
- #include "sd-daemon.h"
+ #include <systemd/sd-daemon.h>
#define SD_LISTEN_FDS_START 3
@@ -69,10 +71,10 @@
activation logic.
If the unset_environment
- parameter is non-zero
+ parameter is non-zero,
sd_listen_fds() will unset the
$LISTEN_FDS/$LISTEN_PID
- environment variables before returning (regardless
+ environment variables before returning (regardless of
whether the function call itself succeeded or
not). Further calls to
sd_listen_fds() will then fail,
@@ -82,16 +84,16 @@
If a daemon receives more than one file
descriptor, they will be passed in the same order as
configured in the systemd socket definition
- file. Nonetheless it is recommended to verify the
+ file. Nonetheless, it is recommended to verify the
correct socket types before using them. To simplify
- this checking the functions
+ this checking, the functions
sd_is_fifo3,
sd_is_socket3,
sd_is_socket_inet3,
sd_is_socket_unix3
- are provided. In order to maximize flexibility it is
+ are provided. In order to maximize flexibility, it is
recommended to make these checks as loose as possible
- without allowing incorrect setups. i.e. often the
+ without allowing incorrect setups. i.e. often, the
actual port number a socket is bound to matters little
for the service to work, hence it should not be
verified. On the other hand, whether a socket is a
@@ -111,7 +113,7 @@
$LISTEN_FDS/$LISTEN_PID
was not set or was not correctly set for this daemon and
hence no file descriptors were received, 0 is
- returned. Otherwise the number of file descriptors
+ returned. Otherwise, the number of file descriptors
passed is returned. The application may find them
starting with file descriptor SD_LISTEN_FDS_START,
i.e. file descriptor 3.
@@ -120,48 +122,23 @@
Notes
- This function is provided by the reference
- implementation of APIs for new-style daemons and
- distributed with the systemd package. The algorithm it
- implements is simple, and can easily be reimplemented
- in daemons if it is important to support this
- interface without using the reference
- implementation.
+
Internally, this function checks whether the
$LISTEN_PID environment variable
equals the daemon PID. If not, it returns
- immediately. Otherwise it parses the number passed in
+ immediately. Otherwise, it parses the number passed in
the $LISTEN_FDS environment
variable, then sets the FD_CLOEXEC flag for the parsed
number of file descriptors starting from
- SD_LISTEN_FDS_START. Finally it returns the parsed
+ SD_LISTEN_FDS_START. Finally, it returns the parsed
number.
-
- For details about the algorithm check the
- liberally licensed reference implementation sources:
-
- resp.
-
- sd_listen_fds() is
- implemented in the reference implementation's drop-in
- sd-daemon.c and
- sd-daemon.h files. It is
- recommended that applications consuming these APIs
- copy the implementation into their source tree. For
- more details about the reference implementation see
- sd_daemon7
-
- If -DDISABLE_SYSTEMD is set during compilation
- this function will always return 0 and otherwise
- become a NOP.
Environment
-
+
$LISTEN_PID
$LISTEN_FDS
@@ -183,7 +160,7 @@
systemd1,
- sd-daemon7,
+ sd-daemon3,
sd_is_fifo3,
sd_is_socket3,
sd_is_socket_inet3,