SD-BUS-ERRORS(3)
πΈ NAME πΈ
okay so bestie, this is the SD-BUS-ERRORS(3) page from sd-bus-errors β the standard D-Bus error names roster. The whole iconic squad is:
SD_BUS_ERROR_FAILEDSD_BUS_ERROR_NO_MEMORYSD_BUS_ERROR_SERVICE_UNKNOWNSD_BUS_ERROR_NAME_HAS_NO_OWNERSD_BUS_ERROR_NO_REPLYSD_BUS_ERROR_IO_ERRORSD_BUS_ERROR_BAD_ADDRESSSD_BUS_ERROR_NOT_SUPPORTEDSD_BUS_ERROR_LIMITS_EXCEEDEDSD_BUS_ERROR_ACCESS_DENIEDSD_BUS_ERROR_AUTH_FAILEDSD_BUS_ERROR_NO_SERVERSD_BUS_ERROR_TIMEOUTSD_BUS_ERROR_NO_NETWORKSD_BUS_ERROR_ADDRESS_IN_USESD_BUS_ERROR_DISCONNECTEDSD_BUS_ERROR_INVALID_ARGSSD_BUS_ERROR_FILE_NOT_FOUNDSD_BUS_ERROR_FILE_EXISTSSD_BUS_ERROR_UNKNOWN_METHODSD_BUS_ERROR_UNKNOWN_OBJECTSD_BUS_ERROR_UNKNOWN_INTERFACESD_BUS_ERROR_UNKNOWN_PROPERTYSD_BUS_ERROR_PROPERTY_READ_ONLYSD_BUS_ERROR_UNIX_PROCESS_ID_UNKNOWNSD_BUS_ERROR_INVALID_SIGNATURESD_BUS_ERROR_INCONSISTENT_MESSAGESD_BUS_ERROR_TIMED_OUTSD_BUS_ERROR_MATCH_RULE_NOT_FOUNDSD_BUS_ERROR_MATCH_RULE_INVALIDSD_BUS_ERROR_INTERACTIVE_AUTHORIZATION_REQUIREDSD_BUS_ERROR_INVALID_FILE_CONTENTSD_BUS_ERROR_SELINUX_SECURITY_CONTEXT_UNKNOWNSD_BUS_ERROR_OBJECT_PATH_IN_USE
β¨ SYNOPSIS β¨
okay so this is the whole define block, no cap β copy these exactly, bestie:
#include <systemd/sd-bus.h>
#define SD_BUS_ERROR_FAILED "org.freedesktop.DBus.Error.Failed"
#define SD_BUS_ERROR_NO_MEMORY "org.freedesktop.DBus.Error.NoMemory"
#define SD_BUS_ERROR_SERVICE_UNKNOWN "org.freedesktop.DBus.Error.ServiceUnknown"
#define SD_BUS_ERROR_NAME_HAS_NO_OWNER "org.freedesktop.DBus.Error.NameHasNoOwner"
#define SD_BUS_ERROR_NO_REPLY "org.freedesktop.DBus.Error.NoReply"
#define SD_BUS_ERROR_IO_ERROR "org.freedesktop.DBus.Error.IOError"
#define SD_BUS_ERROR_BAD_ADDRESS "org.freedesktop.DBus.Error.BadAddress"
#define SD_BUS_ERROR_NOT_SUPPORTED "org.freedesktop.DBus.Error.NotSupported"
#define SD_BUS_ERROR_LIMITS_EXCEEDED "org.freedesktop.DBus.Error.LimitsExceeded"
#define SD_BUS_ERROR_ACCESS_DENIED "org.freedesktop.DBus.Error.AccessDenied"
#define SD_BUS_ERROR_AUTH_FAILED "org.freedesktop.DBus.Error.AuthFailed"
#define SD_BUS_ERROR_NO_SERVER "org.freedesktop.DBus.Error.NoServer"
#define SD_BUS_ERROR_TIMEOUT "org.freedesktop.DBus.Error.Timeout"
#define SD_BUS_ERROR_NO_NETWORK "org.freedesktop.DBus.Error.NoNetwork"
#define SD_BUS_ERROR_ADDRESS_IN_USE "org.freedesktop.DBus.Error.AddressInUse"
#define SD_BUS_ERROR_DISCONNECTED "org.freedesktop.DBus.Error.Disconnected"
#define SD_BUS_ERROR_INVALID_ARGS "org.freedesktop.DBus.Error.InvalidArgs"
#define SD_BUS_ERROR_FILE_NOT_FOUND "org.freedesktop.DBus.Error.FileNotFound"
#define SD_BUS_ERROR_FILE_EXISTS "org.freedesktop.DBus.Error.FileExists"
#define SD_BUS_ERROR_UNKNOWN_METHOD "org.freedesktop.DBus.Error.UnknownMethod"
#define SD_BUS_ERROR_UNKNOWN_OBJECT "org.freedesktop.DBus.Error.UnknownObject"
#define SD_BUS_ERROR_UNKNOWN_INTERFACE "org.freedesktop.DBus.Error.UnknownInterface"
#define SD_BUS_ERROR_UNKNOWN_PROPERTY "org.freedesktop.DBus.Error.UnknownProperty"
#define SD_BUS_ERROR_PROPERTY_READ_ONLY "org.freedesktop.DBus.Error.PropertyReadOnly"
#define SD_BUS_ERROR_UNIX_PROCESS_ID_UNKNOWN "org.freedesktop.DBus.Error.UnixProcessIdUnknown"
#define SD_BUS_ERROR_INVALID_SIGNATURE "org.freedesktop.DBus.Error.InvalidSignature"
#define SD_BUS_ERROR_INCONSISTENT_MESSAGE "org.freedesktop.DBus.Error.InconsistentMessage"
#define SD_BUS_ERROR_TIMED_OUT "org.freedesktop.DBus.Error.TimedOut"
#define SD_BUS_ERROR_MATCH_RULE_NOT_FOUND "org.freedesktop.DBus.Error.MatchRuleNotFound"
#define SD_BUS_ERROR_MATCH_RULE_INVALID "org.freedesktop.DBus.Error.MatchRuleInvalid"
#define SD_BUS_ERROR_INTERACTIVE_AUTHORIZATION_REQUIRED \
"org.freedesktop.DBus.Error.InteractiveAuthorizationRequired"
#define SD_BUS_ERROR_INVALID_FILE_CONTENT "org.freedesktop.DBus.Error.InvalidFileContent"
#define SD_BUS_ERROR_SELINUX_SECURITY_CONTEXT_UNKNOWN \
"org.freedesktop.DBus.Error.SELinuxSecurityContextUnknown"
#define SD_BUS_ERROR_OBJECT_PATH_IN_USE "org.freedesktop.DBus.Error.ObjectPathInUse"
π DESCRIPTION π
so besides the error names that user programs define themselves, D-Bus knows a bunch of generic, standardized error names, and they're listed below, bestie π
also, in sd-bus, there's this special error namespace "System.Error." that maps arbitrary Linux system errors (as defined by errno(3)) to D-Bus errors and back. example: EUCLEAN maps to "System.Error.EUCLEAN" and back. iconic little translator moment β¨
SD_BUS_ERROR_FAILEDβ a generic error indication. see the error message for further details. this one should be avoided, in favor of a more expressive error name. Added in version 223.SD_BUS_ERROR_NO_MEMORYβ a memory allocation failed, and the requested operation could not be completed. Added in version 223.SD_BUS_ERROR_SERVICE_UNKNOWNβ the contacted bus service is unknown and cannot be activated. Added in version 223.SD_BUS_ERROR_NAME_HAS_NO_OWNERβ the specified bus service name currently has no owner. Added in version 223.SD_BUS_ERROR_NO_REPLYβ a message did not receive a reply. this error is usually generated after a timeout. Added in version 223.SD_BUS_ERROR_IO_ERRORβ generic input/output error, for example when accessing a socket or other I/O context. Added in version 223.SD_BUS_ERROR_BAD_ADDRESSβ the specified D-Bus bus address string is malformed. Added in version 223.SD_BUS_ERROR_NOT_SUPPORTEDβ the requested operation is not supported on the local system. Added in version 223.SD_BUS_ERROR_LIMITS_EXCEEDEDβ some limited resource has been exhausted. Added in version 223.SD_BUS_ERROR_ACCESS_DENIEDβ access to a resource has been denied due to security restrictions. Added in version 223.SD_BUS_ERROR_AUTH_FAILEDβ authentication did not complete successfully. Added in version 223.SD_BUS_ERROR_NO_SERVERβ unable to connect to the specified server. Added in version 223.SD_BUS_ERROR_TIMEOUTβ an operation timed out. note that method calls which timeout generate aSD_BUS_ERROR_NO_REPLY. Added in version 223.SD_BUS_ERROR_NO_NETWORKβ no network available to execute requested network operation on. Added in version 223.SD_BUS_ERROR_ADDRESS_IN_USEβ the specified network address is already being listened on. Added in version 223.SD_BUS_ERROR_DISCONNECTEDβ the connection has been terminated. Added in version 223.SD_BUS_ERROR_INVALID_ARGSβ one or more invalid arguments have been passed. Added in version 223.SD_BUS_ERROR_FILE_NOT_FOUNDβ the requested file could not be found. Added in version 223.SD_BUS_ERROR_FILE_EXISTSβ the requested file already exists. Added in version 223.SD_BUS_ERROR_UNKNOWN_METHODβ the requested method does not exist in the selected interface. Added in version 223.SD_BUS_ERROR_UNKNOWN_OBJECTβ the requested object does not exist in the selected service. Added in version 223.SD_BUS_ERROR_UNKNOWN_INTERFACEβ the requested interface does not exist on the selected object. Added in version 223.SD_BUS_ERROR_UNKNOWN_PROPERTYβ the requested property does not exist in the selected interface. Added in version 223.SD_BUS_ERROR_PROPERTY_READ_ONLYβ a write operation was requested on a read-only property. Added in version 223.SD_BUS_ERROR_UNIX_PROCESS_ID_UNKNOWNβ the requested PID is not known. Added in version 223.SD_BUS_ERROR_INVALID_SIGNATUREβ the specified message signature is not valid. Added in version 223.SD_BUS_ERROR_INCONSISTENT_MESSAGEβ the passed message does not validate correctly. Added in version 223.SD_BUS_ERROR_MATCH_RULE_NOT_FOUNDβ the specified match rule does not exist. Added in version 223.SD_BUS_ERROR_MATCH_RULE_INVALIDβ the specified match rule is invalid. Added in version 223.SD_BUS_ERROR_INTERACTIVE_AUTHORIZATION_REQUIREDβ access to the requested operation is not permitted. however, it might be available after interactive authentication. this is usually returned by method calls supporting a framework for additional interactive authorization, when interactive authorization was not enabled with thesd_bus_message_set_allow_interactive_authorization(3)for the method call message. Added in version 223.
also yes, the define block has SD_BUS_ERROR_TIMED_OUT, SD_BUS_ERROR_INVALID_FILE_CONTENT, SD_BUS_ERROR_SELINUX_SECURITY_CONTEXT_UNKNOWN, and SD_BUS_ERROR_OBJECT_PATH_IN_USE too β this page doesn't give each one its own blurb, so no made-up tea from me π
π«Ά NOTES π«Ά
functions described here are available as a shared library, which can be compiled against and linked to with the libsystemd pkg-config(1) file. periodt β¨
bestie, important vibe check: the code described here usesgetenv(3), which is declared to be not multi-thread-safe. this means that the code calling the functions described here must not callsetenv(3)from a parallel thread. it is recommended to only do calls tosetenv()from an early phase of the program when no other threads have been started. no cap, follow this one π
π SEE ALSO π
systemd(1), libsystemd(3), sd-bus(3), sd_bus_error(3), sd_bus_message_set_allow_interactive_authorization(3), errno(3), strerror_r(3)
okay bye bestie π«Ά this has been the SD-BUS-ERRORS(3) page from sd-bus-errors, footer says systemd 261.3 and no date line, so it's giving timeless β¨π mwah π
π¦ where this page comes from
- ubuntu stonking: libsystemd-dev 261.3-0ubuntu3 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms