This is an automated email from the ASF dual-hosted git repository.
sebbASF pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/whimsy.git
The following commit(s) were added to refs/heads/master by this push:
new f2983f3a Update list of valid ASF hosts
f2983f3a is described below
commit f2983f3abfb81b2d2bfd8fd32e1bb967528ce049
Author: Sebb <[email protected]>
AuthorDate: Thu Aug 13 15:24:38 2026 +0100
Update list of valid ASF hosts
---
tools/scan-page.js | 59 +++++++++++++++++++++++++++++++++++++++++++++++-------
1 file changed, 52 insertions(+), 7 deletions(-)
diff --git a/tools/scan-page.js b/tools/scan-page.js
index df7126f9..a6e75998 100755
--- a/tools/scan-page.js
+++ b/tools/scan-page.js
@@ -11,15 +11,60 @@ const inithost = new URL(target).host;
const option = process.argv[3] || '';
-// TODO: this list is not complete
+// TODO: derive from the list at:
+//
https://raw.githubusercontent.com/apache/privacy-website/main/policies/asf-domains.md
+
+const asfdomains = [
+ "any23.com",
+ "any23.org",
+ "apache-extras.org",
+ "apache.org",
+ "apachecon.com",
+ "apachecon.org",
+ "apacheextras.org",
+ "apachextras.org",
+ "cloudstack.com",
+ "cloudstack.org",
+ "codehaus.org",
+ "communityovercode.org",
+ "couchapp.com",
+ "couchapp.org",
+ "couchhack.org",
+ "deltaspike.org",
+ "feathercast.org",
+ "freemarker.org",
+ "gremlint.com",
+ "groovy-lang.org",
+ "ignite.run",
+ "jclouds.com",
+ "jclouds.net",
+ "jclouds.org",
+ "jspwiki.org",
+ "libcloud.com",
+ "libcloud.net",
+ "libcloud.org",
+ "modssl.com",
+ "modssl.net",
+ "myfaces.org",
+ "netbeans.org",
+ "ofbiz.org",
+ "openoffice.org",
+ "openwhisk.com",
+ "openwhisk.net",
+ "openwhisk.org",
+ "projectgeode.org",
+ "qi4j.org",
+ "spamassassin.org",
+ "subversion.com",
+ "subversion.net",
+ "subversion.org",
+ "tinkerpop.com"
+];
+
function isASFhost(host) {
return host == '' ||
- host == 'apache.org' ||
- host == 'apachecon.com' ||
- host == 'openoffice.org' ||
- host.endsWith('.apache.org') ||
- host.endsWith('.openoffice.org') ||
- host.endsWith('.apachecon.com');
+ asfdomains.includes(host) ||
+ asfdomains.includes(host.split('.').slice(-2).join('.')) // last two
segments
}
if (!isASFhost(inithost)) {
throw new Error("Only ASF hosts are supported - saw " + inithost);