Browse Source

Re-enable `DOMAIN-KEYWORD` overlapping `DOMAIN-WILDCARD` dedupe

SukkaW 5 months ago
parent
commit
7ded88aaa3
2 changed files with 6 additions and 1 deletions
  1. 1 1
      Build/build-reject-domainset.ts
  2. 5 0
      Build/lib/rules/base.ts

+ 1 - 1
Build/build-reject-domainset.ts

@@ -259,7 +259,7 @@ export const buildRejectDomainSet = task(require.main === module, __filename)(as
       rejectPhisingDomainsetOutput.whitelistDomain(arg);
 
       // e.g. .data.microsort.com can strip waston*.event.data.microsort.com
-      rejectNonIpRulesetOutput.wildcardTrie.whitelist(arg);
+      // rejectNonIpRulesetOutput.wildcardTrie.whitelist(arg);
     });
   });
 

+ 5 - 0
Build/lib/rules/base.ts

@@ -444,6 +444,11 @@ export class FileOutput {
 
     if (this.wildcardSet.size) {
       this.wildcardSet.forEach((wildcard) => {
+        // Overlapped w/ DOMAIN-kEYWORD
+        if (kwfilter(wildcard)) {
+          return;
+        }
+
         for (let i = 0; i < strategiesLen; i++) {
           const strategy = this.strategies[i];
           strategy.writeDomainWildcard(wildcard);