aboutsummaryrefslogtreecommitdiffstats
path: root/sysconfig/network-scripts/network-functions
diff options
context:
space:
mode:
authorDavid Kaspar [Dee'Kej] <dkaspar@redhat.com>2016-11-15 17:21:03 +0100
committerLukáš Nykrýn <lnykryn@redhat.com>2016-11-16 12:17:54 +0100
commit2ea1dcf2d22606f4b30ae16a14a736d0d9dddf24 (patch)
treee2fd5a42d72bfb1b963ea82a0512d5c1ae91f0f6 /sysconfig/network-scripts/network-functions
parent02760563d7ea60bf767812aa0cf5cd97d20a2217 (diff)
downloadinitscripts-2ea1dcf2d22606f4b30ae16a14a736d0d9dddf24.tar
initscripts-2ea1dcf2d22606f4b30ae16a14a736d0d9dddf24.tar.gz
initscripts-2ea1dcf2d22606f4b30ae16a14a736d0d9dddf24.tar.bz2
initscripts-2ea1dcf2d22606f4b30ae16a14a736d0d9dddf24.tar.xz
initscripts-2ea1dcf2d22606f4b30ae16a14a736d0d9dddf24.zip
sysconfig/network: NO_DHCP_HOSTNAME option introduced
Previously, some administrators were unable to force initscripts to not obtatin hostname from DHCP, even though they were using static configuration of network. Righ now, setting 'NO_DHCP_HOSTNAME' to 'yes', 'true' or '1' in /etc/sysconfig/network will allow them to do so.
Diffstat (limited to 'sysconfig/network-scripts/network-functions')
-rw-r--r--sysconfig/network-scripts/network-functions22
1 files changed, 19 insertions, 3 deletions
diff --git a/sysconfig/network-scripts/network-functions b/sysconfig/network-scripts/network-functions
index 4ff6b988..46db1cab 100644
--- a/sysconfig/network-scripts/network-functions
+++ b/sysconfig/network-scripts/network-functions
@@ -353,20 +353,36 @@ is_available_wait ()
return $ret
}
-need_hostname ()
+is_hostname_set ()
{
CHECK_HOSTNAME="$(hostname)"
case "$CHECK_HOSTNAME" in
'(none)' | 'localhost' | 'localhost.localdomain')
- return 0
+ # Hostname NOT set:
+ return 1
;;
*)
- return 1
+ # Hostname IS set:
+ return 0
;;
esac
}
+need_hostname ()
+{
+ # Should we avoid obtaining hostname from DHCP? (user override)
+ is_true "${NO_DHCP_HOSTNAME}" && return 1
+
+ if is_hostname_set; then
+ # Hostname is already set, we do not need to acquire it:
+ return 1
+ else
+ # Hostname is NOT set, we need to acquire it:
+ return 0
+ fi
+}
+
set_hostname ()
{
hostname $1