<refname>SD_NOTICE</refname>
<refname>SD_INFO</refname>
<refname>SD_DEBUG</refname>
- <refpurpose>Reference implementation of APIs for
+ <refpurpose>APIs for
new-style daemons</refpurpose>
</refnamediv>
</funcsynopsis>
<cmdsynopsis>
- <command>pkg-config --cflags --libs libsystemd-daemon</command>
+ <command>pkg-config --cflags --libs libsystemd</command>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>Description</title>
- <para><filename>sd-daemon.c</filename> and
- <filename>sd-daemon.h</filename> provide a reference
- implementation of various APIs for new-style daemons,
- as implemented by the
+ <para><filename>sd-daemon.h</filename> provide APIs
+ for new-style daemons, as implemented by the
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
init system.</para>
<citerefentry><refentrytitle>sd_listen_fds</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_booted</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
- <citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+ <citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>sd_watchdog_enabled</refentrytitle><manvolnum>3</manvolnum></citerefentry>
for more information about the functions
- implemented. In addition to these functions a couple
+ implemented. In addition to these functions, a couple
of logging prefixes are defined as macros:</para>
<programlisting>#define SD_EMERG "<0>" /* system is unusable */
#define SD_DEBUG "<7>" /* debug-level messages */</programlisting>
<para>These prefixes are intended to be used in
- conjunction with STDERR-based logging as implemented
+ conjunction with stderr-based logging as implemented
by systemd. If a systemd service definition file is
configured with <varname>StandardError=syslog</varname>
- or <varname>StandardError=kmsg</varname> these
+ or <varname>StandardError=kmsg</varname>, these
prefixes can be used to encode a log level in lines
printed. This is similar to the kernel
<function>printk()</function>-style logging. See
<refsect1>
<title>Notes</title>
- <para>These interfaces 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. See the respective function man pages
- for details.</para>
-
- <para>In addition, for details about the algorithms
- check the liberally licensed reference implementation
- sources:
- <ulink url="http://cgit.freedesktop.org/systemd/systemd/plain/src/sd-daemon.c"/>
- resp. <ulink url="http://cgit.freedesktop.org/systemd/systemd/plain/src/systemd/sd-daemon.h"/></para>
-
- <para>These APIs 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,
- either verbatim or in excerpts.</para>
-
- <para>The functions directly related to new-style
- daemons become NOPs when -DDISABLE_SYSTEMD is set
- during compilation and the reference implementation is
- used as drop-in files. In addition, if
- <filename>sd-daemon.c</filename> is compiled on
- non-Linux systems they become NOPs.</para>
+ <para>These APIs are implemented as a shared library,
+ which can be compiled and linked to with the
+ <constant>libsystemd</constant> <citerefentry><refentrytitle>pkg-config</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+ file.</para>
</refsect1>
<refsect1>
<citerefentry><refentrytitle>sd_notify</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_booted</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_is_fifo</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>sd_watchdog_enabled</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>daemon</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.socket</refentrytitle><manvolnum>5</manvolnum></citerefentry>,