<?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_set_connected_signal" xmlns:xi="http://www.w3.org/2001/XInclude"> <refentryinfo> <title>sd_bus_set_connected_signal</title> <productname>systemd</productname> </refentryinfo> <refmeta> <refentrytitle>sd_bus_set_connected_signal</refentrytitle> <manvolnum>3</manvolnum> </refmeta> <refnamediv> <refname>sd_bus_set_connected_signal</refname> <refname>sd_bus_get_connected_signal</refname> <refpurpose>Control emmission of local connection establishment signal on bus connections</refpurpose> </refnamediv> <refsynopsisdiv> <funcsynopsis> <funcsynopsisinfo>#include <systemd/sd-bus.h></funcsynopsisinfo> <funcprototype> <funcdef>int <function>sd_bus_set_connected_signal</function></funcdef> <paramdef>sd_bus *<parameter>bus</parameter></paramdef> <paramdef>int <parameter>b</parameter></paramdef> </funcprototype> <funcprototype> <funcdef>int <function>sd_bus_get_connected_signal</function></funcdef> <paramdef>sd_bus *<parameter>bus</parameter></paramdef> </funcprototype> </funcsynopsis> </refsynopsisdiv> <refsect1> <title>Description</title> <para><function>sd_bus_set_connected_signal()</function> may be used to control whether a local, synthetic <function>Connected()</function> signal message shall be generated and enqueued for dispatching when the connection is fully established. If the <parameter>b</parameter> parameter is zero the message is not generated (the default), otherwise it is generated.</para> <para><function>sd_bus_get_connected_signal()</function> may be used to query whether this feature is enabled. It returns zero if not, positive otherwise.</para> <para>The <function>Connected()</function> signal message is generated from the <literal>org.freedesktop.DBus.Local</literal> service and interface, and <literal>/org/freedesktop/DBus/Local</literal> object path. Use <citerefentry><refentrytitle>sd_bus_match_signal_async</refentrytitle><manvolnum>3</manvolnum></citerefentry> to match on this signal.</para> <para>This message is particularly useful on slow transports where connections take a long time to be established. This is especially the case when <citerefentry><refentrytitle>sd_bus_set_watch_bind</refentrytitle><manvolnum>3</manvolnum></citerefentry> is used. The signal is generated when the <citerefentry><refentrytitle>sd_bus_is_ready</refentrytitle><manvolnum>3</manvolnum></citerefentry> returns positive for the first time.</para> <para>The <function>Connected()</function> signal corresponds with the <function>Disconnected()</function> signal that is synthesized locally when the connection is terminated. The latter is generated unconditionally however, unlike the former which needs to be enabled explicitly before it is generated, with <function>sd_bus_set_connected_signal()</function>.</para> </refsect1> <refsect1> <title>Return Value</title> <para>On success, these functions return 0 or a positive integer. On failure, they return a negative errno-style error code.</para> <refsect2> <title>Errors</title> <para>Returned errors may indicate the following problems:</para> <variablelist> <varlistentry> <term><constant>-ECHILD</constant></term> <listitem><para>The bus connection has been 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>, <citerefentry><refentrytitle>sd_bus_match_signal_async</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd_bus_set_watch_bind</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>sd_bus_is_ready</refentrytitle><manvolnum>3</manvolnum></citerefentry> </para> </refsect1> </refentry>