From 2ee9f40d818fec34233cf65dfb11551714d7dc25 Mon Sep 17 00:00:00 2001 From: jakub-tldr <78603704+jakub-tldr@users.noreply.github.com> Date: Tue, 25 Nov 2025 11:39:26 +0100 Subject: [PATCH 1/2] fix validator for ipv4 with specified port --- web/src/shared/validators.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/web/src/shared/validators.ts b/web/src/shared/validators.ts index 8d99664003..635b93fc44 100644 --- a/web/src/shared/validators.ts +++ b/web/src/shared/validators.ts @@ -79,9 +79,15 @@ export const validateIPv4 = (ip: string, allowMask = false): boolean => { } } const ipv4Pattern = /^(\d{1,3}\.){3}\d{1,3}$/; - if (!ipv4Pattern.test(ip)) { + const ipv4WithPortPattern = /^(\d{1,3}\.){3}\d{1,3}(:\d{1,5})?$/; + if (!ipv4Pattern.test(ip) && !ipv4WithPortPattern.test(ip)) { return false; } + + if (ipv4WithPortPattern.test(ip)) { + ip = ip.split(':')[0]; + } + return ipaddr.IPv4.isValid(ip); }; From 628dd7ddb669a46ea8a6331d5dc4078581185068 Mon Sep 17 00:00:00 2001 From: jakub-tldr <78603704+jakub-tldr@users.noreply.github.com> Date: Tue, 25 Nov 2025 11:53:37 +0100 Subject: [PATCH 2/2] validate port --- web/src/shared/validators.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/web/src/shared/validators.ts b/web/src/shared/validators.ts index 635b93fc44..0480c722cb 100644 --- a/web/src/shared/validators.ts +++ b/web/src/shared/validators.ts @@ -85,7 +85,11 @@ export const validateIPv4 = (ip: string, allowMask = false): boolean => { } if (ipv4WithPortPattern.test(ip)) { - ip = ip.split(':')[0]; + const [address, port] = ip.split(':'); + ip = address; + if (!validatePort(port)) { + return false; + } } return ipaddr.IPv4.isValid(ip);