From e9face1f4a6da5538868d93428d596a99bc2515f Mon Sep 17 00:00:00 2001 From: Ivan K Date: Mon, 12 May 2025 16:48:59 +0300 Subject: [PATCH 1/3] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20refactor(podkop):=20si?= =?UTF-8?q?mplify=20logging=20function?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- podkop/files/usr/bin/podkop | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/podkop/files/usr/bin/podkop b/podkop/files/usr/bin/podkop index 944d9b3..38e92fb 100755 --- a/podkop/files/usr/bin/podkop +++ b/podkop/files/usr/bin/podkop @@ -46,11 +46,8 @@ nolog() { } echolog() { - local message="$1" - local timestamp=$(date +"%Y-%m-%d %H:%M:%S") - - logger -t "podkop" "$timestamp $message" - echo -e "${COLOR_CYAN}[$timestamp]${COLOR_RESET} ${COLOR_GREEN}$message${COLOR_RESET}" + nolog "$1" + log "$1" } start_main() { From 47d1b349c71b029020707b45241044ce05f27725 Mon Sep 17 00:00:00 2001 From: Ivan K Date: Mon, 12 May 2025 16:51:59 +0300 Subject: [PATCH 2/3] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20refactor(podkop):=20ad?= =?UTF-8?q?d=20local=20var?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- podkop/files/usr/bin/podkop | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/podkop/files/usr/bin/podkop b/podkop/files/usr/bin/podkop index 38e92fb..800daf1 100755 --- a/podkop/files/usr/bin/podkop +++ b/podkop/files/usr/bin/podkop @@ -46,8 +46,9 @@ nolog() { } echolog() { - nolog "$1" - log "$1" + local message="$1" + log "$message" + nolog "$message" } start_main() { From 77ce0c380bb5503ae3abcc5e56062e45e87a8e42 Mon Sep 17 00:00:00 2001 From: Ivan K Date: Mon, 12 May 2025 17:21:38 +0300 Subject: [PATCH 3/3] =?UTF-8?q?=F0=9F=90=9B=20fix(dns):=20improve=20DNS=20?= =?UTF-8?q?availability=20check=20logic?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- podkop/files/usr/bin/podkop | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/podkop/files/usr/bin/podkop b/podkop/files/usr/bin/podkop index 800daf1..db88742 100755 --- a/podkop/files/usr/bin/podkop +++ b/podkop/files/usr/bin/podkop @@ -2220,21 +2220,20 @@ check_dns_available() { local result=$(echo "$dns_query" | base64 -d | curl -H "Content-Type: application/dns-message" \ -H "Accept: application/dns-message" \ --data-binary @- \ - --connect-timeout 5 -s -w "%{size_download}" \ - -o /dev/null \ + --connect-timeout 5 -s \ "https://$dns_server/dns-query" 2>/dev/null) - if [ $? -eq 0 ] && [ -n "$result" ] && [ "$result" -ge 40 ] && [ "$result" -le 100 ]; then + if [ $? -eq 0 ] && [ -n "$result" ]; then is_available=1 status="available" else - # Try GET method as fallback + # Try GET method as fallback, remove padding from base64 + local dns_query_no_padding=$(echo "$dns_query" | tr -d '=') result=$(curl -H "accept: application/dns-message" \ - --connect-timeout 5 -s -w "%{size_download}" \ - -o /dev/null \ - "https://$dns_server/dns-query?dns=$(echo "$dns_query" | tr -d '\n')" 2>/dev/null) + --connect-timeout 5 -s \ + "https://$dns_server/dns-query?dns=$dns_query_no_padding" 2>/dev/null) - if [ $? -eq 0 ] && [ -n "$result" ] && [ "$result" -ge 40 ] && [ "$result" -le 100 ]; then + if [ $? -eq 0 ] && [ -n "$result" ]; then is_available=1 status="available" fi