DarthVader
c71ae9b310
Fix: core panics when zero domain/full type of rule ( #786 )
2021-03-16 19:07:32 +08:00
DarthVader
ac1e5cd925
Add minimal perfect hash domain matcher ( #743 )
...
* rename to HybridDomainMatcher & convert domain to lowercase
* refactor code & add open hashing for rolling hash map
* fix lint errors
* update app/dns/dns.go
* convert domain to lowercase in `strmatcher.go`
* keep the original matcher behavior
* add mph domain matcher & conver domain names to loweercase when matching
* fix lint errors
* fix lint errors
2021-03-15 15:21:38 +08:00
DarthVader
a31a8e6f89
A memory-efficient and fast hybrid matcher ( #639 )
...
* a faster DomainMatcher implementation
* rename benchmark name
* fix linting errors
* add hybrid matcher
* add rabin-karp algorithm
* rename test & fix linting errors
* add more comment
* format code
* revert `MatcherGroup` match func
* fix linting errors
2021-03-04 05:39:51 +08:00
Loyalsoldier
f94dd11a8c
Chore: change module name ( #677 )
2021-02-17 04:31:50 +08:00
DarthVader
de618121ad
Refactor: A faster DomainMatcher implementation ( #587 )
...
* a faster DomainMatcher implementation
* rename benchmark name
* fix linting errors
2021-01-20 15:53:07 +08:00
loyalsoldier
323ef03f02
Minor fixes
2020-09-01 08:46:55 +08:00
Vigilans
47c997d75e
Fix github.com/v2fly/v2ray-core/issues/146
2020-08-31 12:21:56 +08:00
Kslr
dabefc6338
Merge pull request #98 from Vigilans/vigilans/dns-server-matcher-info
...
Refactor & Log rules matching of built-in DNS's domain matcher
2020-08-18 01:01:06 +08:00
Vigilans
dfeaef75e7
Refactor DNS Server to record original rule of domain matchers
2020-08-16 22:18:12 +08:00
Vigilans
1ab9e58dce
Supply test for domain matcher group
2020-08-15 21:28:34 +08:00
Vigilans
1e222425b6
Amend domain matcher with returning values of all matched subdomains
2020-08-13 15:26:30 +08:00
Vigilans
c74a33f827
Amending domain matcher with returning array of all matches
2020-08-11 13:31:04 +08:00
Kirill Motkov
0401a91ef4
Some code improvements
...
* Rewrite empty string checks more idiomatically.
* Change strings.ToLower comparisons to strings.EqualFold.
* Rewrite switch statement with only one case as if.
2019-06-28 17:53:44 +03:00
Darien Raymond
163776b182
remove dependency on assert lib
2019-01-08 23:27:02 +01:00
Darien Raymond
9de03d088e
improve performance on domain matcher
2018-11-02 12:14:41 +01:00
Darien Raymond
7b28a19013
improve domain matcher performance
2018-09-08 21:54:09 +02:00
Darien Raymond
eb05a92592
dont start periodic task until necessary
2018-08-29 23:00:01 +02:00
Darien Raymond
5a0a9aa65e
reset cache if empty
2018-08-29 17:21:30 +02:00
Darien Raymond
1add59cd0d
actually start the cleanup task
2018-08-29 17:19:44 +02:00
Darien Raymond
e6b5356ea9
don't alloc new maps until required
2018-08-22 22:49:02 +02:00
Darien Raymond
059dfdbb97
doc for strmatcher interface
2018-08-20 15:39:58 +02:00
Darien Raymond
44c759eeab
extract full matcher group
2018-08-20 09:57:06 +02:00
Darien Raymond
899b1399ee
check init state of DomainMatcherGroup. fixes #1238
2018-08-20 09:47:18 +02:00
Darien Raymond
26f52e61db
optimize CachedMatcherGroup
2018-08-19 22:16:06 +02:00
Darien Raymond
e72d4d6c25
fix matcher group
2018-08-19 21:07:31 +02:00
Darien Raymond
edcf564dd7
improve performance of domain matcher
2018-08-19 21:04:15 +02:00
Darien Raymond
cb0eb91f2b
strmatcher
2018-06-26 21:57:41 +02:00