summaryrefslogtreecommitdiff
path: root/src/dhcp.c
diff options
context:
space:
mode:
authorJukka Rissanen <jukka.rissanen@linux.intel.com>2012-08-10 11:21:26 +0300
committerPatrik Flykt <patrik.flykt@linux.intel.com>2012-08-10 17:08:33 +0300
commit665eff90e5908188906f7d8b55bfe4eba28eaff2 (patch)
treec287162cee1f974e65bfd25868495b0dc0d5efed /src/dhcp.c
parent8042d16be5b0f4556f502be949271d14903e7a7d (diff)
downloadconnman-665eff90e5908188906f7d8b55bfe4eba28eaff2.tar.gz
connman-665eff90e5908188906f7d8b55bfe4eba28eaff2.tar.bz2
connman-665eff90e5908188906f7d8b55bfe4eba28eaff2.zip
dhcp: Apply received hostname option according to conf file setting
We do not use the received DHCP hostname option (12) if system config file setting says so. Fixes BMC#25597
Diffstat (limited to 'src/dhcp.c')
-rw-r--r--src/dhcp.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/dhcp.c b/src/dhcp.c
index 3425b6d1..9d1a95e1 100644
--- a/src/dhcp.c
+++ b/src/dhcp.c
@@ -28,6 +28,7 @@
#include <stdlib.h>
#include <connman/ipconfig.h>
+#include <include/setting.h>
#include <gdhcp/gdhcp.h>
@@ -258,9 +259,12 @@ static void lease_available_cb(GDHCPClient *dhcp_client, gpointer user_data)
if (option != NULL)
domainname = g_strdup(option->data);
- option = g_dhcp_client_get_option(dhcp_client, G_DHCP_HOST_NAME);
- if (option != NULL)
- hostname = g_strdup(option->data);
+ if (connman_setting_get_bool("AllowHostnameUpdates") == TRUE) {
+ option = g_dhcp_client_get_option(dhcp_client,
+ G_DHCP_HOST_NAME);
+ if (option != NULL)
+ hostname = g_strdup(option->data);
+ }
option = g_dhcp_client_get_option(dhcp_client, G_DHCP_NTP_SERVER);
ns_entries = g_list_length(option);