Your message dated Thu, 13 Feb 2025 21:46:44 +0000
with message-id <[email protected]>
and subject line Re: Bug#653077: initscripts: cleanup patches for 
/etc/network/if-up.d/mountnfs
has caused the Debian Bug report #653077,
regarding initscripts: cleanup patches for /etc/network/if-up.d/mountnfs
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
653077: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=653077
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: initscripts
Version: 2.88dsf-18
Severity: minor
Tags: patch

Dear Maintainer,

Please find attached a series of 21 patches, attempt to cleanup,
robustify and improve performance and maintability of that script
(triggerd by bug#625726.

These patches do not improve error handling, although such an effort
would be prized.


-- System Information:
Debian Release: wheezy/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 3.1.0-1-686-pae (SMP w/2 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash

Versions of packages initscripts depends on:
ii  coreutils       8.13-3
ii  debianutils     4.1
ii  libc6           2.13-23
ii  lsb-base        3.2-28
ii  mount           2.20.1-1
ii  sysv-rc         2.88dsf-18
ii  sysvinit-utils  2.88dsf-18

Versions of packages initscripts recommends:
ii  e2fsprogs  1.42-1
ii  psmisc     22.14-1

initscripts suggests no packages.

-- Configuration Files:
/etc/init.d/bootlogd changed [not included]

-- no debconf information


Cheers,

-- 
Cristian
From 5ee806120d466bd4795a822de83ba8e1255dd238 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 10:26:06 +0100
Subject: [PATCH 01/21] Cleaned up end-of-line whitespace.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/mountnfs b/mountnfs
index e6bc833..d4ee06f 100755
--- a/mountnfs
+++ b/mountnfs
@@ -19,7 +19,7 @@ set_env() {
 	# Read through fstab line by line. If it is NFS, set the flag
 	# for mounting NFS file systems. If any NFS partition is found and it
 	# not mounted with the nolock option, we start the portmapper.
-	# 
+	#
 	# If any sec={krb5,krb5i,krb5p} option is given, or any of the file
 	# systems are nfs4, we'll need to start rpc.gssd and/or rpc.idmapd too;
 	# we'll leave that to nfs-common.
-- 
1.7.7.3

From a67d8952dfbcc194bee6580c9a5a924373b5916e Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 10:29:18 +0100
Subject: [PATCH 02/21] Cleaned up space-followed-by-tab.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/mountnfs b/mountnfs
index d4ee06f..4668abe 100755
--- a/mountnfs
+++ b/mountnfs
@@ -47,12 +47,12 @@ set_env() {
 		esac
 		case "$FSTYPE" in
 		  nfs)
-		  	# NFS filsystems normally require statd and portmap. However,
+			# NFS filsystems normally require statd and portmap. However,
 			# if nolock is set, portmap and statd are not required for this
 			# file system.
 			case "$OPTS" in
 			  nolock|*,nolock|nolock,*|*,nolock,*)
-			  	# no action
+				# no action
 				;;
 			  *)
 				start_nfs=yes
@@ -63,7 +63,7 @@ set_env() {
 			case "$OPTS" in
 			  sec=krb5|*,sec=krb5|sec=krb5,*|*,sec=krb5,*|sec=krb5i|*,sec=krb5i|sec=krb5i,*|*,sec=krb5i,*|sec=krb5p|*,sec=krb5p|sec=krb5p,*|*,sec=krb5p,*)
 
-			  	start_nfs=yes
+				start_nfs=yes
 				;;
 			esac
 			;;
-- 
1.7.7.3

From cdb4716ee41dca22bd64437c1981d832366581d9 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 10:31:37 +0100
Subject: [PATCH 03/21] Cleaned up indentation whitespace.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/mountnfs b/mountnfs
index 4668abe..791cc31 100755
--- a/mountnfs
+++ b/mountnfs
@@ -118,7 +118,7 @@ do_start() {
 
 exit_unless_last_interface() {
     ifaces="$(grep "^[[:space:]]*auto" /etc/network/interfaces  | \
-        sed -e 's/[ \t]*auto[ \t]*//;s/[ \t]*$//;s/[ \t]/\n/g')"
+	sed -e 's/[ \t]*auto[ \t]*//;s/[ \t]*$//;s/[ \t]/\n/g')"
     for i in $ifaces ; do
 	if ! grep -q $i /etc/network/run/ifstate ; then
 	    msg="if-up.d/mountnfs[$IFACE]: waiting for interface $i before doing NFS mounts"
@@ -159,7 +159,7 @@ if [ no != "$ASYNCMOUNTNFS" ]; then
     fi
 
     on_exit() {
-        # Clean up lock when script exits, even if it is interrupted
+	# Clean up lock when script exits, even if it is interrupted
 	rmdir /var/run/network/mountnfs 2>/dev/null || exit 0
     }
     trap on_exit EXIT # Enable emergency handler
-- 
1.7.7.3

From e4cdfadea6340b7b94e88ef29b4191c4a287597e Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 10:38:05 +0100
Subject: [PATCH 04/21] Various whitespace cleanup.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |   13 ++++++-------
 1 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/mountnfs b/mountnfs
index 791cc31..57a2cd7 100755
--- a/mountnfs
+++ b/mountnfs
@@ -1,4 +1,4 @@
-#! /bin/sh
+#!/bin/sh
 # Description:       Now that TCP/IP is configured, mount the NFS file
 #                    systems in /etc/fstab if needed. If possible,
 #                    start the portmapper before mounting (this is needed for
@@ -62,7 +62,6 @@ set_env() {
 			# However, Kerberos requires gssd, so start nfs-common anyway.
 			case "$OPTS" in
 			  sec=krb5|*,sec=krb5|sec=krb5,*|*,sec=krb5,*|sec=krb5i|*,sec=krb5i|sec=krb5i,*|*,sec=krb5i,*|sec=krb5p|*,sec=krb5p|sec=krb5p,*|*,sec=krb5p,*)
-
 				start_nfs=yes
 				;;
 			esac
@@ -119,8 +118,8 @@ do_start() {
 exit_unless_last_interface() {
     ifaces="$(grep "^[[:space:]]*auto" /etc/network/interfaces  | \
 	sed -e 's/[ \t]*auto[ \t]*//;s/[ \t]*$//;s/[ \t]/\n/g')"
-    for i in $ifaces ; do
-	if ! grep -q $i /etc/network/run/ifstate ; then
+    for i in $ifaces; do
+	if ! grep -q $i /etc/network/run/ifstate; then
 	    msg="if-up.d/mountnfs[$IFACE]: waiting for interface $i before doing NFS mounts"
 	    log_warning_msg "$msg"
 	    exit 0
@@ -142,13 +141,13 @@ if [ no != "$ASYNCMOUNTNFS" ]; then
     [ "$IFACE" != "lo" ] || exit 0
 
     # Lock around this otherwise insanity may occur
-    mkdir /var/run/network          2>/dev/null || true
+    mkdir /var/run/network 2>/dev/null || true
 
     # Wait until all auto interfaces are up before attemting to mount
     # network file systems.
     exit_unless_last_interface
 
-    if mkdir /var/run/network/mountnfs 2>/dev/null ; then
+    if mkdir /var/run/network/mountnfs 2>/dev/null; then
 	:
     else
 	msg="if-up.d/mountnfs[$IFACE]: lock /var/run/network/mountnfs exist, not mounting"
@@ -164,6 +163,6 @@ if [ no != "$ASYNCMOUNTNFS" ]; then
     }
     trap on_exit EXIT # Enable emergency handler
     do_start
-elif [ yes = "$FROMINITD" ] ; then
+elif [ yes = "$FROMINITD" ]; then
     do_start
 fi
-- 
1.7.7.3

From 344e31ec2f25135427da78e7aa2deebedf7d9aef Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 10:43:07 +0100
Subject: [PATCH 05/21] Uniformized some command syntax.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |   12 ++++--------
 1 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/mountnfs b/mountnfs
index 57a2cd7..506c292 100755
--- a/mountnfs
+++ b/mountnfs
@@ -30,8 +30,7 @@ set_env() {
 	start_nfs=no
 	NETFS=""
 	NETDEV=""
-	while read DEV MTPT FSTYPE OPTS REST
-	do
+	while read DEV MTPT FSTYPE OPTS REST; do
 		case "$DEV" in
 		  ""|\#*)
 			continue
@@ -76,8 +75,7 @@ set_env() {
 			FSTYPE=
 			;;
 		esac
-		if [ "$FSTYPE" ]
-		then
+		if [ "$FSTYPE" ]; then
 			case "$NETFS" in
 			  $FSTYPE|*,$FSTYPE|$FSTYPE,*|*,$FSTYPE,*)
 				;;
@@ -97,16 +95,14 @@ do_start() {
 	# and/or rpc.idmapd, and loads the right kernel modules if
 	# applicable) if we use Kerberos and/or NFSv4 mounts.
 	#
-	if [ "$start_nfs" = yes ] && [ -x /etc/init.d/nfs-common ]
-	then
+	if [ "$start_nfs" = yes ] && [ -x /etc/init.d/nfs-common ]; then
 		[ -x /etc/init.d/portmap ] && /etc/init.d/portmap start
 		[ -x /etc/init.d/rpcbind ] && /etc/init.d/rpcbind start
 		/etc/init.d/nfs-common start
 	fi
 
 	pre_mountall
-	if [ "$NETFS" ]
-	then
+	if [ "$NETFS" ]; then
 		mount -a -t$NETFS
 	fi
 	if [ "$NETDEV" ]; then
-- 
1.7.7.3

From 37f3c3f9a8aee31806c72e7e1fc53924db0453ae Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 10:49:08 +0100
Subject: [PATCH 06/21] Reindented some parts.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |   74 +++++++++++++++++++++++++++++++-------------------------------
 1 files changed, 37 insertions(+), 37 deletions(-)

diff --git a/mountnfs b/mountnfs
index 506c292..bb8c2e9 100755
--- a/mountnfs
+++ b/mountnfs
@@ -112,15 +112,15 @@ do_start() {
 }
 
 exit_unless_last_interface() {
-    ifaces="$(grep "^[[:space:]]*auto" /etc/network/interfaces  | \
-	sed -e 's/[ \t]*auto[ \t]*//;s/[ \t]*$//;s/[ \t]/\n/g')"
-    for i in $ifaces; do
-	if ! grep -q $i /etc/network/run/ifstate; then
-	    msg="if-up.d/mountnfs[$IFACE]: waiting for interface $i before doing NFS mounts"
-	    log_warning_msg "$msg"
-	    exit 0
-	fi
-    done
+	ifaces="$(grep "^[[:space:]]*auto" /etc/network/interfaces | \
+		sed -e 's/[ \t]*auto[ \t]*//;s/[ \t]*$//;s/[ \t]/\n/g')"
+	for i in $ifaces; do
+		if ! grep -q $i /etc/network/run/ifstate; then
+			msg="if-up.d/mountnfs[$IFACE]: waiting for interface $i before doing NFS mounts"
+			log_warning_msg "$msg"
+			exit 0
+		fi
+	done
 }
 
 # Using 'no !=' instead of 'yes =' to make sure async nfs mounting is
@@ -129,36 +129,36 @@ set_env
 # Exit imediately and do not claim to wait for the last interface if
 # no network file systems are listed in /etc/fstab.
 if [ "$start_nfs" = "no" ] && [ ! "$NETFS" ] && [ ! "$NETDEV" ]; then
-  exit 0
+	exit 0
 fi
 
 if [ no != "$ASYNCMOUNTNFS" ]; then
-    # Not for loopback!
-    [ "$IFACE" != "lo" ] || exit 0
-
-    # Lock around this otherwise insanity may occur
-    mkdir /var/run/network 2>/dev/null || true
-
-    # Wait until all auto interfaces are up before attemting to mount
-    # network file systems.
-    exit_unless_last_interface
-
-    if mkdir /var/run/network/mountnfs 2>/dev/null; then
-	:
-    else
-	msg="if-up.d/mountnfs[$IFACE]: lock /var/run/network/mountnfs exist, not mounting"
-	log_failure_msg "$msg"
-	# Log if /usr/ is mounted
-	[ -x /usr/bin/logger ] && /usr/bin/logger -t "if-up.d/mountnfs[$IFACE]" "$msg"
-	exit 0
-    fi
-
-    on_exit() {
-	# Clean up lock when script exits, even if it is interrupted
-	rmdir /var/run/network/mountnfs 2>/dev/null || exit 0
-    }
-    trap on_exit EXIT # Enable emergency handler
-    do_start
+	# Not for loopback!
+	[ "$IFACE" != "lo" ] || exit 0
+
+	# Lock around this otherwise insanity may occur
+	mkdir /var/run/network 2>/dev/null || true
+
+	# Wait until all auto interfaces are up before attemting to mount
+	# network file systems.
+	exit_unless_last_interface
+
+	if mkdir /var/run/network/mountnfs 2>/dev/null; then
+		:
+	else
+		msg="if-up.d/mountnfs[$IFACE]: lock /var/run/network/mountnfs exist, not mounting"
+		log_failure_msg "$msg"
+		# Log if /usr/ is mounted
+		[ -x /usr/bin/logger ] && /usr/bin/logger -t "if-up.d/mountnfs[$IFACE]" "$msg"
+		exit 0
+	fi
+
+	on_exit() {
+		# Clean up lock when script exits, even if it is interrupted
+		rmdir /var/run/network/mountnfs 2>/dev/null || exit 0
+	}
+	trap on_exit EXIT # Enable emergency handler
+	do_start
 elif [ yes = "$FROMINITD" ]; then
-    do_start
+	do_start
 fi
-- 
1.7.7.3

From ed7023160ecfe8d06bffeda1269b54798aa554e7 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 10:51:10 +0100
Subject: [PATCH 07/21] '|' is a control operator, therefore '\' is
 superfluous.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/mountnfs b/mountnfs
index bb8c2e9..a7e71da 100755
--- a/mountnfs
+++ b/mountnfs
@@ -112,7 +112,7 @@ do_start() {
 }
 
 exit_unless_last_interface() {
-	ifaces="$(grep "^[[:space:]]*auto" /etc/network/interfaces | \
+	ifaces="$(grep "^[[:space:]]*auto" /etc/network/interfaces |
 		sed -e 's/[ \t]*auto[ \t]*//;s/[ \t]*$//;s/[ \t]/\n/g')"
 	for i in $ifaces; do
 		if ! grep -q $i /etc/network/run/ifstate; then
-- 
1.7.7.3

From cc5e4cea32217dfdbdd6d81b7cd8bf9226745c2b Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 10:53:39 +0100
Subject: [PATCH 08/21] Use correct character class (s/space/blank/).

`man tr'
	[:space:]
		all horizontal or vertical whitespace
		               ^^^^^^^^^^^
We're interested just in horizontal whitespace.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/mountnfs b/mountnfs
index a7e71da..f95ea85 100755
--- a/mountnfs
+++ b/mountnfs
@@ -112,7 +112,7 @@ do_start() {
 }
 
 exit_unless_last_interface() {
-	ifaces="$(grep "^[[:space:]]*auto" /etc/network/interfaces |
+	ifaces="$(grep "^[[:blank:]]*auto" /etc/network/interfaces |
 		sed -e 's/[ \t]*auto[ \t]*//;s/[ \t]*$//;s/[ \t]/\n/g')"
 	for i in $ifaces; do
 		if ! grep -q $i /etc/network/run/ifstate; then
-- 
1.7.7.3

From c033def2f7d0149b03f840d84770c0e78d1146c6 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 11:01:02 +0100
Subject: [PATCH 09/21] Extended use [:blank:] character class.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/mountnfs b/mountnfs
index f95ea85..558881e 100755
--- a/mountnfs
+++ b/mountnfs
@@ -113,7 +113,7 @@ do_start() {
 
 exit_unless_last_interface() {
 	ifaces="$(grep "^[[:blank:]]*auto" /etc/network/interfaces |
-		sed -e 's/[ \t]*auto[ \t]*//;s/[ \t]*$//;s/[ \t]/\n/g')"
+		sed -e 's/[[:blank:]]*auto[[:blank:]]*//;s/[[:blank:]]*$//;s/[[:blank:]]/\n/g')"
 	for i in $ifaces; do
 		if ! grep -q $i /etc/network/run/ifstate; then
 			msg="if-up.d/mountnfs[$IFACE]: waiting for interface $i before doing NFS mounts"
-- 
1.7.7.3

From 07e742f6945bffd2e9918db27ef5dbdda457bfa7 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 11:39:10 +0100
Subject: [PATCH 10/21] Eliminate a 'grep' fork.  'sed' can do that too.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)

diff --git a/mountnfs b/mountnfs
index 558881e..5fd11dc 100755
--- a/mountnfs
+++ b/mountnfs
@@ -112,8 +112,7 @@ do_start() {
 }
 
 exit_unless_last_interface() {
-	ifaces="$(grep "^[[:blank:]]*auto" /etc/network/interfaces |
-		sed -e 's/[[:blank:]]*auto[[:blank:]]*//;s/[[:blank:]]*$//;s/[[:blank:]]/\n/g')"
+	ifaces="$(sed -ne '/^[[:blank:]]*auto[[:blank:]]*/{s/^[[:blank:]]*auto[[:blank:]]*//;s/[[:blank:]]*$//;s/[[:blank:]]\+/\n/g;p}' /etc/network/interfaces)"
 	for i in $ifaces; do
 		if ! grep -q $i /etc/network/run/ifstate; then
 			msg="if-up.d/mountnfs[$IFACE]: waiting for interface $i before doing NFS mounts"
-- 
1.7.7.3

From 64a9bab2e22774b6b652df88d3a3ba8d75fd3030 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 11:41:36 +0100
Subject: [PATCH 11/21] Removed useless quotes.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/mountnfs b/mountnfs
index 5fd11dc..ba2a739 100755
--- a/mountnfs
+++ b/mountnfs
@@ -112,7 +112,7 @@ do_start() {
 }
 
 exit_unless_last_interface() {
-	ifaces="$(sed -ne '/^[[:blank:]]*auto[[:blank:]]*/{s/^[[:blank:]]*auto[[:blank:]]*//;s/[[:blank:]]*$//;s/[[:blank:]]\+/\n/g;p}' /etc/network/interfaces)"
+	ifaces=$(sed -ne '/^[[:blank:]]*auto[[:blank:]]*/{s/^[[:blank:]]*auto[[:blank:]]*//;s/[[:blank:]]*$//;s/[[:blank:]]\+/\n/g;p}' /etc/network/interfaces)
 	for i in $ifaces; do
 		if ! grep -q $i /etc/network/run/ifstate; then
 			msg="if-up.d/mountnfs[$IFACE]: waiting for interface $i before doing NFS mounts"
-- 
1.7.7.3

From d22706e097215d6990f6bfc5256997cac58717e8 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 11:45:12 +0100
Subject: [PATCH 12/21] Removed more useless quotes.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |   20 ++++++++++----------
 1 files changed, 10 insertions(+), 10 deletions(-)

diff --git a/mountnfs b/mountnfs
index ba2a739..4b62fdb 100755
--- a/mountnfs
+++ b/mountnfs
@@ -28,15 +28,15 @@ set_env() {
 	exec 9<&0 </etc/fstab
 
 	start_nfs=no
-	NETFS=""
-	NETDEV=""
+	NETFS=
+	NETDEV=
 	while read DEV MTPT FSTYPE OPTS REST; do
-		case "$DEV" in
+		case $DEV in
 		  ""|\#*)
 			continue
 			;;
 		esac
-		case "$OPTS" in
+		case $OPTS in
 		  noauto|*,noauto|noauto,*|*,noauto,*)
 			continue
 			;;
@@ -44,12 +44,12 @@ set_env() {
 			NETDEV=yes
 			;;
 		esac
-		case "$FSTYPE" in
+		case $FSTYPE in
 		  nfs)
 			# NFS filsystems normally require statd and portmap. However,
 			# if nolock is set, portmap and statd are not required for this
 			# file system.
-			case "$OPTS" in
+			case $OPTS in
 			  nolock|*,nolock|nolock,*|*,nolock,*)
 				# no action
 				;;
@@ -59,7 +59,7 @@ set_env() {
 			esac
 
 			# However, Kerberos requires gssd, so start nfs-common anyway.
-			case "$OPTS" in
+			case $OPTS in
 			  sec=krb5|*,sec=krb5|sec=krb5,*|*,sec=krb5,*|sec=krb5i|*,sec=krb5i|sec=krb5i,*|*,sec=krb5i,*|sec=krb5p|*,sec=krb5p|sec=krb5p,*|*,sec=krb5p,*)
 				start_nfs=yes
 				;;
@@ -76,7 +76,7 @@ set_env() {
 			;;
 		esac
 		if [ "$FSTYPE" ]; then
-			case "$NETFS" in
+			case $NETFS in
 			  $FSTYPE|*,$FSTYPE|$FSTYPE,*|*,$FSTYPE,*)
 				;;
 			  *)
@@ -127,13 +127,13 @@ exit_unless_last_interface() {
 set_env
 # Exit imediately and do not claim to wait for the last interface if
 # no network file systems are listed in /etc/fstab.
-if [ "$start_nfs" = "no" ] && [ ! "$NETFS" ] && [ ! "$NETDEV" ]; then
+if [ "$start_nfs" = no ] && [ ! "$NETFS" ] && [ ! "$NETDEV" ]; then
 	exit 0
 fi
 
 if [ no != "$ASYNCMOUNTNFS" ]; then
 	# Not for loopback!
-	[ "$IFACE" != "lo" ] || exit 0
+	[ "$IFACE" != lo ] || exit 0
 
 	# Lock around this otherwise insanity may occur
 	mkdir /var/run/network 2>/dev/null || true
-- 
1.7.7.3

From 752aa06e86ecdc924c718fb18afe44caca16a207 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 11:47:36 +0100
Subject: [PATCH 13/21] Use correct test operator.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/mountnfs b/mountnfs
index 4b62fdb..f51638d 100755
--- a/mountnfs
+++ b/mountnfs
@@ -127,7 +127,7 @@ exit_unless_last_interface() {
 set_env
 # Exit imediately and do not claim to wait for the last interface if
 # no network file systems are listed in /etc/fstab.
-if [ "$start_nfs" = no ] && [ ! "$NETFS" ] && [ ! "$NETDEV" ]; then
+if [ "$start_nfs" = no ] && [ -z "$NETFS" ] && [ -z "$NETDEV" ]; then
 	exit 0
 fi
 
-- 
1.7.7.3

From 58bce19e531bfe2cf5b3cddf0cdf576316a944f2 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 11:48:47 +0100
Subject: [PATCH 14/21] Optimized test; removed useless ':' command.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    4 +---
 1 files changed, 1 insertions(+), 3 deletions(-)

diff --git a/mountnfs b/mountnfs
index f51638d..9cee9b4 100755
--- a/mountnfs
+++ b/mountnfs
@@ -142,9 +142,7 @@ if [ no != "$ASYNCMOUNTNFS" ]; then
 	# network file systems.
 	exit_unless_last_interface
 
-	if mkdir /var/run/network/mountnfs 2>/dev/null; then
-		:
-	else
+	if ! mkdir /var/run/network/mountnfs 2>/dev/null; then
 		msg="if-up.d/mountnfs[$IFACE]: lock /var/run/network/mountnfs exist, not mounting"
 		log_failure_msg "$msg"
 		# Log if /usr/ is mounted
-- 
1.7.7.3

From 173a1bfb119e00d4e0310524a716d1f196e744c5 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 11:49:54 +0100
Subject: [PATCH 15/21] Use builtin ':', 'true' alternative.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/mountnfs b/mountnfs
index 9cee9b4..1c10c8a 100755
--- a/mountnfs
+++ b/mountnfs
@@ -136,7 +136,7 @@ if [ no != "$ASYNCMOUNTNFS" ]; then
 	[ "$IFACE" != lo ] || exit 0
 
 	# Lock around this otherwise insanity may occur
-	mkdir /var/run/network 2>/dev/null || true
+	mkdir /var/run/network 2>/dev/null || :
 
 	# Wait until all auto interfaces are up before attemting to mount
 	# network file systems.
-- 
1.7.7.3

From 8fc00381f035a97d9cc848e7d02f2809d4f8d8f4 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 11:53:53 +0100
Subject: [PATCH 16/21] Use consistent syntax in tests.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/mountnfs b/mountnfs
index 1c10c8a..e9cf7b3 100755
--- a/mountnfs
+++ b/mountnfs
@@ -131,7 +131,7 @@ if [ "$start_nfs" = no ] && [ -z "$NETFS" ] && [ -z "$NETDEV" ]; then
 	exit 0
 fi
 
-if [ no != "$ASYNCMOUNTNFS" ]; then
+if [ "$ASYNCMOUNTNFS" != no ]; then
 	# Not for loopback!
 	[ "$IFACE" != lo ] || exit 0
 
@@ -156,6 +156,6 @@ if [ no != "$ASYNCMOUNTNFS" ]; then
 	}
 	trap on_exit EXIT # Enable emergency handler
 	do_start
-elif [ yes = "$FROMINITD" ]; then
+elif [ "$FROMINITD" = yes ]; then
 	do_start
 fi
-- 
1.7.7.3

From 27ded560d9eea012d1da3308d62c0dde2161e5b8 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 11:57:15 +0100
Subject: [PATCH 17/21] START_NFS is a global variable; initialize outside
 functions.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |   13 +++++++------
 1 files changed, 7 insertions(+), 6 deletions(-)

diff --git a/mountnfs b/mountnfs
index e9cf7b3..9cb737b 100755
--- a/mountnfs
+++ b/mountnfs
@@ -13,6 +13,8 @@ PATH=/sbin:/bin
 . /lib/lsb/init-functions
 . /lib/init/mount-functions.sh
 
+START_NFS=no
+
 set_env() {
 	[ -f /etc/fstab ] || return
 	#
@@ -27,7 +29,6 @@ set_env() {
 
 	exec 9<&0 </etc/fstab
 
-	start_nfs=no
 	NETFS=
 	NETDEV=
 	while read DEV MTPT FSTYPE OPTS REST; do
@@ -54,20 +55,20 @@ set_env() {
 				# no action
 				;;
 			  *)
-				start_nfs=yes
+				START_NFS=yes
 				;;
 			esac
 
 			# However, Kerberos requires gssd, so start nfs-common anyway.
 			case $OPTS in
 			  sec=krb5|*,sec=krb5|sec=krb5,*|*,sec=krb5,*|sec=krb5i|*,sec=krb5i|sec=krb5i,*|*,sec=krb5i,*|sec=krb5p|*,sec=krb5p|sec=krb5p,*|*,sec=krb5p,*)
-				start_nfs=yes
+				START_NFS=yes
 				;;
 			esac
 			;;
 		  nfs4)
 			# NFSv4 requires idmapd, so start nfs-common no matter what the options are.
-			start_nfs=yes
+			START_NFS=yes
 			;;
 		  smbfs|cifs|coda|ncp|ncpfs|ocfs2|gfs|ceph)
 			;;
@@ -95,7 +96,7 @@ do_start() {
 	# and/or rpc.idmapd, and loads the right kernel modules if
 	# applicable) if we use Kerberos and/or NFSv4 mounts.
 	#
-	if [ "$start_nfs" = yes ] && [ -x /etc/init.d/nfs-common ]; then
+	if [ "$START_NFS" = yes ] && [ -x /etc/init.d/nfs-common ]; then
 		[ -x /etc/init.d/portmap ] && /etc/init.d/portmap start
 		[ -x /etc/init.d/rpcbind ] && /etc/init.d/rpcbind start
 		/etc/init.d/nfs-common start
@@ -127,7 +128,7 @@ exit_unless_last_interface() {
 set_env
 # Exit imediately and do not claim to wait for the last interface if
 # no network file systems are listed in /etc/fstab.
-if [ "$start_nfs" = no ] && [ -z "$NETFS" ] && [ -z "$NETDEV" ]; then
+if [ "$START_NFS" = no ] && [ -z "$NETFS" ] && [ -z "$NETDEV" ]; then
 	exit 0
 fi
 
-- 
1.7.7.3

From 5408e3e7f28f135488643d49b17f47f63bf0825f Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 11:59:29 +0100
Subject: [PATCH 18/21] NETFS and NETDEV are globals too.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/mountnfs b/mountnfs
index 9cb737b..87fa8f1 100755
--- a/mountnfs
+++ b/mountnfs
@@ -14,6 +14,8 @@ PATH=/sbin:/bin
 . /lib/init/mount-functions.sh
 
 START_NFS=no
+NETFS=
+NETDEV=
 
 set_env() {
 	[ -f /etc/fstab ] || return
@@ -29,8 +31,6 @@ set_env() {
 
 	exec 9<&0 </etc/fstab
 
-	NETFS=
-	NETDEV=
 	while read DEV MTPT FSTYPE OPTS REST; do
 		case $DEV in
 		  ""|\#*)
-- 
1.7.7.3

From 682c9a21e483ac1af4d1b54daff83d1718d39212 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 12:07:33 +0100
Subject: [PATCH 19/21] Declared function local variables.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/mountnfs b/mountnfs
index 87fa8f1..72e3ce2 100755
--- a/mountnfs
+++ b/mountnfs
@@ -18,6 +18,8 @@ NETFS=
 NETDEV=
 
 set_env() {
+	local DEV MTPT FSTYPE OPTS REST
+
 	[ -f /etc/fstab ] || return
 	#
 	# Read through fstab line by line. If it is NFS, set the flag
@@ -113,6 +115,8 @@ do_start() {
 }
 
 exit_unless_last_interface() {
+	local ifaces i msg
+
 	ifaces=$(sed -ne '/^[[:blank:]]*auto[[:blank:]]*/{s/^[[:blank:]]*auto[[:blank:]]*//;s/[[:blank:]]*$//;s/[[:blank:]]\+/\n/g;p}' /etc/network/interfaces)
 	for i in $ifaces; do
 		if ! grep -q $i /etc/network/run/ifstate; then
-- 
1.7.7.3

From e9b2672211365e8e19b76b9c8a2dd0344d6a81d7 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 12:13:15 +0100
Subject: [PATCH 20/21] Lower case local variables, to distinguish from
 global.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |   22 +++++++++++-----------
 1 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/mountnfs b/mountnfs
index 72e3ce2..ba517c3 100755
--- a/mountnfs
+++ b/mountnfs
@@ -18,7 +18,7 @@ NETFS=
 NETDEV=
 
 set_env() {
-	local DEV MTPT FSTYPE OPTS REST
+	local dev mtpt fstype opts rest
 
 	[ -f /etc/fstab ] || return
 	#
@@ -33,13 +33,13 @@ set_env() {
 
 	exec 9<&0 </etc/fstab
 
-	while read DEV MTPT FSTYPE OPTS REST; do
-		case $DEV in
+	while read dev mtpt fstype opts rest; do
+		case $dev in
 		  ""|\#*)
 			continue
 			;;
 		esac
-		case $OPTS in
+		case $opts in
 		  noauto|*,noauto|noauto,*|*,noauto,*)
 			continue
 			;;
@@ -47,12 +47,12 @@ set_env() {
 			NETDEV=yes
 			;;
 		esac
-		case $FSTYPE in
+		case $fstype in
 		  nfs)
 			# NFS filsystems normally require statd and portmap. However,
 			# if nolock is set, portmap and statd are not required for this
 			# file system.
-			case $OPTS in
+			case $opts in
 			  nolock|*,nolock|nolock,*|*,nolock,*)
 				# no action
 				;;
@@ -62,7 +62,7 @@ set_env() {
 			esac
 
 			# However, Kerberos requires gssd, so start nfs-common anyway.
-			case $OPTS in
+			case $opts in
 			  sec=krb5|*,sec=krb5|sec=krb5,*|*,sec=krb5,*|sec=krb5i|*,sec=krb5i|sec=krb5i,*|*,sec=krb5i,*|sec=krb5p|*,sec=krb5p|sec=krb5p,*|*,sec=krb5p,*)
 				START_NFS=yes
 				;;
@@ -75,15 +75,15 @@ set_env() {
 		  smbfs|cifs|coda|ncp|ncpfs|ocfs2|gfs|ceph)
 			;;
 		  *)
-			FSTYPE=
+			fstype=
 			;;
 		esac
-		if [ "$FSTYPE" ]; then
+		if [ "$fstype" ]; then
 			case $NETFS in
-			  $FSTYPE|*,$FSTYPE|$FSTYPE,*|*,$FSTYPE,*)
+			  $fstype|*,$fstype|$fstype,*|*,$fstype,*)
 				;;
 			  *)
-				NETFS="$NETFS${NETFS:+,}$FSTYPE"
+				NETFS="$NETFS${NETFS:+,}$fstype"
 				;;
 			esac
 		fi
-- 
1.7.7.3

From 0d974fd783ad23fae2c36e61e213015d81f290e0 Mon Sep 17 00:00:00 2001
From: Cristian Ionescu-Idbohrn <[email protected]>
Date: Fri, 23 Dec 2011 12:29:40 +0100
Subject: [PATCH 21/21] Split some long comment lines.

Signed-off-by: Cristian Ionescu-Idbohrn <[email protected]>
---
 mountnfs |   12 +++++++-----
 1 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/mountnfs b/mountnfs
index ba517c3..a0c999b 100755
--- a/mountnfs
+++ b/mountnfs
@@ -49,9 +49,9 @@ set_env() {
 		esac
 		case $fstype in
 		  nfs)
-			# NFS filsystems normally require statd and portmap. However,
-			# if nolock is set, portmap and statd are not required for this
-			# file system.
+			# NFS filsystems normally require statd and portmap.
+			# However, if nolock is set, portmap and statd are not
+			# required for this file system.
 			case $opts in
 			  nolock|*,nolock|nolock,*|*,nolock,*)
 				# no action
@@ -61,7 +61,8 @@ set_env() {
 				;;
 			esac
 
-			# However, Kerberos requires gssd, so start nfs-common anyway.
+			# However, Kerberos requires gssd, so start nfs-common
+			# anyway.
 			case $opts in
 			  sec=krb5|*,sec=krb5|sec=krb5,*|*,sec=krb5,*|sec=krb5i|*,sec=krb5i|sec=krb5i,*|*,sec=krb5i,*|sec=krb5p|*,sec=krb5p|sec=krb5p,*|*,sec=krb5p,*)
 				START_NFS=yes
@@ -69,7 +70,8 @@ set_env() {
 			esac
 			;;
 		  nfs4)
-			# NFSv4 requires idmapd, so start nfs-common no matter what the options are.
+			# NFSv4 requires idmapd, so start nfs-common no matter
+		  	# what the options are.
 			START_NFS=yes
 			;;
 		  smbfs|cifs|coda|ncp|ncpfs|ocfs2|gfs|ceph)
-- 
1.7.7.3


--- End Message ---
--- Begin Message ---
Cristian,

Thanks for this and apologies for the extreme delay in replying.

The if-up.d/mountnfs script has changed significantly since you wrote these
patches and they no longer apply cleanly, if at all. So I am going to close this
report.

Apologies they weren't considered in a more timely manner.

Mark

--- End Message ---

Reply via email to