From bbbb1f57f5b69f80505b4e3c29bcc0f17e5a82fd Mon Sep 17 00:00:00 2001 From: Kroese Date: Sat, 22 Apr 2023 04:13:26 +0200 Subject: [PATCH 1/2] Better resolv.conf parsing Fixes the error: dnsmasq: bad command line options: bad IP address --- run/network.sh | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/run/network.sh b/run/network.sh index 63cfed2..f04409b 100644 --- a/run/network.sh +++ b/run/network.sh @@ -133,11 +133,17 @@ configureNAT () { NET_OPTS="-netdev tap,ifname=${VM_NET_TAP},script=no,downscript=no,id=hostnet0" # Build DNS options from container /etc/resolv.conf - mapfile -t nameservers < <(grep '^nameserver' /etc/resolv.conf | sed 's/nameserver //') - searchdomains=$(grep '^search' /etc/resolv.conf | sed 's/search //' | sed 's/ /,/g') + + if [ "$DEBUG" = "Y" ]; then + echo "/etc/resolv.conf:" && echo && cat /etc/resolv.conf && echo + fi + + mapfile -t nameservers < <(grep '^nameserver' /etc/resolv.conf | sed 's/\t/ /g' | sed 's/nameserver //' | sed 's/ //g') + searchdomains=$(grep '^search' /etc/resolv.conf | sed 's/\t/ /g' | sed 's/search //' | sed 's/#.*//' | sed 's/\s*$//g' | sed 's/ /,/g') domainname=$(echo "$searchdomains" | awk -F"," '{print $1}') for nameserver in "${nameservers[@]}"; do + nameserver=$(echo "$nameserver" | sed 's/#.*//' ) if ! [[ "$nameserver" =~ .*:.* ]]; then [[ -z "$DNS_SERVERS" ]] && DNS_SERVERS="$nameserver" || DNS_SERVERS="$DNS_SERVERS,$nameserver" fi From 8325fe4d2292b6da0e6304bbd955d57b5791444f Mon Sep 17 00:00:00 2001 From: Kroese Date: Sat, 22 Apr 2023 04:16:02 +0200 Subject: [PATCH 2/2] Update check.yml --- .github/workflows/check.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index 40bfce0..0c9165c 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -11,4 +11,4 @@ jobs: - name: Run ShellCheck uses: ludeeus/action-shellcheck@master env: - SHELLCHECK_OPTS: -x -e SC2002 -e SC2223 -e SC2034 -e SC2064 + SHELLCHECK_OPTS: -x -e SC2001 -e SC2002 -e SC2223 -e SC2034 -e SC2064