Fix: Mihomo Name Server Policy Wildcard Handling

This commit is contained in:
SukkaW
2026-07-01 05:16:43 +08:00
parent 31e4de3c7a
commit 51f1c898a3

View File

@@ -149,18 +149,40 @@ export const buildDomesticRuleset = task(require.main === module, __filename)(as
); );
domains.forEach((domain) => { domains.forEach((domain) => {
const isWildcard = domain.includes('*') || domain.includes('?');
switch (domain[0]) { switch (domain[0]) {
case '$': case '$': {
surgeOutput.addDomain(domain.slice(1)); const d = domain.slice(1);
mihomoOutput.addDomain(domain.slice(1)); if (isWildcard) {
surgeOutput.addDomainWildcard(d);
mihomoOutput.addDomainWildcard(d);
} else {
surgeOutput.addDomain(d);
mihomoOutput.addDomain(d);
}
break; break;
case '+': }
surgeOutput.addDomainSuffix(domain.slice(1)); case '+': {
mihomoOutput.addDomainSuffix(domain.slice(1)); const d = domain.slice(1);
if (isWildcard) {
surgeOutput.addDomainWildcard(`*.${d}`);
mihomoOutput.addDomainWildcard(`*.${d}`);
} else {
surgeOutput.addDomainSuffix(d);
mihomoOutput.addDomainSuffix(d);
}
break; break;
}
default: default:
surgeOutput.addDomainSuffix(domain); if (isWildcard) {
mihomoOutput.addDomainSuffix(domain); surgeOutput.addDomainWildcard(domain);
surgeOutput.addDomainWildcard(`*.${domain}`);
mihomoOutput.addDomainWildcard(domain);
mihomoOutput.addDomainWildcard(`*.${domain}`);
} else {
surgeOutput.addDomainSuffix(domain);
mihomoOutput.addDomainSuffix(domain);
}
break; break;
} }
}); });