summaryrefslogtreecommitdiff
path: root/man/sd_is_fifo.xml
diff options
context:
space:
mode:
Diffstat (limited to 'man/sd_is_fifo.xml')
-rw-r--r--man/sd_is_fifo.xml217
1 files changed, 0 insertions, 217 deletions
diff --git a/man/sd_is_fifo.xml b/man/sd_is_fifo.xml
deleted file mode 100644
index 595c8f112d..0000000000
--- a/man/sd_is_fifo.xml
+++ /dev/null
@@ -1,217 +0,0 @@
-<?xml version='1.0'?> <!--*-nxml-*-->
-<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
- "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
-
-<!--
- This file is part of systemd.
-
- Copyright 2010 Lennart Poettering
-
- systemd is free software; you can redistribute it and/or modify it
- 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
- Lesser General Public License for more details.
-
- You should have received a copy of the GNU Lesser General Public License
- along with systemd; If not, see <http://www.gnu.org/licenses/>.
--->
-
-<refentry id="sd_is_fifo">
-
- <refentryinfo>
- <title>sd_is_fifo</title>
- <productname>systemd</productname>
-
- <authorgroup>
- <author>
- <contrib>Developer</contrib>
- <firstname>Lennart</firstname>
- <surname>Poettering</surname>
- <email>lennart@poettering.net</email>
- </author>
- </authorgroup>
- </refentryinfo>
-
- <refmeta>
- <refentrytitle>sd_is_fifo</refentrytitle>
- <manvolnum>3</manvolnum>
- </refmeta>
-
- <refnamediv>
- <refname>sd_is_fifo</refname>
- <refname>sd_is_socket</refname>
- <refname>sd_is_socket_inet</refname>
- <refname>sd_is_socket_unix</refname>
- <refname>sd_is_mq</refname>
- <refpurpose>Check the type of a file descriptor</refpurpose>
- </refnamediv>
-
- <refsynopsisdiv>
- <funcsynopsis>
- <funcsynopsisinfo>#include &lt;systemd/sd-daemon.h&gt;</funcsynopsisinfo>
-
- <funcprototype>
- <funcdef>int <function>sd_is_fifo</function></funcdef>
- <paramdef>int <parameter>fd</parameter></paramdef>
- <paramdef>const char *<parameter>path</parameter></paramdef>
- </funcprototype>
-
- <funcprototype>
- <funcdef>int <function>sd_is_socket</function></funcdef>
- <paramdef>int <parameter>fd</parameter></paramdef>
- <paramdef>int <parameter>family</parameter></paramdef>
- <paramdef>int <parameter>type</parameter></paramdef>
- <paramdef>int <parameter>listening</parameter></paramdef>
- </funcprototype>
-
- <funcprototype>
- <funcdef>int <function>sd_is_socket_inet</function></funcdef>
- <paramdef>int <parameter>fd</parameter></paramdef>
- <paramdef>int <parameter>family</parameter></paramdef>
- <paramdef>int <parameter>type</parameter></paramdef>
- <paramdef>int <parameter>listening</parameter></paramdef>
- <paramdef>uint16_t <parameter>port</parameter></paramdef>
- </funcprototype>
-
- <funcprototype>
- <funcdef>int <function>sd_is_socket_unix</function></funcdef>
- <paramdef>int <parameter>fd</parameter></paramdef>
- <paramdef>int <parameter>type</parameter></paramdef>
- <paramdef>int <parameter>listening</parameter></paramdef>
- <paramdef>const char* <parameter>path</parameter></paramdef>
- <paramdef>size_t <parameter>length</parameter></paramdef>
- </funcprototype>
-
- <funcprototype>
- <funcdef>int <function>sd_is_mq</function></funcdef>
- <paramdef>int <parameter>fd</parameter></paramdef>
- <paramdef>const char *<parameter>path</parameter></paramdef>
- </funcprototype>
-
- </funcsynopsis>
- </refsynopsisdiv>
-
- <refsect1>
- <title>Description</title>
-
- <para><function>sd_is_fifo()</function> may be called
- to check whether the specified file descriptor refers
- to a FIFO or pipe. If the <parameter>path</parameter>
- parameter is not NULL, it is checked whether the FIFO
- is bound to the specified file system path.</para>
-
- <para><function>sd_is_socket()</function> may be
- called to check whether the specified file descriptor
- refers to a socket. If the
- <parameter>family</parameter> parameter is not
- AF_UNSPEC it is checked whether the socket is of the
- specified family (AF_UNIX, AF_INET, ...). If the
- <parameter>type</parameter> parameter is not 0 it is
- checked whether the socket is of the specified type
- (SOCK_STREAM, SOCK_DGRAM, ...). If the
- <parameter>listening</parameter> parameter is positive
- it is checked whether the socket is in accepting mode,
- i.e. <function>listen()</function> has been called for
- it. If <parameter>listening</parameter> is 0, it is
- checked whether the socket is not in this mode. If the
- parameter is negative, no such check is made. The
- <parameter>listening</parameter> parameter should only
- be used for stream sockets and should be set to a
- negative value otherwise.</para>
-
- <para><function>sd_is_socket_inet()</function> is
- similar to <function>sd_is_socket()</function>, but
- optionally checks the IPv4 or IPv6 port number the
- socket is bound to, unless <parameter>port</parameter>
- is zero. For this call <parameter>family</parameter>
- must be passed as either AF_UNSPEC, AF_INET, or
- AF_INET6.</para>
-
- <para><function>sd_is_socket_unix()</function> is
- similar to <function>sd_is_socket()</function>, but
- optionally checks the AF_UNIX path the socket is bound
- to, unless the <parameter>path</parameter> parameter
- is NULL. For normal file system AF_UNIX sockets set
- the <parameter>length</parameter> parameter to 0. For
- Linux abstract namespace sockets set the
- <parameter>length</parameter> to the size of the
- address, including the initial 0 byte and set
- <parameter>path</parameter> to the initial 0 byte of
- the socket address.</para>
-
- <para><function>sd_is_mq()</function> may be called to
- check whether the specified file descriptor refers to
- a POSIX message queue. If the
- <parameter>path</parameter> parameter is not NULL, it
- is checked whether the message queue is bound to the
- specified name.</para>
- </refsect1>
-
- <refsect1>
- <title>Return Value</title>
-
- <para>On failure, these calls return a negative
- errno-style error code. If the file descriptor is of
- the specified type and bound to the specified address
- a positive return value is returned, otherwise
- zero.</para>
- </refsect1>
-
- <refsect1>
- <title>Notes</title>
-
- <para>These functions are provided by the reference
- implementation of APIs for new-style daemons and
- distributed with the systemd package. The algorithms
- they implement are simple, and can easily be
- reimplemented in daemons if it is important to support
- this interface without using the reference
- implementation.</para>
-
- <para>Internally, these function use a combination of
- <filename>fstat()</filename> and
- <filename>getsockname()</filename> to check the file
- descriptor type and where it is bound to.</para>
-
- <para>For details about the algorithms check the
- liberally licensed reference implementation sources:
- <ulink url="http://cgit.freedesktop.org/systemd/systemd/plain/src/libsystemd-daemon/sd-daemon.c"/>
- and <ulink
- url="http://cgit.freedesktop.org/systemd/systemd/plain/src/systemd/sd-daemon.h"/></para>
-
- <para><function>sd_is_fifo()</function> and the
- related functions are implemented in the reference
- implementation's <filename>sd-daemon.c</filename> and
- <filename>sd-daemon.h</filename> files. These
- interfaces are available as shared library, which can
- be compiled and linked to with the
- <literal>libsystemd-daemon</literal>
- <citerefentry><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
- file. Alternatively, applications consuming these APIs
- may copy the implementation into their source
- tree. For more details about the reference
- implementation see
- <citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para>
-
- <para>These functions continue to work as described,
- even if -DDISABLE_SYSTEMD is set during
- compilation.</para>
- </refsect1>
-
- <refsect1>
- <title>See Also</title>
- <para>
- <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>sd-daemon</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>sd_listen_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>
- </para>
- </refsect1>
-
-</refentry>