From 40534c2ac4b36be88ae1b30148e17aaf55a9d5c1 Mon Sep 17 00:00:00 2001 From: HgO Date: Mon, 21 Aug 2023 10:51:37 +0200 Subject: [PATCH] prefill dns settings from nat and ipv6 prefix --- scripts/config | 21 ++++++++++++++++++--- scripts/install | 7 ++++--- 2 files changed, 22 insertions(+), 6 deletions(-) diff --git a/scripts/config b/scripts/config index 11e4f3d..9c73781 100644 --- a/scripts/config +++ b/scripts/config @@ -93,13 +93,20 @@ EOF } get__dns() { - ip6_dns=$(ynh_app_setting_get $app ip6_dns | tr -d '[' | tr -d ']') + ip6_dns=$(ynh_app_setting_get $app ip6_dns | tr -d '[]') ip4_dns=$(ynh_app_setting_get $app ip4_dns) - + + if [[ -n ${ip6_net} ]] && [[ -z ${ip6_dns} ]]; then + ip6_dns="${ip6_net}1" + fi + + if [[ -n ${ip4_nat_prefix} ]] && [[ -z ${ip4_dns} ]]; then + ip4_dns="${ip4_nat_prefix}.1" + fi + echo "value: ${ip4_dns},${ip6_dns}" } - #================================================= # SPECIFIC VALIDATORS FOR TOML SHORT KEYS #================================================= @@ -154,6 +161,14 @@ set__dns() { ip6_dns="${ip6_dns%%,}" ip4_dns="${ip4_dns%%,}" + if [[ -n ${ip6_net} ]] && [[ -z ${ip6_dns} ]]; then + ip6_dns="${ip6_net}1" + fi + + if [[ -n ${ip4_nat_prefix} ]] && [[ -z ${ip4_dns} ]]; then + ip4_dns="${ip4_nat_prefix}.1" + fi + ynh_app_setting_set $app ip6_dns "${ip6_dns}" ynh_app_setting_set $app ip4_dns "${ip4_dns}" } diff --git a/scripts/install b/scripts/install index b3fa5fb..8bc4568 100644 --- a/scripts/install +++ b/scripts/install @@ -117,14 +117,15 @@ ynh_system_user_create --username=$app #================================================= ynh_script_progression --message="Configuring hotspot..." +ip6_net="" +ip6_dns="" if [[ ! -v ip6_net ]]; then # if ip6_net not set - ip6_net="" - if [[ -e /tmp/.ynh-vpnclient-started ]]; then vpnclient_ip6_net=$(ynh_app_setting_get vpnclient ip6_net 2>&1) if [[ $vpnclient_ip6_net =~ :: ]]; then ip6_net=${vpnclient_ip6_net} + ip6_dns="${ip6_net}1" fi fi fi @@ -138,7 +139,7 @@ ynh_app_setting_set --app=$app --key=wifi_passphrase --value="${wifi_passphrase} ynh_app_setting_set --app=$app --key=wifi_device --value="${wifi_device}" ynh_app_setting_set --app=$app --key=wifi_channel --value=6 ynh_app_setting_set --app=$app --key=ip6_firewall --value=1 -ynh_app_setting_set --app=$app --key=ip6_dns --value="" +ynh_app_setting_set --app=$app --key=ip6_dns --value="${ip6_dns}" ynh_app_setting_set --app=$app --key=ip6_net --value="${ip6_net}" ynh_app_setting_set --app=$app --key=ip4_dns --value="10.0.242.1" ynh_app_setting_set --app=$app --key=ip4_nat_prefix --value=10.0.242