From 260eedf8c417458b22bb17224035985a213bf3cc Mon Sep 17 00:00:00 2001 From: Wyatt Date: Sun, 28 Dec 2025 23:38:26 +0800 Subject: [PATCH] fix: add missing is_domain helper function to x-ui.sh (#3612) The is_domain function was being called in ssl_cert_issue() but was never defined in x-ui.sh, causing 'Invalid domain format' errors for valid domains. Added is_ipv4, is_ipv6, is_ip, and is_domain helper functions to match the definitions in install.sh and update.sh. Co-authored-by: wyatt --- x-ui.sh | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/x-ui.sh b/x-ui.sh index 8e62b72a..32ddd8e0 100644 --- a/x-ui.sh +++ b/x-ui.sh @@ -19,6 +19,20 @@ function LOGI() { echo -e "${green}[INF] $* ${plain}" } +# Simple helpers for domain/IP validation +is_ipv4() { + [[ "$1" =~ ^([0-9]{1,3}\.){3}[0-9]{1,3}$ ]] && return 0 || return 1 +} +is_ipv6() { + [[ "$1" =~ : ]] && return 0 || return 1 +} +is_ip() { + is_ipv4 "$1" || is_ipv6 "$1" +} +is_domain() { + [[ "$1" =~ ^([A-Za-z0-9](-*[A-Za-z0-9])*\.)+[A-Za-z]{2,}$ ]] && return 0 || return 1 +} + # check root [[ $EUID -ne 0 ]] && LOGE "ERROR: You must be root to run this script! \n" && exit 1