场景是这样的:

在基于Linux的手持设备中,我有一个C应用程序,该应用程序具有准备好由第三方应用程序调用的dbus API。在启动期间会调用DBus API。

我可以在函数中使用任何系统API来打印调用者的ID并将其保存到syslog吗?

提前致谢!

最佳答案

/org/freedesktop/DBus总线上的org.freedesktop.DBus对象具有两种属于org.freedesktop.DBus接口(interface)的方法(哦,不错):GetConnectionUnixUserGetConnectionUnixProcessID。两者都接受一个字符串-唯一的连接名称,可以通过调用dbus_message_get_sender(或高级API包装器提供的任何方法)获得该名称。

10-06 00:54