linux - 谁在Linux系统调用了我的DBus API

标签 linux dbus sender

场景是这样的:

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

我的函数中是否可以使用任何系统 API 来打印调用者的 ID 并将其保存到系统日志?

提前致谢!

最佳答案

org.freedesktop.DBus 总线上的

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

关于linux - 谁在Linux系统调用了我的DBus API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5885253/

相关文章:

swift - 为 UIButton 调用发送者的方法

c++ - 以编程方式创建终端命令?

linux - 如何在 kubernetes 中部署 nginx.config 文件

javascript - JQuery 如何获取调用该函数的按钮的 ID

c++ - QDBusAbstractAdaptor 与 QDBusAbstractInterface

python - 如何通过 python 和 dbus 创建 systemd transient 计时器和服务(类似于 systemd-run)?

ios - 从发件人 iOS 访问 UITableViewCell label.text

linux - 运行几天后的 Kafka LeaderNotAvailableException

c - C : using awk getting runaway string constant error 中的 shell 脚本

c++ - 获取GVariant的内容