summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2020-04-12 17:05:05 +0200
committerGitHub <noreply@github.com>2020-04-12 17:05:05 +0200
commitb15b4376af36ea620bb3dd130a3dab31f3db6daf (patch)
tree90b019e9e0e0e70bae98afd846caf19cc2168d39
parente5a12c49616933301596a13d0646a000428f7ce6 (diff)
parent3258aa750e3a5872c0e27ffff3d922607cfe688d (diff)
downloadsystemd-b15b4376af36ea620bb3dd130a3dab31f3db6daf.tar.gz
Merge pull request #15405 from DaanDeMeyer/sd-bus-can-send-docs
Add sd_bus_can_send docs
-rw-r--r--man/rules/meson.build1
-rw-r--r--man/sd-bus.xml1
-rw-r--r--man/sd_bus_can_send.xml93
-rw-r--r--man/sd_bus_close.xml50
-rwxr-xr-xtools/meson-check-api-docs.sh9
5 files changed, 131 insertions, 23 deletions
diff --git a/man/rules/meson.build b/man/rules/meson.build
index 386ca629fd..0df4a889a7 100644
--- a/man/rules/meson.build
+++ b/man/rules/meson.build
@@ -146,6 +146,7 @@ manpages = [
'sd_bus_call_method_asyncv',
'sd_bus_call_methodv'],
''],
+ ['sd_bus_can_send', '3', [], ''],
['sd_bus_close', '3', ['sd_bus_default_flush_close', 'sd_bus_flush'], ''],
['sd_bus_creds_get_pid',
'3',
diff --git a/man/sd-bus.xml b/man/sd-bus.xml
index c70e9e1787..8c05e33512 100644
--- a/man/sd-bus.xml
+++ b/man/sd-bus.xml
@@ -50,6 +50,7 @@
<citerefentry><refentrytitle>sd_bus_call_async</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_bus_call_method</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_bus_call_method_async</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
+<citerefentry><refentrytitle>sd_bus_can_send</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_bus_creds_get_pid</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_bus_creds_new_from_pid</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_bus_close</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
diff --git a/man/sd_bus_can_send.xml b/man/sd_bus_can_send.xml
new file mode 100644
index 0000000000..ba2a180ee2
--- /dev/null
+++ b/man/sd_bus_can_send.xml
@@ -0,0 +1,93 @@
+<?xml version='1.0'?>
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+ "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+<!-- SPDX-License-Identifier: LGPL-2.1+ -->
+
+<refentry id="sd_bus_can_send"
+ xmlns:xi="http://www.w3.org/2001/XInclude">
+
+ <refentryinfo>
+ <title>sd_bus_can_send</title>
+ <productname>systemd</productname>
+ </refentryinfo>
+
+ <refmeta>
+ <refentrytitle>sd_bus_can_send</refentrytitle>
+ <manvolnum>3</manvolnum>
+ </refmeta>
+
+ <refnamediv>
+ <refname>sd_bus_can_send</refname>
+
+ <refpurpose>Check which types can be sent over a bus object</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <funcsynopsis>
+ <funcsynopsisinfo>#include &lt;systemd/sd-bus.h&gt;</funcsynopsisinfo>
+
+ <funcprototype>
+ <funcdef>void <function>sd_bus_can_send</function></funcdef>
+ <paramdef>sd_bus *<parameter>bus</parameter></paramdef>
+ <paramdef>char <parameter>type</parameter></paramdef>
+ </funcprototype>
+ </funcsynopsis>
+ </refsynopsisdiv>
+
+ <refsect1>
+ <title>Description</title>
+
+ <para><function>sd_bus_can_send</function> is mostly used for checking if file descriptor
+ passing is available on the given bus. <parameter>type</parameter> can be any of the
+ <constant>SD_BUS_TYPE</constant> constants.</para>
+ </refsect1>
+
+ <refsect1>
+ <title>Return Value</title>
+
+ <para>On failure, <function>sd_bus_can_send()</function> returns a negative errno-style error
+ code. If values of the given type can be sent over the given bus, it returns a positive integer.
+ Otherwise, it returns zero.</para>
+
+ <refsect2>
+ <title>Errors</title>
+
+ <para>Returned errors may indicate the following problems:</para>
+
+ <variablelist>
+ <varlistentry>
+ <term><constant>-ENOPKG</constant></term>
+
+ <listitem><para>The bus object <parameter>bus</parameter> could not be resolved.</para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><constant>-ENOTCONN</constant></term>
+
+ <listitem><para>The input parameter <parameter>bus</parameter> is
+ <constant>NULL</constant> or the bus is not connected.</para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><constant>-ECHILD</constant></term>
+
+ <listitem><para>The bus object <parameter>bus</parameter> was created in a different
+ process.</para></listitem>
+ </varlistentry>
+ </variablelist>
+ </refsect2>
+ </refsect1>
+
+ <xi:include href="libsystemd-pkgconfig.xml" />
+
+ <refsect1>
+ <title>See Also</title>
+
+ <para>
+ <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>sd-bus</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+ </para>
+ </refsect1>
+
+</refentry>
diff --git a/man/sd_bus_close.xml b/man/sd_bus_close.xml
index 953f16ac34..8d9bdb4858 100644
--- a/man/sd_bus_close.xml
+++ b/man/sd_bus_close.xml
@@ -48,39 +48,44 @@
<refsect1>
<title>Description</title>
- <para><function>sd_bus_close()</function> disconnects the specified bus connection. When this call is invoked and
- the specified bus object refers to an active connection it is immediately terminated. No further messages may be
- sent or received on it. Any messages queued in the bus object (both incoming and outgoing) are released. If
- invoked on <constant>NULL</constant> bus object or when the bus connection is already closed this function executes
- no operation. This call does not free or unreference the bus object itself. Use
- <citerefentry><refentrytitle>sd_bus_unref</refentrytitle><manvolnum>3</manvolnum></citerefentry> for that.</para>
-
- <para><function>sd_bus_flush()</function> synchronously writes out all outgoing queued message on a bus connection
- if there are any. This function call may block if the peer is not processing bus messages quickly.</para>
+ <para><function>sd_bus_close()</function> disconnects the specified bus connection. When this
+ call is invoked and the specified bus object refers to an active connection it is immediately
+ terminated. No further messages may be sent or received on it. Any messages queued in the bus
+ object (both incoming and outgoing) are released. If invoked on <constant>NULL</constant> bus
+ object or when the bus connection is already closed this function executes no operation. This
+ call does not free or unreference the bus object itself. Use
+ <citerefentry><refentrytitle>sd_bus_unref</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+ for that.</para>
+
+ <para><function>sd_bus_flush()</function> synchronously writes out all outgoing queued message
+ on a bus connection if there are any. This function call may block if the peer is not processing
+ bus messages quickly.</para>
<para>Before a program exits it is usually a good idea to flush any pending messages with
- <function>sd_bus_flush()</function> and then close connections with <function>sd_bus_close()</function> to ensure
- that no unwritten messages are lost, no further messages may be queued and all incoming but unprocessed messages
- are released. After both operations have been done, it is a good idea to also drop any remaining references to the
- bus object so that it may be freed. Since these three operations are frequently done together a helper call
- <citerefentry><refentrytitle>sd_bus_flush_close_unref</refentrytitle><manvolnum>3</manvolnum></citerefentry> is
- provided that combines them into one.</para>
+ <function>sd_bus_flush()</function> and then close connections with
+ <function>sd_bus_close()</function> to ensure that no unwritten messages are lost, no further
+ messages may be queued and all incoming but unprocessed messages are released. After both
+ operations have been done, it is a good idea to also drop any remaining references to the bus
+ object so that it may be freed. Since these three operations are frequently done together a
+ helper call
+ <citerefentry><refentrytitle>sd_bus_flush_close_unref</refentrytitle><manvolnum>3</manvolnum></citerefentry>
+ is provided that combines them into one.</para>
<para><function>sd_bus_default_flush_close()</function> is similar to
- <function>sd_bus_flush_close_unref</function>, but does not take a bus pointer argument and instead
- iterates over any of the "default" busses opened by
+ <function>sd_bus_flush_close_unref</function>, but does not take a bus pointer argument and
+ instead iterates over any of the "default" busses opened by
<citerefentry><refentrytitle>sd_bus_default</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_bus_default_user</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd_bus_default_system</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
- and similar calls. <function>sd_bus_default_flush_close()</function> is particularly useful to clean up
- any busses opened using those calls before the program exits.</para>
+ and similar calls. <function>sd_bus_default_flush_close()</function> is particularly useful to
+ clean up any busses opened using those calls before the program exits.</para>
</refsect1>
<refsect1>
<title>Return Value</title>
- <para>On success, <function>sd_bus_flush()</function> returns 0 or a positive integer. On failure, it returns a
- negative errno-style error code.</para>
+ <para>On success, <function>sd_bus_flush()</function> returns a non-negative integer. On
+ failure, it returns a negative errno-style error code.</para>
<refsect2>
<title>Errors</title>
@@ -91,7 +96,8 @@
<varlistentry>
<term><constant>-ECHILD</constant></term>
- <listitem><para>The bus connection has been created in a different process.</para></listitem>
+ <listitem><para>The bus connection has been created in a different process.</para>
+ </listitem>
</varlistentry>
</variablelist>
</refsect2>
diff --git a/tools/meson-check-api-docs.sh b/tools/meson-check-api-docs.sh
index c33672934d..2ba5010876 100755
--- a/tools/meson-check-api-docs.sh
+++ b/tools/meson-check-api-docs.sh
@@ -6,7 +6,14 @@ sd_total=0
udev_good=0
udev_total=0
-for symbol in `nm -g --defined-only "$@" | grep " T " | cut -d" " -f3 | grep -wv sd_bus_try_close | sort -u` ; do
+deprecated="
+ -e sd_bus_try_close
+ -e sd_bus_process_priority
+ -e sd_bus_message_get_priority
+ -e sd_bus_message_set_priority
+"
+
+for symbol in `nm -g --defined-only "$@" | grep " T " | cut -d" " -f3 | grep -wv $deprecated | sort -u` ; do
if test -f ${MESON_BUILD_ROOT}/man/$symbol.3 ; then
echo "✓ Symbol $symbol() is documented."
good=1