Commit Graph

599 Commits

Author SHA1 Message Date
Micooz
8f46dc6ef4
core: fix eslint 2017-10-26 14:14:54 +08:00
Micooz
9e3e00a79e
core: add udp support 2017-10-26 14:07:39 +08:00
Micooz
323a588953
proxies: handle socks5 udp associate properly 2017-10-26 14:06:21 +08:00
Micooz
bf37255bce
core,transports: add udp.js 2017-10-26 14:05:19 +08:00
Micooz
c9ce5fe3ae core: fix type of "port" parsed from url.parse() 2017-10-25 21:49:25 +08:00
Micooz
5aa1cfc755 src: refine api interfaces 2017-10-21 11:59:00 +08:00
Micooz
889b2bd6e6 src: refine api interfaces 2017-10-21 11:57:58 +08:00
Micooz
ff03246e31
core: fix lint error 2017-10-20 11:03:21 +08:00
Micooz
a81eea0401
presets: fix base-auth 2017-10-20 11:03:02 +08:00
Micooz
e0a51ab7e8
presets: deprecated base-auth-stream and base-with-padding, add base-auth 2017-10-20 10:56:03 +08:00
Micooz
2ad0b4fad0
core: move middleware creation from relay to pipe 2017-10-20 10:53:11 +08:00
Micooz
129b515167 presets: allow to use external preset 2017-10-19 21:32:40 +08:00
Micooz
39521ae8f8
transports: pause inbound receiving before outbound connected to remote 2017-10-19 15:23:33 +08:00
Micooz
d7883321f3
src: rename constants
- MIDDLEWARE_DIRECTION_UPWARD -> PIPE_ENCODE
- MIDDLEWARE_DIRECTION_DOWNWARD -> PIPE_DECODE
2017-10-19 11:19:32 +08:00
Micooz
434983d01f
transport: throttle receiving data to reduce memory grow when using websocket 2017-10-19 11:05:45 +08:00
Micooz
f1a555f050
presets: add CONNECTED_TO_REMOTE action 2017-10-19 11:04:23 +08:00
Micooz
5da3bac7d3
proxies: display error message when got invalid requests 2017-10-18 18:02:56 +08:00
Micooz
cd15044aa4
core: disable json output to log files 2017-10-18 13:54:31 +08:00
Micooz
95e6b1b842
presets: fix preset "ss-base" fail to process: invalid length: 0 2017-10-17 10:20:15 +08:00
Micooz
3501b877ab
test: add tests for v2ray-vmess.js, defs.js and middleware.js 2017-10-17 10:14:17 +08:00
Micooz
5b3e1518d4
core: throw an error rather than process.exit() when createMiddlware() 2017-10-17 10:13:31 +08:00
Micooz
6f12dcb2ba transport: fix a null pointer bug in tcp.js 2017-10-15 12:19:51 +08:00
Micooz
34acc66a1d presets: add chacha20-poly1305 security support for v2ray-vmess 2017-10-15 12:17:42 +08:00
Micooz
0c297c9a92 core: catch errors throw from presets at pipe() 2017-10-15 12:14:56 +08:00
Micooz
ba16b706d1 presets: add chacha20-* support for ss-aead-cipher
- chacha20-poly1305
- chacha20-ietf-poly1305
- xchacha20-ietf-poly1305
2017-10-14 22:55:13 +08:00
Micooz
801dd69867 transports: log host and resolved ip separately 2017-10-14 22:51:43 +08:00
Micooz
8c87a360d5 proxies: unify host type in socks.js 2017-10-14 22:50:36 +08:00
Micooz
daf9ba8927 proxies: add tcp.js 2017-10-14 22:48:06 +08:00
Micooz
6200a9ce9a core: add "dstaddr" option to config.js 2017-10-14 22:47:09 +08:00
Micooz
42c7ea8ec2 core: refine hub, pass proxyRequest to relay 2017-10-14 22:45:47 +08:00
Micooz
d26b63f59a presets: remove tunnel 2017-10-14 22:28:06 +08:00
Micooz
a816d60968 presets: remove exp-compress 2017-10-14 19:23:28 +08:00
Micooz
1b17e08288 presets: refine ss-aead-cipher and ss-stream-cipher 2017-10-14 12:26:25 +08:00
Micooz
8294d87bf8
core,test: support "service" option in config 2017-10-13 16:56:49 +08:00
Micooz
92c20bf61c
presets: only watch file in non-test environment 2017-10-13 16:23:28 +08:00
Micooz
d47f7b1337
core: universal service start of hub 2017-10-13 15:51:13 +08:00
Micooz
4459b44e84
bin,src: refine module exports 2017-10-13 15:48:09 +08:00
Micooz
d20443bfc7
transports: change "websocket" to "ws" 2017-10-13 15:43:25 +08:00
Micooz
30288a51f5
transport: destroy socket when "end" as well 2017-10-13 15:42:47 +08:00
Micooz
116c1ff9de
utils: remove problematic parseURI() 2017-10-13 15:41:10 +08:00
Micooz
414bfb86d5
core,presets: remove proxy preset 2017-10-13 15:39:28 +08:00
Micooz
f206be69e3
proxies: a big refactor, use more robust, lightweight and efficient approach 2017-10-13 15:37:42 +08:00
Micooz
53c6681084
transports: check websocket writable before send 2017-10-09 12:56:43 +08:00
Micooz
d73d9fcf44 core: refactor pipe, add pre-hook, improve pipe performance 2017-10-08 11:30:05 +08:00
Micooz
ef8ff9aa48 utils: add generateMutexId() 2017-10-08 11:21:19 +08:00
Micooz
21f4a33c4b core: print logs when load cert.pem or key.pem 2017-10-07 17:02:12 +08:00
Micooz
55d18e7199 core: drop Object.values to fix compatibility for node v6.x 2017-10-07 16:59:01 +08:00
Micooz
835ade4750 core: normalize log output of hub.js 2017-10-07 15:40:45 +08:00
Micooz
373feea909
transports: sync return context when _connect() 2017-09-28 14:27:10 +08:00
Micooz
09dc24da9e
transports: extract tls relevant logic from tcp.js to tls.js 2017-09-27 10:50:57 +08:00
Micooz
1d676a04a1
transports: refine index.js 2017-09-26 11:09:39 +08:00
Micooz
68a595c426
core,bin: add "log_max_days" option 2017-09-26 11:08:55 +08:00
Micooz
708926c72f
core: should clear cache after switch to another server 2017-09-21 12:48:29 +08:00
Micooz
8e72dec75c
presets: fix access bug to static members 2017-09-20 14:22:26 +08:00
Micooz
260c89dda6
presets: two presets are ready for production
exp-base-auth-stream -> base-auth-stream
exp-base-with-padding -> base-with-padding
2017-09-20 13:33:42 +08:00
Micooz
793835d570
presets: refactor exp-compress, expose "threshold" and "options" 2017-09-20 11:48:01 +08:00
Micooz
17e621237f presets: typo 2017-09-19 22:29:49 +08:00
Micooz
3884f4d07c
core,transports: refactor tcp/tls relay, add websocket 2017-09-19 14:07:07 +08:00
Micooz
6d93761f09
presets/tracker: extract dump() method to global static function 2017-09-19 14:05:49 +08:00
Micooz
596c51db3d
core,test: deprecated __IS_TLS__ 2017-09-19 14:04:40 +08:00
Micooz
8436de0124 presets: fix "out of range" bug in v2ray-vmess 2017-09-18 22:52:01 +08:00
Micooz
464cf4e95c core: add _destroy property to pipe 2017-09-18 22:42:46 +08:00
Micooz
2581da27c9 core: print a verbose log when hit cache 2017-09-18 22:41:56 +08:00
Micooz
6cf69805e7
utils: fixed a performance regression of advanced-buffer 2017-09-14 17:21:47 +08:00
Micooz
eae044bade
presets: minor fixes 2017-09-14 13:43:41 +08:00
Micooz
b2778b0785
test: prepare e2e tests for presets 2017-09-13 17:02:24 +08:00
Micooz
b4758e73ed
utils: add missing unit tests 2017-09-13 16:11:06 +08:00
Micooz
03e33a2b6b
utils: refactor shake128() 2017-09-13 15:10:31 +08:00
Micooz
e10ae03f74
presets: add v2ray-vmess support 2017-09-13 15:02:02 +08:00
Micooz
ceeb47d945 presets: adapt utils 2017-09-12 22:23:01 +08:00
Micooz
14b1b02412 utils: more robust 2017-09-12 22:23:01 +08:00
Micooz
01e42411fb utils: split common into several modules 2017-09-12 22:23:01 +08:00
Micooz
15169212b8 core: fix typo in action-handler.js 2017-09-12 22:23:01 +08:00
Micooz
8848d603a2 core: refactor terminate() of hub 2017-09-12 22:23:01 +08:00
Micooz
91a94f3255
core: refine timeout event callback 2017-09-11 14:40:05 +08:00
Micooz
d7e348b592
presets: improve performance and reduce memory usage 2017-09-08 10:47:36 +08:00
Micooz
ca548603b7
core: refactor middleware, improve cache strategy 2017-09-08 10:44:15 +08:00
Micooz
c52ebbae9b
core,presets: remove PRESET_INIT, add static onInit() to IPreset 2017-09-08 10:41:25 +08:00
Micooz
4db9bbb3b9
utils: add clear() for AdvancedBuffer 2017-09-08 10:38:45 +08:00
Micooz
8e8591840d
core,presets: add a new interface next() to IPreset 2017-09-07 17:11:37 +08:00
Micooz
47e992d03b
presets: adjust presets order 2017-09-05 17:55:37 +08:00
Micooz
730db0f29f
core: remove unnessarty check and bring "redirect" back 2017-09-05 14:36:11 +08:00
Micooz
d938eda05b
core: extract onPipeNotified() from relay.hs to action-handler.js 2017-09-05 14:35:19 +08:00
Micooz
17d1e02abb
presets: add access-control.js 2017-09-05 14:34:19 +08:00
Micooz
94be72599b
docs,bin,src: remove behaviours 2017-09-05 14:32:40 +08:00
Micooz
d86b8220f6
utils: fix isValidPort() 2017-09-05 09:52:43 +08:00
Micooz
07a28346bc
core,presets: add 4 actions for traffic control 2017-09-05 09:52:18 +08:00
Micooz
2fd99f6303 presets: check data length after verify for two aead ciphers 2017-09-03 17:16:18 +08:00
Micooz
53577c2fda core: implement PRESET_CLOSE_CONNECTION in relay 2017-09-03 12:23:17 +08:00
Micooz
f921ce9415 core: ignore action emitter itself when broadcast 2017-09-03 12:22:25 +08:00
Micooz
d904b287aa presets: add convenience methods this.broadcast(...) and this.fail(...) 2017-09-02 22:09:51 +08:00
Micooz
a3cab733bd core: refactor pipe.js 2017-09-02 21:31:27 +08:00
Micooz
93ab9d0390 core: refactor middleware.js 2017-09-02 21:30:18 +08:00
Micooz
f439713f17 presets: export modules from defs.js 2017-09-02 11:24:34 +08:00
Micooz
2fc59687b1 utils: fix a type check bug in isValidPort() 2017-09-02 11:23:13 +08:00
Micooz
fff076711f
*: fix mode 2017-08-31 18:01:28 +08:00
Micooz
2a3e645f14
presets: refactor stats.js using IPresetStatic 2017-08-31 15:57:57 +08:00
Micooz
eafa5e9aff
presets: refine parameters check 2017-08-31 15:31:44 +08:00
Micooz
bae4be4452
core,test: refine config.js 2017-08-31 14:53:45 +08:00
Micooz
8850fd0850
presets: add static method checkParams() to IPreset 2017-08-31 14:42:10 +08:00
Micooz
5764a4f2cc
presets,core: add IPresetStatic class, remove checkMiddleware() 2017-08-31 14:41:11 +08:00
Micooz
f88e107f37
presets: change SOCKET_CONNECT_TO_REMOTE to CONNECT_TO_REMOTE 2017-08-31 13:01:34 +08:00
Micooz
b8bbf239ac
core: refactor "drain" event 2017-08-30 16:30:19 +08:00
Micooz
0c4aa5aeea
core,presets: replace PROCESSING_FAILED to PRESET_FAILED 2017-08-30 15:07:06 +08:00
Micooz
85342b7dd9
core,presets: add onDestroy() hook for presets 2017-08-30 14:25:56 +08:00
Micooz
49536e9814
presets: fix obfs-random-padding 2017-08-29 12:50:21 +08:00
Micooz
e4043ea1b2
utils: fix getRandomInt() 2017-08-29 11:35:54 +08:00
Micooz
14484038e6
docs: update presets 2017-08-29 11:06:22 +08:00
Micooz
a4b5ab0c05
presets: re-implement obfs-random-padding 2017-08-29 10:57:31 +08:00
Micooz
d974c2b4d1
utils: improve performance of advanced-buffer 2017-08-29 10:50:32 +08:00
Micooz
654b2f9a39 presets: add obfs-random-padding.js 2017-08-28 22:41:45 +08:00
Micooz
e9eca38110 presets: dump details when fail 2017-08-28 22:41:25 +08:00
Micooz
5f85be4b75 core: fix calling close() on null in hub.js 2017-08-28 22:40:30 +08:00
Micooz
ef704a692c presets: refine stats.js 2017-08-28 19:50:56 +08:00
Micooz
f68ee79319 ci: fix zlib constants for Node.js v6.x 2017-08-28 19:37:52 +08:00
Micooz
8a48e9b3b2
presets: fix stats.js 2017-08-28 18:05:25 +08:00
Micooz
499e23cb93
docs: update 2017-08-28 17:38:50 +08:00
Micooz
479afa070a
presets: add exp-compress.js 2017-08-28 16:54:46 +08:00
Micooz
86637782b4 core,bin: refine "transport" structure 2017-08-22 10:54:25 +08:00
Micooz
3ba4ad2a7e presets: fix host verify in exp-base-with-padding.js 2017-08-21 22:15:43 +08:00
Micooz
81a25e4c35 core: fix presets in relay.js 2017-08-21 22:15:02 +08:00
Micooz
0587fa1921 core: update tests for config.js 2017-08-21 21:09:55 +08:00
Micooz
82d240c582 core: refine tls config stuff 2017-08-21 21:09:39 +08:00
Micooz
e7de9bfb02 core: refactor Socket to Relay then support TLSSocket 2017-08-21 18:09:46 +08:00
Micooz
1ffb7800de utils: refine logger config/import 2017-08-20 22:01:30 +08:00
Micooz
f0207e61d7 behaviours: add tests 2017-08-20 19:55:58 +08:00
Micooz
7e1d7a703f core: add missing tests for config.js 2017-08-20 19:55:41 +08:00
Micooz
8a6657a688 utils: return default logger when instance is not available 2017-08-20 19:55:21 +08:00
Micooz
63d21a42f1 core: fix failing tests 2017-08-20 17:38:10 +08:00
Micooz
03796c8886 core: remove "redirect" option 2017-08-20 17:13:25 +08:00
Micooz
1f61fb10f2 core: add setPresets(callback) to Socket 2017-08-20 13:37:13 +08:00
Micooz
ea18c21bf8 core: fix dns-cache.js 2017-08-20 13:35:45 +08:00
Micooz
9ad0fed649 behaviours: re-implement 2017-08-20 13:35:23 +08:00
Micooz
3a3a8a2404 core: refactor socket.js 2017-08-19 19:51:50 +08:00
Micooz
8ce5f458ca core: now onBroadcast doesn't require direction, use upward directly 2017-08-19 19:51:13 +08:00
Micooz
90134846e8 hub: remove socket by id correctly 2017-08-19 19:49:45 +08:00
Micooz
c5a179456e presets: add tracker.js 2017-08-19 19:49:01 +08:00
Micooz
9fb6500d06 presets: refine SOCKET_CONNECT_TO_REMOTE action 2017-08-19 19:48:17 +08:00
Micooz
26fbce6b44 presets: extract tunnel mode from "proxy" to "tunnel"
close: #91
2017-08-18 15:31:55 +08:00
Micooz
f8961a72be Merge branch 'feature-behaviours' 2017-08-18 15:19:02 +08:00
Micooz
89d528f374 core: refactor socket connect() and onPipeNotified() 2017-08-18 15:17:25 +08:00
Micooz
bf8450b0c5 core,utils: move logger to utils 2017-08-18 15:15:57 +08:00
Micooz
eddbdf91fb core: add validation for json.behaviours 2017-08-18 15:11:49 +08:00
Micooz
9da46c2cc8 behaviours: implemented come behaviours 2017-08-18 15:08:26 +08:00
Micooz
4692893213 behaviors: add several 2017-08-16 22:21:15 +08:00
Micooz
953dcfaa82 src: export presets module 2017-08-16 12:56:39 +08:00
Micooz
b9fd4cb71c presets: export preset names in index.js 2017-08-16 12:56:18 +08:00
Micooz
215ff06641 core: remove dynamic require to presets 2017-08-16 11:48:33 +08:00
Micooz
e09804b481 presets: add index.js 2017-08-16 11:47:53 +08:00
Micooz
143232008b core: fix logger 2017-08-16 11:17:59 +08:00
Micooz
76b8f6f057 core,test: update tests for config.js 2017-08-16 10:06:54 +08:00
Micooz
4109e5f6ba core: add "log_path" option 2017-08-15 23:05:32 +08:00
Micooz
5643ae60e9 core: remove constants.js 2017-08-15 23:04:45 +08:00
Micooz
66aef07e9c core: disable cluster mode by default 2017-08-14 17:39:37 +08:00
Micooz
0f4cc32304 core: allow to disable cluster mode by setting "workers" to zero 2017-08-14 17:25:10 +08:00
Micooz
98a6ace533 test: add more test cases in config.test.js 2017-08-14 16:06:27 +08:00
Micooz
3c3aa46a2e bin,core: support built-in cluster mode
close: #88
2017-08-14 15:54:19 +08:00
Micooz
78fc22264f bin: add start.js for package bin, use cli.js as webpack entry 2017-08-14 15:53:01 +08:00
Micooz
a29c7b71b4 core: remove unused id field 2017-08-14 14:00:53 +08:00
Micooz
75810f233a presets: fix buffer staging issue for obfs-tls1.2-ticket 2017-08-11 17:31:29 +08:00
Micooz
e5bb2dfea9 presets: fix buffer staging issue 2017-08-11 17:18:56 +08:00
Micooz
ac0b52f935 core: fix server redirect condition when "redirect" is not provided 2017-08-11 17:17:55 +08:00
Micooz
a314f742a9 core,presets: broadcast PRESET_INIT when middlewares are set
close: #85
2017-08-11 10:15:46 +08:00
Micooz
02c7dfb56b presets: finished proxy.js 2017-08-10 22:09:54 +08:00
Micooz
5d4bd8c3a9 core,presets: switch to use SOCKET_CONNECT_TO_REMOTE 2017-08-10 22:09:00 +08:00
Micooz
d5d8dca99a core: now check the first preset 2017-08-10 22:07:15 +08:00
Micooz
a981f835f4 presets: [unfinished] proxy.js 2017-08-10 18:04:32 +08:00
Micooz
e6a96c1507 docs: update presets 2017-08-10 17:42:45 +08:00
Micooz
c80dccd224 presets: add stats.js 2017-08-10 14:34:40 +08:00
Micooz
0f20f51428 presets: use next() instead of direct() for better chaining 2017-08-10 14:34:19 +08:00
Micooz
ad588542eb core: allow pass the second parameter to next(buf, isReverse) 2017-08-10 14:33:34 +08:00
Micooz
fcdc1adc01 core,bin: remove profile.js 2017-08-10 14:31:29 +08:00
Micooz
7c2292a2e5 presets: fix address convert for exp-base-* 2017-08-09 17:49:43 +08:00
Micooz
47c2455b1a core,presets: refactor application proxy logic, take advantages of "proxy" preset 2017-08-09 14:54:31 +08:00
Micooz
cc1e781a2d core: allow not to specify "params" for preset in .json 2017-08-09 14:39:31 +08:00
Micooz
4e16d5b88e presets: fix class name 2017-08-08 15:53:00 +08:00
Micooz
e308f8b10d index.js: fix argv check 2017-08-08 15:34:40 +08:00
Micooz
f88906bac1 src: add bootstrap logic to index.js for webpack bundle 2017-08-08 14:04:22 +08:00
Micooz
4b99b1e918 core: hub and socket are now extends EventEmitter 2017-08-02 16:19:53 +08:00
Micooz
e5375a32ec core: add "dns_expire" option
close: #77
2017-08-02 16:14:04 +08:00
Micooz
710b52ce4d core: refactor dns-cache.js support custom expire 2017-08-02 16:12:59 +08:00
Micooz
df3a8c0166 presets: add proxy preset
close: #76
2017-08-02 12:54:17 +08:00
Micooz
152508e927 proxies: move core/client-proxy.js to proxies/proxifier.js 2017-08-02 12:52:30 +08:00
Micooz
067ee87573 presets: remove aes-xxx-ofb and aes-xxx-cbc from ss-stream-ciphers
close: #74
2017-08-02 09:20:29 +08:00
Micooz
3ec6fd8632 presets: dump error details for obfs-tls1.2-ticket 2017-08-01 13:02:54 +08:00
Micooz
6462de1f08 core: display preset name in error log
close: #72
2017-08-01 12:48:22 +08:00
Micooz
6aa4538fcb utils: add kebabCase() 2017-08-01 12:47:53 +08:00
Micooz
4e9c356ef3 test: add tests for utils.Xor() 2017-08-01 10:32:15 +08:00
Micooz
d1479d47cd presets: use different key for calculating HMAC-SHA1 in exp-base-auth-stream preset 2017-08-01 09:55:37 +08:00
Micooz
be41c47dae utils: add Xor() 2017-08-01 09:53:44 +08:00
Micooz
ff47b82e82 presets: add exp-base-auth-stream.js 2017-07-31 22:52:36 +08:00
Micooz
cc88c002b7 presets: add exp-base-with-padding.js 2017-07-23 22:58:48 +08:00
Micooz
32de693385 utils: change md5(buffer) to hash(algorithm, buffer) 2017-07-23 22:58:05 +08:00
Micooz
2675bd486b fix(ss-base): ipv6 port parse wrong
close: #68
2017-06-19 16:30:16 +08:00
Micooz
66bf720385 fix(eslint): no-useless-escape 2017-06-18 20:07:06 +08:00
Micooz
9e7fbd96f6 fix(presets): obfs-tls-1.2-ticket, should send New Session Ticket to client 2017-06-15 16:50:36 +08:00
Micooz
879640d573 feat(presets): allow to pass provide a list of sni to obfs-tls1.2-ticket 2017-06-15 16:47:16 +08:00
Micooz
4b1c2ac06a docs(presets): clarify ss-base.js and ss-stream-cipher.js 2017-06-15 15:05:57 +08:00
Micooz
3e13603e59 fix(core): http message parsing
close: #59
2017-06-13 22:20:53 +08:00
Micooz
c9edb6aac6 Merge branch 'feature-aead-with-random-padding' 2017-06-12 09:14:19 +08:00
Micooz
680748da58 fix(aead-random-cipher): should check whether the factor is an integer 2017-06-12 09:07:12 +08:00
Micooz
fffca228e7 refactor(utils): bring blinksocks-utils back to blinksocks 2017-06-11 22:55:46 +08:00
Micooz
212cf673ef feat(presets): add aead-random-cipher.js 2017-06-11 22:53:58 +08:00
Micooz
77a085d44a feat(core): allow to custom DNS servers
close: #66
2017-06-11 18:44:19 +08:00
Micooz
cf11f0b1d1 fix(core): host display issue 2017-06-10 16:23:12 +08:00
Micooz
ebd678271a fix(proxies): convert socks4 DSTADDR to a buffer 2017-06-10 16:22:14 +08:00
Micooz
b720dab5b1 chore(proxies): rename __test__ to __tests__ 2017-06-10 15:36:07 +08:00
Micooz
dd1befe248 test(config): mock fs module and update tests 2017-06-10 15:35:47 +08:00
Micooz
dee03a0438 refactor(core): instantiating winston logger
close: #65
2017-06-10 14:53:21 +08:00
Micooz
5a5664ea27 fix(socket): TypeError: Cannot read property 'bufferSize' of null
close: #64
2017-06-09 11:01:44 +08:00
Micooz Lee
fbc2e12da7 fix(test): eslint 2017-06-08 07:50:36 +08:00
Micooz
d72679775c refactor(socket): add fsocketWritable() and bsocketWritable() 2017-06-07 14:33:18 +08:00
Micooz
49573970cd feat(socket): throttle uploads to reduce memory grow heavily
close: #60
2017-06-06 18:16:50 +08:00
Micooz
6a93422c8e refactor(socket): use socket.setTimeout() instead of setInterval()
close: #61
2017-06-06 14:15:45 +08:00
Micooz Lee
404c7a4277 fix(proxies): http "Host: " header detection
close: #59
2017-06-03 21:16:15 +08:00
Micooz
168e89c80b refactor(config): extract validation into independent functions 2017-06-02 17:49:46 +08:00
Micooz
f554b3abdd fix(config): should mkdir ~/.blinksocks before mkdir ~/.blinksocks/logs
close: #58
2017-06-02 16:46:27 +08:00
Micooz
14ea9321ba chore(socket): log request address when applications connected to the client
close: #57
2017-06-02 15:52:58 +08:00
Micooz Lee
f4084d1d1b fix(core): write logs to home directory
close: #55
2017-05-29 14:41:59 +08:00
Micooz
a7a9e71b6c feat(hub): add callback to "run()" method 2017-05-23 21:09:29 +08:00
Micooz
20b84f8ac1 fix(obfs-tls1.2-ticket): should continue to receive when "Application Data" is not enough 2017-04-29 22:51:05 +08:00
Micooz
ddf26361b0 chore(hub): allow pass config directly to contructor 2017-04-29 22:35:28 +08:00
Micooz
6b190cefa8 chore(hub): destroy all socket before program terminate 2017-04-29 22:32:33 +08:00
Micooz
f49e0aabf6 chore(Hub): prevent onClose() multiple times 2017-04-26 16:16:22 +08:00
Micooz
50719fa5b5 refactor(Hub): drop "error" handler and process.exit(0) 2017-04-26 15:57:16 +08:00
Micooz
a333eb1408 refactor(utils): use "blinksocks-utils" package instead 2017-04-23 19:47:05 +08:00
Micooz
a582edb6bf chore(presets): minor fix 2017-04-23 12:10:56 +08:00
Micooz
9970f4ccef docs(presets): document obfs-tls1.2-ticket.js 2017-04-22 21:48:20 +08:00
Micooz
d6eb0dde12 chore(presets): rename http.js -> obfs-http.js 2017-04-22 21:47:39 +08:00
Micooz
e9642a3965 feat(presets): finished obfs-tls1.2-ticket preset
close: #52
2017-04-22 16:43:32 +08:00
Micooz
48c4f6cc04 test(utils): update 2017-04-22 16:31:23 +08:00
Micooz
407cc446f6 chore(utils): rename stringToBuffer -> hexStringToBuffer 2017-04-22 16:18:33 +08:00
Micooz
330a137052 refactor(utils): getRandomInt now generates cryptographically strong pseudo-random integer 2017-04-22 16:17:42 +08:00
Micooz
91acafae75 chore(presets): adjust MIN_CHUNK_SPLIT_LEN to 0x0800 2017-04-22 16:13:47 +08:00
Micooz
de56e2f96d refactor(presets): extract "getUTC", "stb", "hmac" and "HKDF" to utils.js 2017-04-22 14:10:58 +08:00
Micooz
83d73526c0 chore(pipe): "direct" now return undefined 2017-04-22 14:09:10 +08:00
Micooz
017f3fb6df Merge branch 'feature-obfs-tls1.2-ticket'
* feature-obfs-tls1.2-ticket:
  fix(presets): now obfs-tls1.2-ticket should just work
  feat(middleware,pipe): add "direct" callback to transmit data directly without piping
  refactor(socket): deprecate isPipable()
  chore(presets): temporary add obfs-tls1.2-ticket.js
