lowercase domain matching

pull/58/head
Darien Raymond 2015-12-07 11:10:27 +00:00
parent 96aa94002a
commit 74c7810957
2 changed files with 6353 additions and 4 deletions

View File

@ -50,8 +50,14 @@ type PlainDomainMatcher struct {
pattern string pattern string
} }
func NewPlainDomainMatcher(pattern string) *PlainDomainMatcher {
return &PlainDomainMatcher{
pattern: strings.ToLower(pattern),
}
}
func (this *PlainDomainMatcher) Match(domain string) bool { func (this *PlainDomainMatcher) Match(domain string) bool {
return strings.Contains(this.pattern, domain) return strings.Contains(this.pattern, strings.ToLower(domain))
} }
type RegexpDomainMatcher struct { type RegexpDomainMatcher struct {
@ -69,7 +75,7 @@ func NewRegexpDomainMatcher(pattern string) (*RegexpDomainMatcher, error) {
} }
func (this *RegexpDomainMatcher) Match(domain string) bool { func (this *RegexpDomainMatcher) Match(domain string) bool {
return this.pattern.MatchString(domain) return this.pattern.MatchString(strings.ToLower(domain))
} }
type FieldRule struct { type FieldRule struct {
@ -158,7 +164,7 @@ func (this *FieldRule) UnmarshalJSON(data []byte) error {
} }
matcher = rawMatcher matcher = rawMatcher
} else { } else {
matcher = &PlainDomainMatcher{pattern: rawDomain} matcher = NewPlainDomainMatcher(rawDomain)
} }
this.Domain[idx] = matcher this.Domain[idx] = matcher
} }

File diff suppressed because it is too large Load Diff