wifi: report correct bssid when connected

This commit is contained in:
Christian Helmuth 2015-06-18 18:03:16 +02:00
parent cc58b11998
commit 340424db83
3 changed files with 7 additions and 5 deletions

View File

@ -180,7 +180,7 @@
} }
+void wpa_report_connect_event(struct wpa_ssid *); +void wpa_report_connect_event(struct wpa_supplicant *);
+ +
+ +
/** /**
@ -190,7 +190,7 @@
if (state == WPA_COMPLETED && wpa_s->new_connection) { if (state == WPA_COMPLETED && wpa_s->new_connection) {
struct wpa_ssid *ssid = wpa_s->current_ssid; struct wpa_ssid *ssid = wpa_s->current_ssid;
+ wpa_report_connect_event(ssid); + wpa_report_connect_event(wpa_s);
#if defined(CONFIG_CTRL_IFACE) || !defined(CONFIG_NO_STDOUT_DEBUG) #if defined(CONFIG_CTRL_IFACE) || !defined(CONFIG_NO_STDOUT_DEBUG)
wpa_msg(wpa_s, MSG_INFO, WPA_EVENT_CONNECTED "- Connection to " wpa_msg(wpa_s, MSG_INFO, WPA_EVENT_CONNECTED "- Connection to "
MACSTR " completed [id=%d id_str=%s]", MACSTR " completed [id=%d id_str=%s]",

View File

@ -1 +1 @@
855e35cd76da3acd12421ad9d09ff55c80bcf1fa e4d1e3eb5776e7a8f6a6cf0310d3fc78443c58ca

View File

@ -43,17 +43,19 @@ static inline void mac2str(char *buf, u8 const *mac)
} }
extern "C" void wpa_report_connect_event(struct wpa_ssid *wpa_ssid) extern "C" void wpa_report_connect_event(struct wpa_supplicant *wpa_s)
{ {
state_reporter.enabled(true); state_reporter.enabled(true);
try { try {
Genode::Reporter::Xml_generator xml(state_reporter, [&]() { Genode::Reporter::Xml_generator xml(state_reporter, [&]() {
struct wpa_ssid *wpa_ssid = wpa_s->current_ssid;
/* FIXME ssid may contain any characters, even NUL */ /* FIXME ssid may contain any characters, even NUL */
Genode::String<SSID_MAX_LEN> ssid((char const*)wpa_ssid->ssid, wpa_ssid->ssid_len); Genode::String<SSID_MAX_LEN> ssid((char const*)wpa_ssid->ssid, wpa_ssid->ssid_len);
char bssid_buf[MAC_STR_LEN]; char bssid_buf[MAC_STR_LEN];
mac2str(bssid_buf, wpa_ssid->bssid); mac2str(bssid_buf, wpa_s->bssid);
xml.node("accesspoint", [&]() { xml.node("accesspoint", [&]() {
xml.attribute("ssid", ssid.string()); xml.attribute("ssid", ssid.string());