Я использую gio и эту реализацию DBus для регистрации некоторого внутреннего объекта демона. Я провела все испытания с широким Dbus SESSION, и все работало нормально, но я попытался использовать системную регистрацию, и так как моя регистрация имени не удалась.DBus, не удалось получить системное имя
Я использую имя g_bus_own_name для получения имени, и мое сообщение об ошибке отвечает сценарию bus_acquired_handler then name_lost_handler.
любые идеи, как я могу решить эту проблему, или как я могу получить дополнительную информацию об ошибке?
ПИБ: https://developer.gnome.org/gio/2.38/gio-Owning-Bus-Names.html#g-bus-own-name
Это DBus-монитор трассировки:
Сигнал датчика = org.freedesktop.DBus -> приемник =: 1,96 серийный = 2 = путь/орг/Freedesktop/DBus; Интерфейс = org.freedesktop.DBus; Член = NameAcquired
строка ": 1,96" отправитель сигнала
=: 1.95 -> приемник = (нуль-пункт назначения) серийный = 3 = путь/орг/AST/AstCore; интерфейс = org.freedesktop.DBus.Properties; Член = PropertiesChanged
строку "org.ast.AstCore"
массив [
запись ДИКТ (
строка "состояние"
вариант int32 3
)
]
массив [
]
сигнал отправителя =: 1.95 -> dest = (нулевой пункт назначения) serial = 5 path =/или г/AST/AstCore; интерфейс = org.freedesktop.DBus.Properties; Член = PropertiesChanged
строку "org.ast.AstCore"
массив [
запись ДИКТ (
строка "состояние"
вариант int32 4
)
]
массив [
]
сигнальный отправитель = org.freedesktop.DBus -> dest = (null destination) se rial = 173 path =/org/freedesktop/DBus; Интерфейс = org.freedesktop.DBus; член = NameOwnerChanged
строка ": 1,95"
строка ": 1,95"
строка ""
отправитель сигнала = org.freedesktop.DBus -> приемник = (нуль назначения) последовательный = 174 путь =/орг/Freedesktop/DBus; Интерфейс = org.freedesktop.DBus; член = NameOwnerChanged
string ": 1.97"
string ""
string ": 1.97"
Параметры безопасности шины, вероятно, предотвращают ее. Проверьте файлы в '/ etc/dbus-1/system.xml' и'/etc/dbus-1/system.d/' – rm5248