X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fsd_bus_negotiate_fds.xml;h=61c972008bebaa872790cab9bf1707e34c47e079;hp=26a599e7d3c7eaa0ac765543a9c5dc4c976fba76;hb=9742b1e43855b1599bd52ff95af995d9a9d35eac;hpb=5de0ccffcc4a5a946102a14e0b0e681d964e3225
diff --git a/man/sd_bus_negotiate_fds.xml b/man/sd_bus_negotiate_fds.xml
index 26a599e7d..61c972008 100644
--- a/man/sd_bus_negotiate_fds.xml
+++ b/man/sd_bus_negotiate_fds.xml
@@ -21,7 +21,7 @@
along with systemd; If not, see .
-->
-
+
sd_bus_negotiate_fds
@@ -44,7 +44,7 @@
sd_bus_negotiate_fds
- sd_bus_negotiate_timestamps
+ sd_bus_negotiate_timestamp
sd_bus_negotiate_creds
Control feature negotiation on bus connections
@@ -70,7 +70,7 @@
int sd_bus_negotiate_creds
sd_bus *bus
int b
- uint64_t flags
+ uint64_t mask
@@ -81,10 +81,11 @@
sd_bus_negotiate_fds() controls whether
file descriptor passing shall be negotiated for the specified bus
connection. It takes a bus object and a boolean, which, when true,
- enables file descriptor passing, and, when false, disables it. Note
- that not all transports and servers support file descriptor
- passing. To find out whether file descriptor passing is available
- after negotiation, use
+ enables file descriptor passing, and, when false, disables
+ it. Note that not all transports and servers support file
+ descriptor passing. In particular, networked transports generally
+ do not support file descriptor passing. To find out whether file
+ descriptor passing is available after negotiation, use
sd_bus_can_send3
and pass SD_BUS_TYPE_UNIX_FD. Note that file
descriptor passing is always enabled for both sending and
@@ -98,41 +99,37 @@
setting as negotiated by the program ultimately activated. By
default, file descriptor passing is enabled for both.
- sd_bus_negotiate_timestamps() controls
- whether implicit sender timestamps shall be attached automatically
- to all incoming messages. Takes a bus object and a boolean, which,
- when true, enables timestamping, and, when false, disables it. If
- this is disabled,
+ sd_bus_negotiate_timestamp() controls whether implicit sender
+ timestamps shall be attached automatically to all incoming messages. Takes a bus object and a
+ boolean, which, when true, enables timestamping, and, when false, disables it. Use
sd_bus_message_get_monotonic_usec3,
sd_bus_message_get_realtime_usec3,
sd_bus_message_get_seqnum3
- fail with -ENODATA on incoming messages. Note
- that not all transports support timestamping of messages. On local
- transports, the timestamping is applied by the kernel and cannot
- be manipulated by userspace. By default, message timestamping is
- not negotiated for all connections.
-
- sd_bus_negotiate_creds() controls
- whether implicit sender credentials shall be attached
- automatically to all incoming messages. Takes a bus object, a
- boolean indicating whether to enable or disable the credential
- parts encoded in the bit mask value argument. Note that not all
- transports support attaching sender credentials to messages, or do
- not support all types of sender credential parameters, or might
- suppress them under certain circumstances for individual
- messages. On local transports, the sender credentials are attached
- by the kernel and cannot be manipulated by userspace. By default,
- no sender credentials are attached.
+ to query the timestamps of incoming messages. If negotiation is disabled or not supported, these
+ calls will fail with -ENODATA. Note that currently no transports support
+ timestamping of messages. By default, message timestamping is not negotiated for
+ connections.
+
+ sd_bus_negotiate_creds() controls whether and which implicit sender
+ credentials shall be attached automatically to all incoming messages. Takes a bus object and a
+ boolean indicating whether to enable or disable the credential parts encoded in the bit mask
+ value argument. Note that not all transports support attaching sender credentials to messages,
+ or do not support all types of sender credential parameters, or might suppress them under
+ certain circumstances for individual messages. Specifically, dbus1 only supports
+ SD_BUS_CREDS_UNIQUE_NAME. The sender credentials are suitable for
+ authorization decisions. By default, only SD_BUS_CREDS_WELL_KNOWN_NAMES and
+ SD_BUS_CREDS_UNIQUE_NAME are enabled. In fact, these two credential fields
+ are always sent along and cannot be turned off.
The sd_bus_negotiate_fds() function may
be called only before the connection has been started with
sd_bus_start3. Both
sd_bus_negotiate_timestamp() and
- sd_bus_negotiate_creds() also may be called
- after a connection has been set up. Note that when operating on a
+ sd_bus_negotiate_creds() may also be called
+ after a connection has been set up. Note that, when operating on a
connection that is shared between multiple components of the same
program (for example via
- sd_bus_default3)
+ sd_bus_default3),
it is highly recommended to only enable additional per message
metadata fields, but never disable them again, in order not to
disable functionality needed by other components.
@@ -141,7 +138,7 @@
Return Value
- On success, these functions returns 0 or a
+ On success, these functions return 0 or a
positive integer. On failure, they return a negative errno-style
error code.
@@ -163,10 +160,10 @@
Notes
- sd_bus_negotiate_fs() and the other
+ sd_bus_negotiate_fds() and the other
functions described here are available as a shared library, which
can be compiled and linked to with the
- libsystemd pkg-config1
+ libelogind pkg-config1
file.
@@ -179,6 +176,8 @@
sd_bus_start3,
sd_bus_message_can_send3,
sd_bus_message_get_monotonic_usec3,
+ sd_bus_message_get_realtime_usec3,
+ sd_bus_message_get_seqnum3,
sd_bus_message_get_creds3,
systemd.busname5