summaryrefslogtreecommitdiffstats
path: root/usr.sbin/bsdconfig
diff options
context:
space:
mode:
authordteske <dteske@FreeBSD.org>2013-07-05 23:16:56 +0000
committerdteske <dteske@FreeBSD.org>2013-07-05 23:16:56 +0000
commitf98492d5e216ae4340ac038c07cefbc31dd7a6c9 (patch)
treec80de8ad188b11d3968ad2228dc00844ba368eb9 /usr.sbin/bsdconfig
parenta9fa8698ffd1caaec1b00c94dbabca108bcf2239 (diff)
downloadFreeBSD-src-f98492d5e216ae4340ac038c07cefbc31dd7a6c9.zip
FreeBSD-src-f98492d5e216ae4340ac038c07cefbc31dd7a6c9.tar.gz
Don't prevent the user from hanging their system by changing network
settings while NFS mounts are active; but DO warn them and make the default action to do nothing. (thanks julian)
Diffstat (limited to 'usr.sbin/bsdconfig')
-rw-r--r--usr.sbin/bsdconfig/networking/include/messages.subr2
-rw-r--r--usr.sbin/bsdconfig/networking/share/device.subr11
-rw-r--r--usr.sbin/bsdconfig/networking/share/ipaddr.subr4
-rw-r--r--usr.sbin/bsdconfig/networking/share/media.subr8
-rw-r--r--usr.sbin/bsdconfig/networking/share/netmask.subr4
-rw-r--r--usr.sbin/bsdconfig/networking/share/routing.subr4
6 files changed, 16 insertions, 17 deletions
diff --git a/usr.sbin/bsdconfig/networking/include/messages.subr b/usr.sbin/bsdconfig/networking/include/messages.subr
index 2c4c668..ad5461c 100644
--- a/usr.sbin/bsdconfig/networking/include/messages.subr
+++ b/usr.sbin/bsdconfig/networking/include/messages.subr
@@ -73,7 +73,7 @@ msg_network_configuration="%s Network Configuration:\nChoose Save/Exit when fini
msg_network_interfaces="Network Interfaces"
msg_network_management="Network Management"
msg_networking_devices="Networking Devices"
-msg_nfs_mounts_may_cause_hang="WARNING! Changing this setting while NFS directories are\nmounted may cause the system to hang. Please exit this\nutility and dismount any/all remaining NFS-mounts before\nattempting to change this setting.\n\n%s"
+msg_nfs_mounts_may_cause_hang="WARNING! Changing this setting while NFS directories are\nmounted may cause the system to hang. Are you sure you\nwant to proceed?\n\n%s"
msg_no_network_interfaces="No network interfaces detected."
msg_no_options="No options (Default)"
msg_ok="OK"
diff --git a/usr.sbin/bsdconfig/networking/share/device.subr b/usr.sbin/bsdconfig/networking/share/device.subr
index 2bb7ba2..f4f0b25 100644
--- a/usr.sbin/bsdconfig/networking/share/device.subr
+++ b/usr.sbin/bsdconfig/networking/share/device.subr
@@ -263,16 +263,15 @@ f_dialog_menu_netdev_edit()
case "$tag" in
X\ *) break ;;
2\ *) #
- # Do not proceed if/when there are NFS-mounts currently
- # active. If the network is changed while NFS-exported
- # directories are mounted, the system may hang (if any
- # NFS mounts are using that interface).
+ # Proceed cautiously (confirm with the user) if/when NFS-
+ # mounts are active. If the network on which these mounts
+ # are made is changed parts of the system may hang.
#
if f_nfs_mounted && ! f_jailed; then
local setting="$( printf "$msg_current_dhcp_status" \
"$interface" "$dhcp_status" )"
- f_show_msg "$msg_nfs_mounts_may_cause_hang" "$setting"
- continue
+ f_noyes "$msg_nfs_mounts_may_cause_hang" "$setting" ||
+ continue
fi
#
diff --git a/usr.sbin/bsdconfig/networking/share/ipaddr.subr b/usr.sbin/bsdconfig/networking/share/ipaddr.subr
index 68d0ec1..a9e1c6e 100644
--- a/usr.sbin/bsdconfig/networking/share/ipaddr.subr
+++ b/usr.sbin/bsdconfig/networking/share/ipaddr.subr
@@ -146,8 +146,8 @@ f_dialog_input_ipaddr()
if f_nfs_mounted && ! f_jailed; then
local setting="$( printf "$msg_current_ipaddr" \
"$interface" "$_ipaddr" )"
- f_show_msg "$msg_nfs_mounts_may_cause_hang" "$setting"
- return $FAILURE
+ f_noyes "$msg_nfs_mounts_may_cause_hang" "$setting" ||
+ return $FAILURE
fi
local msg="$( printf "$msg_please_enter_new_ip_addr" "$interface" )"
diff --git a/usr.sbin/bsdconfig/networking/share/media.subr b/usr.sbin/bsdconfig/networking/share/media.subr
index 22073d7..36d811f 100644
--- a/usr.sbin/bsdconfig/networking/share/media.subr
+++ b/usr.sbin/bsdconfig/networking/share/media.subr
@@ -117,8 +117,8 @@ f_dialog_input_options()
if f_nfs_mounted && ! f_jailed; then
local setting="$( printf "$msg_current_options" \
"$interface" "$options" )"
- f_show_msg "$msg_nfs_mounts_may_cause_hang" "$setting"
- return $FAILURE
+ f_noyes "$msg_nfs_mounts_may_cause_hang" "$setting" ||
+ return $FAILURE
fi
local msg="$( printf "$msg_please_enter_mediaopts" "$interface" )"
@@ -164,8 +164,8 @@ f_dialog_menu_media_options()
if f_nfs_mounted && ! f_jailed; then
local setting="$( printf "$msg_current_options" \
"$interface" "$_options" )"
- f_show_msg "$msg_nfs_mounts_may_cause_hang" "$setting"
- return $FAILURE
+ f_noyes "$msg_nfs_mounts_may_cause_hang" "$setting" ||
+ return $FAILURE
fi
#
diff --git a/usr.sbin/bsdconfig/networking/share/netmask.subr b/usr.sbin/bsdconfig/networking/share/netmask.subr
index 5a4c7a3..683884b 100644
--- a/usr.sbin/bsdconfig/networking/share/netmask.subr
+++ b/usr.sbin/bsdconfig/networking/share/netmask.subr
@@ -96,8 +96,8 @@ f_dialog_input_netmask()
if f_nfs_mounted && ! f_jailed; then
local setting="$( printf "$msg_current_subnet" \
"$interface" "$_netmask" )"
- f_show_msg "$msg_nfs_mounts_may_cause_hang" "$setting"
- return $FAILURE
+ f_noyes "$msg_nfs_mounts_may_cause_hang" "$setting" ||
+ return $FAILURE
fi
#
diff --git a/usr.sbin/bsdconfig/networking/share/routing.subr b/usr.sbin/bsdconfig/networking/share/routing.subr
index cf29d28..62de26e 100644
--- a/usr.sbin/bsdconfig/networking/share/routing.subr
+++ b/usr.sbin/bsdconfig/networking/share/routing.subr
@@ -74,8 +74,8 @@ f_dialog_input_defaultrouter()
if f_nfs_mounted && ! f_jailed; then
local setting="$( printf "$msg_current_default_router" \
"$defaultrouter" )"
- f_show_msg "$msg_nfs_mounts_may_cause_hang" "$setting"
- return $FAILURE
+ f_noyes "$msg_nfs_mounts_may_cause_hang" "$setting" ||
+ return $FAILURE
fi
#
OpenPOWER on IntegriCloud