return CONNECTION_ERROR_NONE;
}
+EXPORT_API int connection_profile_get_dhcp_server_address(
+ connection_profile_h profile,
+ connection_address_family_e address_family, char** dhcp_server)
+{
+ CHECK_FEATURE_SUPPORTED(TELEPHONY_FEATURE, WIFI_FEATURE, TETHERING_BLUETOOTH_FEATURE, ETHERNET_FEATURE);
+
+ if (address_family == CONNECTION_ADDRESS_FAMILY_IPV6) {
+ CONNECTION_LOG(CONNECTION_ERROR, "Not supported");
+ return CONNECTION_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED;
+ }
+
+ if (!(_connection_libnet_check_profile_validity(profile)) ||
+ (address_family != CONNECTION_ADDRESS_FAMILY_IPV4) ||
+ dhcp_server == NULL) {
+ CONNECTION_LOG(CONNECTION_ERROR, "Invalid parameter");
+ return CONNECTION_ERROR_INVALID_PARAMETER;
+ }
+
+ net_profile_info_t *profile_info = profile;
+ net_dev_info_t *net_info = __profile_get_net_info(profile_info);
+ if (net_info == NULL)
+ return CONNECTION_ERROR_OPERATION_FAILED;
+
+ CONNECTION_LOG(CONNECTION_INFO, "IP Config %d, DHCP Server Address %s",
+ net_info->IpConfigType, (net_info->BServerAddr ? "TRUE" : "FALSE"));
+
+ *dhcp_server = __profile_convert_ip_to_string(&net_info->ServerAddr,
+ address_family);
+
+ if (*dhcp_server == NULL)
+ return CONNECTION_ERROR_OUT_OF_MEMORY;
+
+ return CONNECTION_ERROR_NONE;
+}
+
EXPORT_API int connection_profile_get_dns_address(connection_profile_h profile, int order,
connection_address_family_e address_family, char** dns_address)
{