summaryrefslogtreecommitdiff
path: root/src/service.c
diff options
context:
space:
mode:
authorNiraj Kumar Goit <niraj.g@samsung.com>2018-01-04 14:48:49 +0530
committerNiraj Kumar Goit <niraj.g@samsung.com>2018-01-04 15:43:26 +0530
commit3210aec76f77e83630367d47b888db89baec44c4 (patch)
treec6ce9c5447cf101b8a322393cafd67a166dc5de7 /src/service.c
parent1a5031d10d06c727f8cbc866e928b5d69bce50cc (diff)
downloadconnman-3210aec76f77e83630367d47b888db89baec44c4.tar.gz
connman-3210aec76f77e83630367d47b888db89baec44c4.tar.bz2
connman-3210aec76f77e83630367d47b888db89baec44c4.zip
Modified logic to process each VSIE of all vendors.
Modified logic to process each VSIE of all vendors instead of only samsung vendor(OUI: 001632). Received VSIE will be appended in the list and shared with application. Change-Id: I11fee186c04677fdcd7746fcef7fd1dee4a0b02e Signed-off-by: Niraj Kumar Goit <niraj.g@samsung.com>
Diffstat (limited to 'src/service.c')
-rwxr-xr-xsrc/service.c23
1 files changed, 17 insertions, 6 deletions
diff --git a/src/service.c b/src/service.c
index 129b4105..033c8f8f 100755
--- a/src/service.c
+++ b/src/service.c
@@ -3248,14 +3248,25 @@ static void append_properties(DBusMessageIter *dict, dbus_bool_t limited,
connman_dbus_dict_append_basic(dict, "Frequency",
DBUS_TYPE_UINT16, &frequency);
}
- const void *wifi_vsie;
+
+ unsigned char *wifi_vsie;
unsigned int wifi_vsie_len;
- wifi_vsie = connman_network_get_blob(service->network, "WiFi.Vsie", &wifi_vsie_len);
- if(wifi_vsie_len > 0) {
- DBG("ConnMan, service->path=%s vsie length=%d", service->path, wifi_vsie_len);
+ GSList *vsie_list = NULL;
+
+ if (service->network)
+ vsie_list = (GSList *)connman_network_get_vsie_list(service->network);
+
+ if (vsie_list) {
+ DBG("ConnMan, service->path=%s No.of elements in list: %d", service->path, g_slist_length(vsie_list));
+ GSList *list;
+ for (list = vsie_list; list; list = list->next) {
+ wifi_vsie = (unsigned char *)list->data;
+ wifi_vsie_len = wifi_vsie[1] + 2;
+
+ connman_dbus_dict_append_fixed_array(dict, "Vsie", DBUS_TYPE_BYTE,
+ &wifi_vsie, wifi_vsie_len);
+ }
}
- connman_dbus_dict_append_fixed_array(dict, "Vsie", DBUS_TYPE_BYTE,
- &wifi_vsie, wifi_vsie_len);
#endif
str = __connman_service_type2string(service->type);