From 2ea1dcf2d22606f4b30ae16a14a736d0d9dddf24 Mon Sep 17 00:00:00 2001 From: "David Kaspar [Dee'Kej]" Date: Tue, 15 Nov 2016 17:21:03 +0100 Subject: 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. --- sysconfig/network-scripts/network-functions | 22 +++++++++++++++++++--- 1 file changed, 19 insertions(+), 3 deletions(-) (limited to 'sysconfig/network-scripts/network-functions') 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 -- cgit v1.2.1