bug-inetutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [bug-inetutils] Tests leave inetd running


From: Alfred M. Szmidt
Subject: Re: [bug-inetutils] Tests leave inetd running
Date: Wed, 08 Jun 2011 15:37:42 -0400

   > The two test printouts, close to bottom,
   >
   >     netstat -na
   >     grep '^udp .*7777 '
   >     test 1 -ne 0
   >
   > are evidence of this. From my point of view the script works for
   > all sensible UNIX systems, except at NixOS.

   The GNU Build System is designed in such a way that it does not assume
   any path, except perhaps for /bin/sh.

The only path we assume is PATH set by the shell.  If nixos doesn't
search PATH for commands, then it is horribly broken and not a system
we will take time to support.  We assume basic a POSIX shell like the
rest of GNU, and that includes searching a path for commands.

But again, this is not the problem here: if netstat is not found you
would get that in the log (as previously, see for example
http://hydra.nixos.org/build/727555/nixlog/1/raw).  And you don't, so
the problem lies elsewhere.

   > The discussion we had earlier was rather animated, but we never got
   > the feedback we need in order to fix the issue at hand.

   Yes, just drop AC_PATH_PROG in there, as discussed at
   <http://thread.gmane.org/gmane.comp.gnu.inetutils.bugs/2994>.

   I can submit a patch, if that's more convenient for you.

That will not fix properly, the tests will either have to be generated
during ./configure or `make all'.  A better solution would be to check
the existence of netstat in the test proper, and exit early if it
doesn't exist.

How about this patch instead, this doesn't fix Rob's timeouts but it
does make the test suite more robust on systems that do not have
netstat installed.

diff --git a/tests/tftp.sh b/tests/tftp.sh
index fec5171..964c096 100755
--- a/tests/tftp.sh
+++ b/tests/tftp.sh
@@ -19,6 +19,10 @@
 
 # Run `inetd' with `tftpd' and try to fetch a file from there using `tftp'.
 
+if [ "$VERBOSE" ]; then
+    set -x
+fi
+
 TFTP="${TFTP:-../src/tftp$EXEEXT}"
 TFTPD="${TFTPD:-$PWD/../src/tftpd$EXEEXT}"
 INETD="${INETD:-../src/inetd$EXEEXT}"
@@ -32,8 +36,14 @@ INETD_CONF="$PWD/inetd.conf.tmp"
 ADDRESSES="`$IFCONFIG | sed -e "/$AF /!d" \
      -e "s/^.*$AF[[:blank:]]\([:.0-9]\{1,\}\)[[:blank:]].*$/\1/g"`"
 
+# Check existance of netstat before proceeding.
+netstat > /dev/null
+if [ ! $? -eq 0 ]; then
+    echo "netstat is required"
+    exit 77
+fi
+
 if [ "$VERBOSE" ]; then
-    set -x
     "$TFTP" --version
     "$TFTPD" --version
     "$INETD" --version



reply via email to

[Prev in Thread] Current Thread [Next in Thread]