summaryrefslogtreecommitdiff
path: root/net/ipv4/ipconfig.c
diff options
context:
space:
mode:
authorWu Fengguang <fengguang.wu@intel.com>2010-05-30 17:19:53 +0000
committerDavid S. Miller <davem@davemloft.net>2010-06-02 07:05:03 -0700
commit130c0f47fdf9c533deb1136cad5136f6cb7020f0 (patch)
tree38ab94d926bf68fc2dd5cb8941777574bcb26a11 /net/ipv4/ipconfig.c
parent614f60fa9d73a9e8fdff3df83381907fea7c5649 (diff)
downloadlinux-stable-130c0f47fdf9c533deb1136cad5136f6cb7020f0.tar.gz
linux-stable-130c0f47fdf9c533deb1136cad5136f6cb7020f0.tar.bz2
linux-stable-130c0f47fdf9c533deb1136cad5136f6cb7020f0.zip
ipconfig: send host-name in DHCP requests
Normally dhclient can be configured to send the "host-name" option in DHCP requests to update the client's DNS record. However for an NFSROOT system, dhclient shall never be called (which may change the IP addr and therefore lose your root NFS mount connection). So enable updating the DNS record with kernel parameter ip=::::$HOST_NAME::dhcp Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/ipconfig.c')
-rw-r--r--net/ipv4/ipconfig.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/net/ipv4/ipconfig.c b/net/ipv4/ipconfig.c
index b9d84e800cf4..3a6e1ec5e9ae 100644
--- a/net/ipv4/ipconfig.c
+++ b/net/ipv4/ipconfig.c
@@ -665,6 +665,13 @@ ic_dhcp_init_options(u8 *options)
memcpy(e, ic_req_params, sizeof(ic_req_params));
e += sizeof(ic_req_params);
+ if (ic_host_name_set) {
+ *e++ = 12; /* host-name */
+ len = strlen(utsname()->nodename);
+ *e++ = len;
+ memcpy(e, utsname()->nodename, len);
+ e += len;
+ }
if (*vendor_class_identifier) {
printk(KERN_INFO "DHCP: sending class identifier \"%s\"\n",
vendor_class_identifier);