rufengsuixing пре 5 година
родитељ
комит
a7750a7977
1 измењених фајлова са 11 додато и 9 уклоњено
  1. 11 9
      root/etc/init.d/AdGuardHome

+ 11 - 9
root/etc/init.d/AdGuardHome

@@ -7,7 +7,10 @@ STOP=01
 
 
 CONFIGURATION=AdGuardHome
 CONFIGURATION=AdGuardHome
 config_get configpath $CONFIGURATION configpath "/etc/AdGuardHome.yaml"
 config_get configpath $CONFIGURATION configpath "/etc/AdGuardHome.yaml"
-
+AdGuardHome_PORT=$(awk '/  port:/{printf($2)}' $configpath)
+if [ -z "$AdGuardHome_PORT" ]; then
+	AdGuardHome_PORT="0"
+fi
 set_forward_dnsmasq()
 set_forward_dnsmasq()
 {
 {
 	local PORT="$1"
 	local PORT="$1"
@@ -147,10 +150,7 @@ do_redirect()
 	tcp_server=0
 	tcp_server=0
 	enabled=$1
 	enabled=$1
 	
 	
-	AdGuardHome_PORT=$(awk '/  port:/{printf($2)}' $configpath)
-	if [ -z "$AdGuardHome_PORT" ]; then
-		return 1
-	fi
+	
 	config_get "redirect" "$section" "redirect" "none"
 	config_get "redirect" "$section" "redirect" "none"
 	config_get "old_redirect" "$section" "old_redirect" "none"
 	config_get "old_redirect" "$section" "old_redirect" "none"
 	config_get "old_port" "$section" "old_port" "0"
 	config_get "old_port" "$section" "old_port" "0"
@@ -176,14 +176,15 @@ do_redirect()
 	uci commit AdGuardHome
 	uci commit AdGuardHome
 
 
 	[ "$enabled" -gt 0 ] || return 1
 	[ "$enabled" -gt 0 ] || return 1
-
+	if [ "$AdGuardHome_PORT" == "0" ]; then
+		return 1
+	fi
 	if [ "$redirect" = "redirect" ]; then
 	if [ "$redirect" = "redirect" ]; then
 		set_iptable $ipv6_server $tcp_server
 		set_iptable $ipv6_server $tcp_server
 	elif [ "$redirect" = "dnsmasq-upstream" ]; then
 	elif [ "$redirect" = "dnsmasq-upstream" ]; then
 		set_forward_dnsmasq "$AdGuardHome_PORT"
 		set_forward_dnsmasq "$AdGuardHome_PORT"
 	fi
 	fi
 
 
-
 	#procd_open_instance "AdGuardHome"
 	#procd_open_instance "AdGuardHome"
 
 
 	#get_tz
 	#get_tz
@@ -244,6 +245,7 @@ start_service() {
 		do_redirect 0
 		do_redirect 0
 		sh /usr/share/AdGuardHome/update_core.sh
 		sh /usr/share/AdGuardHome/update_core.sh
 	fi 
 	fi 
+	
 	config_get_bool verbose $CONFIGURATION verbose 0
 	config_get_bool verbose $CONFIGURATION verbose 0
 	if [ "$verbose" -eq 1 ]; then
 	if [ "$verbose" -eq 1 ]; then
 		ADDITIONAL_ARGS="$ADDITIONAL_ARGS -v"
 		ADDITIONAL_ARGS="$ADDITIONAL_ARGS -v"
@@ -265,13 +267,13 @@ start_service() {
 		ln -s /tmp/sessions.db $workdir/data/sessions.db
 		ln -s /tmp/sessions.db $workdir/data/sessions.db
 		fi
 		fi
 	fi
 	fi
-	
 	procd_open_instance
 	procd_open_instance
 	procd_set_param respawn
 	procd_set_param respawn
 	# pass config to script on start
 	# pass config to script on start
 	procd_set_param command $binpath $ADDITIONAL_ARGS
 	procd_set_param command $binpath $ADDITIONAL_ARGS
 	procd_close_instance
 	procd_close_instance
-	do_redirect 1
+	do_redirect 1 
+
 	echo "AdGuardHome turn on"
 	echo "AdGuardHome turn on"
 	echo "enabled="$enabled""
 	echo "enabled="$enabled""
 }
 }