<function>sd_listen_fds()</function> will unset the
<varname>$LISTEN_FDS</varname>/<varname>$LISTEN_PID</varname>
<function>sd_listen_fds()</function> will unset the
<varname>$LISTEN_FDS</varname>/<varname>$LISTEN_PID</varname>
whether the function call itself succeeded or
not). Further calls to
<function>sd_listen_fds()</function> will then fail,
whether the function call itself succeeded or
not). Further calls to
<function>sd_listen_fds()</function> will then fail,
<para>If a daemon receives more than one file
descriptor, they will be passed in the same order as
configured in the systemd socket definition
<para>If a daemon receives more than one file
descriptor, they will be passed in the same order as
configured in the systemd socket definition
<citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_is_socket</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_is_socket_inet</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_is_socket_unix</refentrytitle><manvolnum>3</manvolnum></citerefentry>
<citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_is_socket</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_is_socket_inet</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_is_socket_unix</refentrytitle><manvolnum>3</manvolnum></citerefentry>
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
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
<varname>$LISTEN_FDS</varname>/<varname>$LISTEN_PID</varname>
was not set or was not correctly set for this daemon and
hence no file descriptors were received, 0 is
<varname>$LISTEN_FDS</varname>/<varname>$LISTEN_PID</varname>
was not set or was not correctly set for this daemon and
hence no file descriptors were received, 0 is
passed is returned. The application may find them
starting with file descriptor SD_LISTEN_FDS_START,
i.e. file descriptor 3.</para>
passed is returned. The application may find them
starting with file descriptor SD_LISTEN_FDS_START,
i.e. file descriptor 3.</para>
<para>Internally, this function checks whether the
<varname>$LISTEN_PID</varname> environment variable
equals the daemon PID. If not, it returns
<para>Internally, this function checks whether the
<varname>$LISTEN_PID</varname> environment variable
equals the daemon PID. If not, it returns
the <varname>$LISTEN_FDS</varname> environment
variable, then sets the FD_CLOEXEC flag for the parsed
number of file descriptors starting from
the <varname>$LISTEN_FDS</varname> environment
variable, then sets the FD_CLOEXEC flag for the parsed
number of file descriptors starting from
url="http://cgit.freedesktop.org/systemd/systemd/plain/src/systemd/sd-daemon.h"/></para>
<para><function>sd_listen_fds()</function> is
implemented in the reference implementation's
<filename>sd-daemon.c</filename> and
<filename>sd-daemon.h</filename> files. These
url="http://cgit.freedesktop.org/systemd/systemd/plain/src/systemd/sd-daemon.h"/></para>
<para><function>sd_listen_fds()</function> is
implemented in the reference implementation's
<filename>sd-daemon.c</filename> and
<filename>sd-daemon.h</filename> files. These
file. Alternatively, applications consuming these APIs
may copy the implementation into their source
tree. For more details about the reference
file. Alternatively, applications consuming these APIs
may copy the implementation into their source
tree. For more details about the reference
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
<para>If the reference implementation is used as
drop-in files and -DDISABLE_SYSTEMD is set during
<citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
<para>If the reference implementation is used as
drop-in files and -DDISABLE_SYSTEMD is set during