Commit Graph

37 Commits

Author SHA1 Message Date
Loyalsoldier 10ca68f277
Feat: remove geo files from repo & refine tests (#869) 2021-04-07 03:08:03 +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
Chinsyo 2ac380788b
Some minor fixes (#433) 2020-11-20 01:02:52 +08:00
Vigilans 5a497890e6 Routing Context: Fix GetUser() & Use string for Attributes Value 2020-09-13 00:34:35 +08:00
Vigilans f9d37b724c Extract session information during routing as routing context 2020-09-04 11:32:19 +08:00
Felix Yan 7001483b62
Don't copy assets if they are already present
They can now reside in system path (like /usr/share/v2ray), so it's not
possible to copy into there.
2020-09-03 16:17:44 +08:00
Vigilans 40c0bcc3ab Support source port matching in routing config 2020-08-09 16:53:45 +08:00
Darien Raymond 02d8845093
add scripting support for attributes matching 2019-02-28 14:04:43 +01:00
Darien Raymond 0d31a68694
extract all session context before checking conditions 2019-02-28 09:28:55 +01:00
Darien Raymond 95583b5031
support range list in routing rule 2019-02-24 23:43:00 +01:00
Darien Raymond 7e5e080488
move sniffing result to session 2019-02-22 16:58:16 +01:00
Darien Raymond 4eb2b5e607
merge ext into core 2019-02-10 19:04:11 +01:00
Darien Raymond c9958681f7
remove dependency on assert lib 2019-01-31 20:57:01 +01:00
Darien Raymond 58221ebae1
optimize multi-geoip matcher 2018-11-07 23:57:06 +01:00
Darien Raymond c73e899f54
prototype for high performance geoip matcher 2018-11-01 09:10:41 +01:00
Darien Raymond ed2779e333
more test case for router 2018-10-22 20:59:01 +02:00
Darien Raymond 39134c1b82
remove unnecessary sleep 2018-10-22 16:14:00 +02:00
Darien Raymond 595f3d685e
merge user info inbound metadata 2018-10-15 08:36:50 +02:00
Darien Raymond 94b880d060
move session based info into session package 2018-09-18 23:09:54 +02:00
Darien Raymond 54e1bb96cc
introduce in-memory user 2018-08-27 00:11:32 +02:00
Darien Raymond fca324a399
fix build break 2018-08-19 22:28:02 +02:00
Darien Raymond edcf564dd7
improve performance of domain matcher 2018-08-19 21:04:15 +02:00
Darien Raymond ef679bddbd
test case 2018-08-02 13:28:13 +02:00
Darien Raymond cb0eb91f2b
strmatcher 2018-06-26 21:57:41 +02:00
Darien Raymond a82ca019b2
release script relocation 2017-12-25 21:54:44 +01:00
Darien Raymond 5e27e3d260
gofmt 2017-12-03 01:04:38 +01:00
Darien Raymond 57648c145c cachable domain matcher: step 2 2017-11-06 22:30:56 +01:00
Darien Raymond 6b77e14bf6 cachable domain matcher, step 1 2017-11-06 21:12:28 +01:00
Darien Raymond 74cf833758 fully migrate to new assertion lib 2017-10-24 16:15:35 +02:00
Darien Raymond 661c0fc237
more test cases for router config 2017-05-17 21:46:57 +02:00
Darien Raymond fcafd4e8f8
test case for email 2017-05-17 13:28:22 +02:00
Darien Raymond 069837417f
test case for routing rule 2017-05-17 13:24:53 +02:00
Darien Raymond 52216d0204
test case for domain matcher 2017-05-09 13:39:09 +02:00
Darien Raymond a0bde091d4
sub domain matcher 2017-05-08 12:18:13 +02:00