From 6cdaca300d9f9da88371c9902281364b9084150f Mon Sep 17 00:00:00 2001 From: Sundar Karthik S Date: Wed, 1 May 2024 11:06:34 +0530 Subject: [PATCH] domain-based routing or filtering efficiently --- main.go | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/main.go b/main.go index e20def9..51f46ad 100644 --- a/main.go +++ b/main.go @@ -244,16 +244,19 @@ func getVirusTotalURLs(domain string, noSubs bool) ([]wurl, error) { } func isSubdomain(rawUrl, domain string) bool { - u, err := url.Parse(rawUrl) - if err != nil { - // we can't parse the URL so just - // err on the side of including it in output - return false - } - - return strings.ToLower(u.Hostname()) != strings.ToLower(domain) + u, err := url.Parse(rawUrl) + if err != nil { + return false + } + hostname := strings.ToLower(u.Hostname()) + targetDomain := strings.ToLower(domain) + if hostname == targetDomain || strings.HasSuffix(hostname, "."+targetDomain) { + return false + } + return true } + func getVersions(u string) ([]string, error) { out := make([]string, 0)