From 5d8318df47a5db9c178dacc1b17c2381cf528df4 Mon Sep 17 00:00:00 2001 From: CanbiZ <47820557+MickLesk@users.noreply.github.com> Date: Thu, 15 May 2025 11:25:12 +0200 Subject: [PATCH] github resolve DNS --- misc/install.func | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/misc/install.func b/misc/install.func index c7bb8ee..39c8907 100644 --- a/misc/install.func +++ b/misc/install.func @@ -123,8 +123,18 @@ network_check() { fi fi - RESOLVEDIP=$(getent hosts github.com | awk '{ print $1 }') - if [[ -z "$RESOLVEDIP" ]]; then msg_error "DNS Lookup Failure"; else msg_ok "DNS Resolved github.com to ${BL}$RESOLVEDIP${CL}"; fi + GITHUB_HOSTS=("github.com" "raw.githubusercontent.com" "api.github.com") + + for HOST in "${GITHUB_HOSTS[@]}"; do + RESOLVEDIP=$(getent hosts "$HOST" | awk '{ print $1 }') + if [[ -z "$RESOLVEDIP" || (! "$RESOLVEDIP" =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ && ! "$RESOLVEDIP" =~ ^([a-fA-F0-9:]+)$) ]]; then + msg_error "DNS resolution failed or invalid IP for $HOST" + exit 1 + else + msg_ok "Resolved $HOST → ${BL}$RESOLVEDIP${CL}" + fi + done + set -e trap 'error_handler $LINENO "$BASH_COMMAND"' ERR }