小编mar*_*rkw的帖子

C中的D-Bus教程与wpa_supplicant进行通信

我正在尝试编写一些代码来使用DBUS与wpa_supplicant进行通信.当我在嵌入式系统(ARM)中工作时,我想避免使用Python或GLib.我想知道我是不是很愚蠢,因为我真的觉得没有关于D-Bus的清晰文档.即使使用官方文档,我发现文档的级别太高,或者显示的示例都使用了Glib!我看过的文档:http://www.freedesktop.org/wiki/Software/dbus

我发现了一篇关于在C中使用D-Bus的好文章:http://www.matthew.ath.cx/articles/dbus

但是,这篇文章已经很老了,还不够完整!我也找到了c ++ - dbus API,但在这里,我找不到任何文档!我一直在深入研究wpa_supplicant和NetworkManager源代码,但这真是一场噩梦!我一直在研究"低级D-Bus API",但这并没有告诉我如何从D-Bus消息中提取字符串参数!http://dbus.freedesktop.org/doc/api/html/index.html

下面是我编写的一些代码来测试,但我真的很难提取字符串值.很抱歉有很长的源代码,但如果有人想尝试...我的D-Bus配置似乎很好,因为它"已经"从wpa_supplicant捕获"StateChanged"信号,但无法打印状态:

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <signal.h>
#include <string.h>

#include <dbus/dbus.h>

//#include "wpa_supp_dbus.h"
/* Content of wpa_supp_dbus.h */
#define WPAS_DBUS_SERVICE   "fi.epitest.hostap.WPASupplicant"
#define WPAS_DBUS_PATH      "/fi/epitest/hostap/WPASupplicant"
#define WPAS_DBUS_INTERFACE "fi.epitest.hostap.WPASupplicant"

#define WPAS_DBUS_PATH_INTERFACES   WPAS_DBUS_PATH "/Interfaces"
#define WPAS_DBUS_IFACE_INTERFACE   WPAS_DBUS_INTERFACE ".Interface"

#define WPAS_DBUS_NETWORKS_PART "Networks"
#define WPAS_DBUS_IFACE_NETWORK WPAS_DBUS_INTERFACE ".Network"

#define WPAS_DBUS_BSSIDS_PART   "BSSIDs"
#define WPAS_DBUS_IFACE_BSSID   WPAS_DBUS_INTERFACE ".BSSID"

int running = 1;

void stopLoop(int sig)
{
    running = 0;
}

void sendScan() …
Run Code Online (Sandbox Code Playgroud)

linux embedded dbus

17
推荐指数
2
解决办法
2万
查看次数

如何调试lxml.etree.XSLTParseError:表达式无效错误

我试图找出为什么lxml无法解析一个XSL文档,该文档由一个带有各种xml:includes 的"根"文档组成.我收到一个错误:

Traceback (most recent call last):
File "s.py", line 10, in <module>
  xslt = ET.XSLT(ET.parse(d))
File "xslt.pxi", line 409, in lxml.etree.XSLT.__init__ (src/lxml/lxml.etree.c:151978)
lxml.etree.XSLTParseError: Invalid expression
Run Code Online (Sandbox Code Playgroud)

这告诉我错误在lxml源中的位置,但有没有办法通过lxml更多地了解错误在xsl中的位置,或者我应该使用不同的方法?我正在尝试提供接受XSL文档的服务,因此我无法访问XML编辑器来手动调试.我想做的是提供有关转型未成功的原因的反馈.

python xml xslt debugging lxml

5
推荐指数
1
解决办法
1108
查看次数

标签 统计

dbus ×1

debugging ×1

embedded ×1

linux ×1

lxml ×1

python ×1

xml ×1

xslt ×1