From b3849ef311d98fd532e25d68c58e5d0aec07d59f Mon Sep 17 00:00:00 2001 From: yangfl Date: Tue, 8 May 2018 21:59:15 +0800 Subject: [PATCH] Fix OS detection for Debian kFreeBSD --- minissdpd/testminissdpd.sh | 15 +++++++++++---- minissdpd/testminissdpdnotif.sh | 14 ++++++++++---- miniupnpd/genconfig.sh | 2 +- miniupnpd/testgetifaddr.sh | 2 +- 4 files changed, 23 insertions(+), 10 deletions(-) diff --git a/minissdpd/testminissdpd.sh b/minissdpd/testminissdpd.sh index 66b41fc..aa15133 100755 --- a/minissdpd/testminissdpd.sh +++ b/minissdpd/testminissdpd.sh @@ -3,14 +3,21 @@ # (c) 2017 Thomas Bernard OS=`uname -s` -IF=lo -if [ "$OS" = "Darwin" ] || [ "$OS" = "OpenBSD" ] || [ "$OS" = "SunOS" ] || [ "$OS" = "FreeBSD" ] ; then - IF=lo0 -fi + # if set, 1st argument is network interface if [ -n "$1" ] ; then IF=$1 +else + case $OS in + *BSD | Darwin | SunOS) + IF=lo0 + ;; + *) + IF=lo + ;; + esac fi + SOCKET=`mktemp -t minissdpdsocketXXXXXX` PID="${SOCKET}.pid" ./minissdpd -s $SOCKET -p $PID -i $IF || exit 1 diff --git a/minissdpd/testminissdpdnotif.sh b/minissdpd/testminissdpdnotif.sh index 2099ea6..9fb957d 100755 --- a/minissdpd/testminissdpdnotif.sh +++ b/minissdpd/testminissdpdnotif.sh @@ -3,13 +3,19 @@ # (c) 2016 Thomas Bernard OS=`uname -s` -IF=lo -if [ "$OS" = "Darwin" ] || [ "$OS" = "SunOS" ] ; then - IF=lo0 -fi + # if set, 1st argument is network interface if [ -n "$1" ] ; then IF=$1 +else + case $OS in + *BSD | Darwin | SunOS) + IF=lo0 + ;; + *) + IF=lo + ;; + esac fi # trap sigint in the script so CTRL-C interrupts the running program, diff --git a/miniupnpd/genconfig.sh b/miniupnpd/genconfig.sh index d0bcf1f..fe3d3cb 100755 --- a/miniupnpd/genconfig.sh +++ b/miniupnpd/genconfig.sh @@ -164,7 +164,7 @@ case $OS_NAME in OS_URL=http://www.openbsd.org/ V6SOCKETS_ARE_V6ONLY=`sysctl -n net.inet6.ip6.v6only` ;; - FreeBSD) + FreeBSD | GNU/kFreeBSD) VER=`grep '#define __FreeBSD_version' /usr/include/sys/param.h | awk '{print $3}'` if [ $VER -ge 700049 ]; then echo "#define PFRULE_INOUT_COUNTS" >> ${CONFIGFILE} diff --git a/miniupnpd/testgetifaddr.sh b/miniupnpd/testgetifaddr.sh index 0ab012c..7ad56d9 100755 --- a/miniupnpd/testgetifaddr.sh +++ b/miniupnpd/testgetifaddr.sh @@ -3,7 +3,7 @@ OS=`uname -s` case $OS in - FreeBSD | OpenBSD | Darwin | SunOS) + *BSD | Darwin | SunOS) NS="`which netstat`" || exit 1 IFCONFIG="`which ifconfig`" || exit 1 EXTIF="`$NS -r -f inet | grep 'default' | awk '{ print $NF }' `" || exit 1