2017-04-22 10:50:18 +08:00
Micooz
df1a705b73 refactor(utils): extract getChunks() into utils.js, add getRandomChunks() 2017-04-21 17:28:36 +08:00
Micooz
1ee997a044 fix(presets): now obfs-tls1.2-ticket should just work 2017-04-21 15:44:47 +08:00
Micooz
089f80d7fa feat(middleware,pipe): add "direct" callback to transmit data directly without piping 2017-04-21 15:43:07 +08:00
Micooz
672cc9f369 refactor(socket): deprecate isPipable() 2017-04-21 15:27:48 +08:00
Micooz
e8ba7adabb chore(presets): temporary add obfs-tls1.2-ticket.js 2017-04-20 22:36:55 +08:00
Micooz
c9c2c4bae4 feat(config): add "transport" option 2017-04-20 17:20:42 +08:00
Micooz
bbfe3bd1bd chore(socket): better summary 2017-04-20 12:18:29 +08:00
Micooz
88a1ec8e68 fix(socket): should not close bsocket when fscoket closed
close: #51
2017-04-18 11:54:11 +08:00
Micooz
a021a7c48f test(ss-base): drop unnecessary tests 2017-04-17 17:30:22 +08:00
Micooz
587d722fcc fix(socket): prevent calling "write" on null 2017-04-17 17:20:18 +08:00
Micooz
2699070903 fix(ss-base): stage data before onConnected is called
close: #50
2017-04-17 17:19:31 +08:00
Micooz
a95f3054a5 fix(socket): should deep compare server structure 2017-04-17 14:28:34 +08:00
Micooz
61557f8e49 refactor(socket): subdivide several methods 2017-04-17 13:58:05 +08:00