{
__NETWORK_FUNC_ENTER__;
- net_err_e Error = NET_ERR_NONE;
+ net_err_e Error = NET_ERR_NO_PROFILE;
GVariant *message = NULL;
- GVariantIter *iter = NULL;
GVariantIter *service = NULL;
- gchar *path = NULL;
message = _net_invoke_dbus_method(network_info,
- CONNMAN_SERVICE, CONNMAN_MANAGER_PATH,
- CONNMAN_MANAGER_INTERFACE, "GetServices",
+ CONNMAN_SERVICE, ProfileName,
+ CONNMAN_SERVICE_INTERFACE, "GetProperties",
NULL, &Error);
if (message == NULL) {
WIFI_LOG(WIFI_ERROR, "Failed to get profile");
- goto done;
- }
- Error = NET_ERR_NO_PROFILE;
- g_variant_get(message, "(a(oa{sv}))", &iter);
- while (g_variant_iter_loop(iter, "(oa{sv})", &path, &service)) {
- if (g_strcmp0(ProfileName, path) == 0) {
- Error = __net_extract_service_info(network_info,
- ProfileName, service, ProfInfo);
- g_variant_iter_free(service);
- g_free(path);
- break;
- }
+ __NETWORK_FUNC_EXIT__;
+ return Error;
}
- g_variant_iter_free(iter);
+ g_variant_get(message, "(a{sv})", &service);
+ Error = __net_extract_service_info(network_info, ProfileName,
+ service, ProfInfo);
+
+ g_variant_iter_free(service);
g_variant_unref(message);
-done:
__NETWORK_FUNC_EXIT__;
return Error;
}