1
0
mirror of https://github.com/v2fly/v2ray-core.git synced 2024-11-14 00:07:09 -05:00
Commit Graph

35 Commits

Author SHA1 Message Date
Vigilans
f494df2567
feat: Implement Match and MatchAny for all MatcherGroup, IndexMatcher
[common/strmatcher] Implement Match and MatchAny for all MatcherGroup and IndexMatcher
2022-09-16 14:40:03 +08:00
世界
fc6ae4d4e7
Fix lint 2022-06-28 21:36:12 +08:00
Vigilans
81ef92c077 Refactor strmatcher.ACAutomatonMatcherGroup 2022-06-25 19:38:35 +01:00
Shelikhoo
3ef7feaeaf
update version: auto replacement to v5 path 2022-01-02 15:16:23 +00:00
KujouRinka
d24c276cc5
fix typo (#1503) 2022-01-02 17:16:12 +08:00
Ye Zhihao
ed9641dad1
Refactor strmatcher.MphMatcherGroup (#1364)
* Refactor strmatcher.MphMatcherGroup

* Add test for empty mph matcher group
2021-11-05 13:24:46 +08:00
Ye Zhihao
d4da365c5f
Refactor: strmatcher module (#1333)
* Reorganize strmatcher's package structure

* Rename types in strmatcher package according to their file names

* Stablize strmatcher's Matcher interface

* Implement []matcherEntry as SimpleMatcherGroup

* Implement mph algorithm extracted from MphIndexMatcher as MphMatcherGroup

* Implement AddMatcher/AddFullMatcher/AddDomainMatcher/AddSubstrMatcher for each MatcherGroup

* Stablize strmatcher's MatcherGroup interface

* Stablize strmatcher's IndexMatcher interface

* Update strmatcher's benchmark

* Compatibility fix for app/router's DomainMatcher condition

* Fix code quality issue

* Fix basic matcher issues

* Update priority specification for Substr matcher
2021-10-31 18:01:13 +08:00
Loyalsoldier
6f8979d017
Style: format code by gofumpt (#1022) 2021-05-20 05:28:52 +08:00
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