1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2024-12-30 05:56:54 -05:00

Alias for ext: to reduce ambiguous ext: used without context

This commit is contained in:
Shelikhoo 2020-07-11 09:24:03 +08:00
parent ff42cc8c86
commit d2266bb52c
No known key found for this signature in database
GPG Key ID: C4D5E79D22B25316

View File

@ -260,9 +260,19 @@ func parseDomainRule(domain string) ([]*router.Domain, error) {
}
return domains, nil
}
if strings.HasPrefix(domain, "ext:") {
kv := strings.Split(domain[4:], ":")
var isExtDatFile = 0
{
const prefix = "ext:"
if strings.HasPrefix(domain, prefix) {
isExtDatFile = len(prefix)
}
const prefixQualified = "ext-domain:"
if strings.HasPrefix(domain, prefixQualified) {
isExtDatFile = len(prefixQualified)
}
}
if isExtDatFile != 0 {
kv := strings.Split(domain[isExtDatFile:], ":")
if len(kv) != 2 {
return nil, newError("invalid external resource: ", domain)
}
@ -314,9 +324,19 @@ func toCidrList(ips StringList) ([]*router.GeoIP, error) {
})
continue
}
if strings.HasPrefix(ip, "ext:") {
kv := strings.Split(ip[4:], ":")
var isExtDatFile = 0
{
const prefix = "ext:"
if strings.HasPrefix(ip, prefix) {
isExtDatFile = len(prefix)
}
const prefixQualified = "ext-ip:"
if strings.HasPrefix(ip, prefixQualified) {
isExtDatFile = len(prefixQualified)
}
}
if isExtDatFile != 0 {
kv := strings.Split(ip[isExtDatFile:], ":")
if len(kv) != 2 {
return nil, newError("invalid external resource: ", ip)
}