1<?xml version='1.0'?>
2<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3  "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
4<!-- SPDX-License-Identifier: LGPL-2.1-or-later -->
5
6<refentry id="sd-bus-errors"
7          xmlns:xi="http://www.w3.org/2001/XInclude">
8
9  <refentryinfo>
10    <title>sd-bus-errors</title>
11    <productname>systemd</productname>
12  </refentryinfo>
13
14  <refmeta>
15    <refentrytitle>sd-bus-errors</refentrytitle>
16    <manvolnum>3</manvolnum>
17  </refmeta>
18
19  <refnamediv>
20    <refname>sd-bus-errors</refname>
21    <refname>SD_BUS_ERROR_FAILED</refname>
22    <refname>SD_BUS_ERROR_NO_MEMORY</refname>
23    <refname>SD_BUS_ERROR_SERVICE_UNKNOWN</refname>
24    <refname>SD_BUS_ERROR_NAME_HAS_NO_OWNER</refname>
25    <refname>SD_BUS_ERROR_NO_REPLY</refname>
26    <refname>SD_BUS_ERROR_IO_ERROR</refname>
27    <refname>SD_BUS_ERROR_BAD_ADDRESS</refname>
28    <refname>SD_BUS_ERROR_NOT_SUPPORTED</refname>
29    <refname>SD_BUS_ERROR_LIMITS_EXCEEDED</refname>
30    <refname>SD_BUS_ERROR_ACCESS_DENIED</refname>
31    <refname>SD_BUS_ERROR_AUTH_FAILED</refname>
32    <refname>SD_BUS_ERROR_NO_SERVER</refname>
33    <refname>SD_BUS_ERROR_TIMEOUT</refname>
34    <refname>SD_BUS_ERROR_NO_NETWORK</refname>
35    <refname>SD_BUS_ERROR_ADDRESS_IN_USE</refname>
36    <refname>SD_BUS_ERROR_DISCONNECTED</refname>
37    <refname>SD_BUS_ERROR_INVALID_ARGS</refname>
38    <refname>SD_BUS_ERROR_FILE_NOT_FOUND</refname>
39    <refname>SD_BUS_ERROR_FILE_EXISTS</refname>
40    <refname>SD_BUS_ERROR_UNKNOWN_METHOD</refname>
41    <refname>SD_BUS_ERROR_UNKNOWN_OBJECT</refname>
42    <refname>SD_BUS_ERROR_UNKNOWN_INTERFACE</refname>
43    <refname>SD_BUS_ERROR_UNKNOWN_PROPERTY</refname>
44    <refname>SD_BUS_ERROR_PROPERTY_READ_ONLY</refname>
45    <refname>SD_BUS_ERROR_UNIX_PROCESS_ID_UNKNOWN</refname>
46    <refname>SD_BUS_ERROR_INVALID_SIGNATURE</refname>
47    <refname>SD_BUS_ERROR_INCONSISTENT_MESSAGE</refname>
48    <refname>SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</refname>
49    <refname>SD_BUS_ERROR_MATCH_RULE_INVALID</refname>
50    <refname>SD_BUS_ERROR_INTERACTIVE_AUTHORIZATION_REQUIRED</refname>
51
52    <refpurpose>Standard D-Bus error names</refpurpose>
53  </refnamediv>
54
55  <refsynopsisdiv>
56    <funcsynopsis>
57      <funcsynopsisinfo>#include &lt;systemd/sd-bus.h&gt;</funcsynopsisinfo>
58
59<funcsynopsisinfo>#define SD_BUS_ERROR_FAILED                     "org.freedesktop.DBus.Error.Failed"
60#define SD_BUS_ERROR_NO_MEMORY                  "org.freedesktop.DBus.Error.NoMemory"
61#define SD_BUS_ERROR_SERVICE_UNKNOWN            "org.freedesktop.DBus.Error.ServiceUnknown"
62#define SD_BUS_ERROR_NAME_HAS_NO_OWNER          "org.freedesktop.DBus.Error.NameHasNoOwner"
63#define SD_BUS_ERROR_NO_REPLY                   "org.freedesktop.DBus.Error.NoReply"
64#define SD_BUS_ERROR_IO_ERROR                   "org.freedesktop.DBus.Error.IOError"
65#define SD_BUS_ERROR_BAD_ADDRESS                "org.freedesktop.DBus.Error.BadAddress"
66#define SD_BUS_ERROR_NOT_SUPPORTED              "org.freedesktop.DBus.Error.NotSupported"
67#define SD_BUS_ERROR_LIMITS_EXCEEDED            "org.freedesktop.DBus.Error.LimitsExceeded"
68#define SD_BUS_ERROR_ACCESS_DENIED              "org.freedesktop.DBus.Error.AccessDenied"
69#define SD_BUS_ERROR_AUTH_FAILED                "org.freedesktop.DBus.Error.AuthFailed"
70#define SD_BUS_ERROR_NO_SERVER                  "org.freedesktop.DBus.Error.NoServer"
71#define SD_BUS_ERROR_TIMEOUT                    "org.freedesktop.DBus.Error.Timeout"
72#define SD_BUS_ERROR_NO_NETWORK                 "org.freedesktop.DBus.Error.NoNetwork"
73#define SD_BUS_ERROR_ADDRESS_IN_USE             "org.freedesktop.DBus.Error.AddressInUse"
74#define SD_BUS_ERROR_DISCONNECTED               "org.freedesktop.DBus.Error.Disconnected"
75#define SD_BUS_ERROR_INVALID_ARGS               "org.freedesktop.DBus.Error.InvalidArgs"
76#define SD_BUS_ERROR_FILE_NOT_FOUND             "org.freedesktop.DBus.Error.FileNotFound"
77#define SD_BUS_ERROR_FILE_EXISTS                "org.freedesktop.DBus.Error.FileExists"
78#define SD_BUS_ERROR_UNKNOWN_METHOD             "org.freedesktop.DBus.Error.UnknownMethod"
79#define SD_BUS_ERROR_UNKNOWN_OBJECT             "org.freedesktop.DBus.Error.UnknownObject"
80#define SD_BUS_ERROR_UNKNOWN_INTERFACE          "org.freedesktop.DBus.Error.UnknownInterface"
81#define SD_BUS_ERROR_UNKNOWN_PROPERTY           "org.freedesktop.DBus.Error.UnknownProperty"
82#define SD_BUS_ERROR_PROPERTY_READ_ONLY         "org.freedesktop.DBus.Error.PropertyReadOnly"
83#define SD_BUS_ERROR_UNIX_PROCESS_ID_UNKNOWN    "org.freedesktop.DBus.Error.UnixProcessIdUnknown"
84#define SD_BUS_ERROR_INVALID_SIGNATURE          "org.freedesktop.DBus.Error.InvalidSignature"
85#define SD_BUS_ERROR_INCONSISTENT_MESSAGE       "org.freedesktop.DBus.Error.InconsistentMessage"
86#define SD_BUS_ERROR_MATCH_RULE_NOT_FOUND       "org.freedesktop.DBus.Error.MatchRuleNotFound"
87#define SD_BUS_ERROR_MATCH_RULE_INVALID         "org.freedesktop.DBus.Error.MatchRuleInvalid"
88#define SD_BUS_ERROR_INTERACTIVE_AUTHORIZATION_REQUIRED \
89                                                "org.freedesktop.DBus.Error.InteractiveAuthorizationRequired"</funcsynopsisinfo>
90
91    </funcsynopsis>
92  </refsynopsisdiv>
93
94  <refsect1>
95    <title>Description</title>
96
97    <para>In addition to the error names user programs define, D-Bus
98    knows a number of generic, standardized error names that are
99    listed below.</para>
100
101    <para>In addition to this list, in sd-bus, the special error
102    namespace <literal>System.Error.</literal> is used to map
103    arbitrary Linux system errors (as defined by <citerefentry
104    project='man-pages'><refentrytitle>errno</refentrytitle><manvolnum>3</manvolnum></citerefentry>)
105    to D-Bus errors and back. For example, the error
106    <constant>EUCLEAN</constant> is mapped to
107    <literal>System.Error.EUCLEAN</literal> and back.</para>
108
109    <variablelist>
110
111      <varlistentry>
112         <term><constant>SD_BUS_ERROR_FAILED</constant></term>
113         <listitem><para>A generic error indication. See the error
114         message for further details. This error name should be
115         avoided, in favor of a more expressive error
116         name.</para></listitem>
117      </varlistentry>
118
119      <varlistentry>
120        <term><constant>SD_BUS_ERROR_NO_MEMORY</constant></term>
121        <listitem><para>A memory allocation failed, and the requested
122        operation could not be completed.</para></listitem>
123      </varlistentry>
124
125      <varlistentry>
126        <term><constant>SD_BUS_ERROR_SERVICE_UNKNOWN</constant></term>
127        <listitem><para>The contacted bus service is unknown and
128        cannot be activated.</para></listitem>
129      </varlistentry>
130
131      <varlistentry>
132        <term><constant>SD_BUS_ERROR_NAME_HAS_NO_OWNER</constant></term>
133        <listitem><para>The specified bus service name currently has
134        no owner.</para></listitem>
135      </varlistentry>
136      <varlistentry>
137        <term><constant>SD_BUS_ERROR_NO_REPLY</constant></term>
138        <listitem><para>A message did not receive a reply. This error
139        is usually generated after a timeout.</para></listitem>
140      </varlistentry>
141      <varlistentry>
142        <term><constant>SD_BUS_ERROR_IO_ERROR</constant></term>
143        <listitem><para>Generic input/output error, for example when
144        accessing a socket or other I/O context.</para></listitem>
145      </varlistentry>
146      <varlistentry>
147        <term><constant>SD_BUS_ERROR_BAD_ADDRESS</constant></term>
148        <listitem><para>The specified D-Bus bus address string is
149        malformed.</para></listitem>
150      </varlistentry>
151      <varlistentry>
152        <term><constant>SD_BUS_ERROR_NOT_SUPPORTED</constant></term>
153        <listitem><para>The requested operation is not supported on
154        the local system.</para></listitem>
155      </varlistentry>
156      <varlistentry>
157        <term><constant>SD_BUS_ERROR_LIMITS_EXCEEDED</constant></term>
158        <listitem><para>Some limited resource has been
159        exhausted.</para></listitem>
160      </varlistentry>
161      <varlistentry>
162        <term><constant>SD_BUS_ERROR_ACCESS_DENIED</constant></term>
163        <listitem><para>Access to a resource has been denied due to security restrictions.</para></listitem>
164      </varlistentry>
165      <varlistentry>
166        <term><constant>SD_BUS_ERROR_AUTH_FAILED</constant></term>
167        <listitem><para>Authentication did not complete successfully.</para></listitem>
168      </varlistentry>
169      <varlistentry>
170        <term><constant>SD_BUS_ERROR_NO_SERVER</constant></term>
171        <listitem><para>Unable to connect to the specified server.</para></listitem>
172      </varlistentry>
173      <varlistentry>
174        <term><constant>SD_BUS_ERROR_TIMEOUT</constant></term>
175        <listitem><para>An operation timed out. Note that method calls
176        which timeout generate a
177        <constant>SD_BUS_ERROR_NO_REPLY</constant>.</para></listitem>
178      </varlistentry>
179      <varlistentry>
180        <term><constant>SD_BUS_ERROR_NO_NETWORK</constant></term>
181        <listitem><para>No network available to execute requested network operation on.</para></listitem>
182      </varlistentry>
183      <varlistentry>
184        <term><constant>SD_BUS_ERROR_ADDRESS_IN_USE</constant></term>
185        <listitem><para>The specified network address is already being listened on.</para></listitem>
186      </varlistentry>
187      <varlistentry>
188        <term><constant>SD_BUS_ERROR_DISCONNECTED</constant></term>
189        <listitem><para>The connection has been terminated.</para></listitem>
190      </varlistentry>
191      <varlistentry>
192        <term><constant>SD_BUS_ERROR_INVALID_ARGS</constant></term>
193        <listitem><para>One or more invalid arguments have been passed.</para></listitem>
194      </varlistentry>
195      <varlistentry>
196        <term><constant>SD_BUS_ERROR_FILE_NOT_FOUND</constant></term>
197        <listitem><para>The requested file could not be found.</para></listitem>
198      </varlistentry>
199      <varlistentry>
200        <term><constant>SD_BUS_ERROR_FILE_EXISTS</constant></term>
201        <listitem><para>The requested file already exists.</para></listitem>
202      </varlistentry>
203      <varlistentry>
204        <term><constant>SD_BUS_ERROR_UNKNOWN_METHOD</constant></term>
205        <listitem><para>The requested method does not exist in the selected interface.</para></listitem>
206      </varlistentry>
207      <varlistentry>
208        <term><constant>SD_BUS_ERROR_UNKNOWN_OBJECT</constant></term>
209        <listitem><para>The requested object does not exist in the selected service.</para></listitem>
210      </varlistentry>
211      <varlistentry>
212        <term><constant>SD_BUS_ERROR_UNKNOWN_INTERFACE</constant></term>
213        <listitem><para>The requested interface does not exist on the selected object.</para></listitem>
214      </varlistentry>
215      <varlistentry>
216        <term><constant>SD_BUS_ERROR_UNKNOWN_PROPERTY</constant></term>
217        <listitem><para>The requested property does not exist in the selected interface.</para></listitem>
218      </varlistentry>
219      <varlistentry>
220        <term><constant>SD_BUS_ERROR_PROPERTY_READ_ONLY</constant></term>
221        <listitem><para>A write operation was requested on a read-only property.</para></listitem>
222      </varlistentry>
223      <varlistentry>
224        <term><constant>SD_BUS_ERROR_UNIX_PROCESS_ID_UNKNOWN</constant></term>
225        <listitem><para>The requested PID is not known.</para></listitem>
226      </varlistentry>
227      <varlistentry>
228        <term><constant>SD_BUS_ERROR_INVALID_SIGNATURE</constant></term>
229        <listitem><para>The specified message signature is not
230        valid.</para>
231        </listitem>
232      </varlistentry>
233      <varlistentry>
234        <term><constant>SD_BUS_ERROR_INCONSISTENT_MESSAGE</constant></term>
235        <listitem><para>The passed message does not validate
236        correctly.</para></listitem>
237      </varlistentry>
238      <varlistentry>
239        <term><constant>SD_BUS_ERROR_MATCH_RULE_NOT_FOUND</constant></term>
240        <listitem><para>The specified match rule does not exist.</para></listitem>
241      </varlistentry>
242      <varlistentry>
243        <term><constant>SD_BUS_ERROR_MATCH_RULE_INVALID</constant></term>
244        <listitem><para>The specified match rule is invalid.</para></listitem>
245      </varlistentry>
246      <varlistentry>
247        <term><constant>SD_BUS_ERROR_INTERACTIVE_AUTHORIZATION_REQUIRED</constant></term>
248        <listitem><para>Access to the requested operation is not
249        permitted. However, it might be available after interactive
250        authentication. This is usually returned by method calls
251        supporting a framework for additional interactive
252        authorization, when interactive authorization was not enabled
253        with the
254        <citerefentry><refentrytitle>sd_bus_message_set_allow_interactive_authorization</refentrytitle><manvolnum>3</manvolnum></citerefentry>
255        for the method call message.</para></listitem>
256      </varlistentry>
257    </variablelist>
258  </refsect1>
259
260  <xi:include href="libsystemd-pkgconfig.xml" />
261
262  <refsect1>
263    <title>See Also</title>
264
265    <para>
266      <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
267      <citerefentry><refentrytitle>sd-bus</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
268      <citerefentry><refentrytitle>sd_bus_error</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
269      <citerefentry><refentrytitle>sd_bus_message_set_allow_interactive_authorization</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
270      <citerefentry project='man-pages'><refentrytitle>errno</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
271      <citerefentry project='die-net'><refentrytitle>strerror</refentrytitle><manvolnum>3</manvolnum></citerefentry>
272    </para>
273  </refsect1>
274
275</refentry>
276