+ } else if (g_strcmp0(field, WIFI_CONFIG_CREATED) == 0) {
+ if (g_variant_is_of_type(value, G_VARIANT_TYPE_BOOLEAN)) {
+ conf->is_created = g_variant_get_boolean(value);
+ DBG("is_created [%d]", conf->is_created);
+ } else {
+ conf->is_created = FALSE;
+ }
+ } else if (g_strcmp0(field, WIFI_CONFIG_IPV4_METHOD) == 0) {
+ if (g_variant_is_of_type(value, G_VARIANT_TYPE_STRING)) {
+ conf->ip_info->ip_type = g_strdup(g_variant_get_string(value, NULL));
+ DBG("IP config type [%s]", conf->ip_info->ip_type);
+ } else {
+ conf->ip_info->ip_type = NULL;
+ }
+ } else if (g_strcmp0(field, WIFI_CONFIG_IPV4_ADDRESS) == 0) {
+ if (g_variant_is_of_type(value, G_VARIANT_TYPE_STRING)) {
+ conf->ip_info->ip_address = g_strdup(g_variant_get_string(value, NULL));
+ DBG("IP address [%s]", conf->ip_info->ip_address);
+ } else {
+ conf->ip_info->ip_address = NULL;
+ }
+ } else if (g_strcmp0(field, WIFI_CONFIG_IPV4_SUBNET_MASK) == 0) {
+ if (g_variant_is_of_type(value, G_VARIANT_TYPE_STRING)) {
+ conf->ip_info->subnet_mask = g_strdup(g_variant_get_string(value, NULL));
+ DBG("Subnet Mask [%s]", conf->ip_info->subnet_mask);
+ } else {
+ conf->ip_info->subnet_mask = NULL;
+ }
+ } else if (g_strcmp0(field, WIFI_CONFIG_IPV6_PREFIX_LEN) == 0) {
+ if (g_variant_is_of_type(value, G_VARIANT_TYPE_INT32)) {
+ conf->ip_info->prefix_length = g_variant_get_int32(value);
+ DBG("IPv6 Prefix Length [%d]", conf->ip_info->prefix_length);
+ } else {
+ conf->ip_info->prefix_length = 0;
+ }
+ } else if (g_strcmp0(field, WIFI_CONFIG_IPV4_GATEWAY_ADDRESS) == 0) {
+ if (g_variant_is_of_type(value, G_VARIANT_TYPE_STRING)) {
+ conf->ip_info->gateway_address = g_strdup(g_variant_get_string(value, NULL));
+ DBG("Gateway address [%s]", conf->ip_info->gateway_address);
+ } else {
+ conf->ip_info->gateway_address = NULL;
+ }
+ } else if (g_strcmp0(field, WIFI_CONFIG_IPV4_DNS_METHOD) == 0) {
+ if (g_variant_is_of_type(value, G_VARIANT_TYPE_STRING)) {
+ conf->ip_info->dns_type = g_strdup(g_variant_get_string(value, NULL));
+ DBG("DNS config type [%s]", conf->ip_info->dns_type);
+ } else {
+ conf->ip_info->dns_type = NULL;
+ }
+ } else if (g_strcmp0(field, WIFI_CONFIG_DNS_ADDRESS) == 0) {
+ if (g_variant_is_of_type(value, G_VARIANT_TYPE_STRING)) {
+ conf->ip_info->dns_address[order] = g_strdup(g_variant_get_string(value, NULL));
+ DBG("DNS address [%s]", conf->ip_info->dns_address[order]);
+ conf->ip_info->dns_count = order + 1;
+ order++;
+ } else {
+ conf->ip_info->dns_address[order++] = NULL;
+ }