Потратив немного времени на понимание работы сессий D-Bus и системных шин, я теперь сосредоточен на том, чтобы люди могли использовать и интроспективно оценивать мою услугу, чтобы позволить кому-либо для простого использования функций с помощью моего сервиса.Разрешить интроспекцию на моем системном сервисе D-Bus
Я тогда написал следующий файл конфигурации, который я поместил в моей /etc/dbus-1/system.d/
:
<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>
<policy user="root">
<allow own="org.zedroot.Test" />
<allow send_destination="org.zedroot.Test" />
</policy>
<policy context="default">
<allow send_destination="org.zedroot.Test"
send_interface="org.zedroot.Test" />
<allow send_destination="org.zedroot.Test"
send_interface="org.freedesktop.DBus.Introspectable" />
<allow send_destination="org.zedroot.Test"
send_interface="org.freedesktop.DBus.Properties" />
</policy>
</busconfig>
Но с помощью г-ноги, я могу видеть мою службу, но не вникать (я не вижу ничего в моей службы : нет методов, сигналов или свойств).
Может ли кто-нибудь помочь мне?
У вас есть файл формата introspection? XML-файл, который описывает ваш интерфейс? – nemo
Нет, нет. Файл, вставленный в вопрос, является единственным, который я помещал в эту папку. Чтобы быть более точным, я работаю с C++-приложением, используя библиотеку dbus-cxx. – ZedTuX