Commit Graph
857 Commits
Author SHA1 Message Date
lqs fda287d76f Add tcp-fast-open support for ss-redir 2017-03-16 13:06:08 +08:00
Max Lv 908a7fa050 Fix #1296 2017-03-16 13:06:07 +08:00
Max Lv f3d298f036 Fix #1291 2017-03-16 13:06:07 +08:00
Max Lv 9bf991b23f Refine the parameters of bloom filter 2017-03-16 13:06:06 +08:00
Max Lv 557cd91fe0 Make parameters of bloom filter be compiler-time constants 2017-03-16 13:06:06 +08:00
Max Lv 3f2f979dac Replace nonce cache with a ping-pong bloom filter (#1282)
* Add Ping-Pong bloom filter

* Refine bloom filter insertion

* Reduce the error rate to 0.00001

* Avoid alignment issue in murmurhash2

* Fix a memory leak

* Fix build on non-GPU targets

* Detect get_current_dir_name in configure

* Update README.md

* Remove redudant bfree()

* Reduce the memory usage for local client

* Fix #1275

* Refine #1275

* Use IP when bypassing SNI domains

* Also apply replay detector on UDP traffic

* Update deb build script

Now build script is able to auto detect system and choose libraries
necessary to build.

Also update the README accordingly.

* Update build script to enable jessie/stretch etc

Also include a few cleanup that simplified pkg installation from
backports repository.
2017-03-16 13:06:06 +08:00
Max Lv a0fd7a1186 Detect get_current_dir_name in configure 2017-03-16 13:06:05 +08:00
Max Lv f9fe9bccf5 Fix build on non-GPU targets 2017-03-16 13:06:05 +08:00
Max Lv bf23fb6ec4 Fix a memory leak 2017-03-16 13:06:05 +08:00
Roger Shimizu 825e83534b fix of PATH_MAX for GNU/Hurd
Info:
 - https://www.gnu.org/software/hurd/community/gsoc/project_ideas/maxpath.html
 - https://www.gnu.org/software/hurd/hurd/porting/guidelines.html#PATH_MAX_tt_MAX_PATH_tt_MAXPATHL
2017-03-16 13:06:04 +08:00
wener 734092e348 Build shared and static shadowsock-libev and executable. 2017-02-20 00:04:28 +08:00
wener 0cabdccd9a Remove confuse comment in config.h.in;Move config.h.in to cmake. 2017-02-18 13:03:22 +08:00
wener c5ac1316aa Use cmake to generate config.h 2017-02-17 18:58:32 +08:00
Syrone Wong 80ca9469e6 Output error log when repeat IV/salt detected
This is useful when checking connection issues, and can be used to
check broken random number generator and replay attacks.

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2017-02-14 19:41:46 +08:00
Max Lv 504a3f7813 Refine MAX_FRAG 2017-02-14 10:38:39 +08:00
Max Lv 422eaa5024 Add back fragmentation detection 2017-02-14 10:02:36 +08:00
Max Lv 72f6041a7c Add USE_SYSTEM_SHARED_LIB check in configure 2017-02-13 21:32:46 +08:00
Max Lv 2a9b9c7358 Revert "Fix server buffer #1245"
This reverts commit 9716eede20.
2017-02-13 19:03:28 +08:00
Max Lv 9716eede20 Fix server buffer #1245 2017-02-13 18:54:37 +08:00
Max Lv 8a34b3ea0b Rename DEBUG to SS_DEBUG 2017-02-13 13:16:57 +08:00
Max Lv 6520f340bb Fix #1240 2017-02-12 20:15:22 +08:00
Max Lv 6c62647a66 Add session key following SIP007 2017-02-12 16:34:42 +08:00
Max Lv d1018e4ca5 Ignore empty payload 2017-02-11 09:12:02 +08:00
Max Lv 0cff5503f6 Add default manager-address 2017-02-10 15:38:38 +08:00
Max Lv f4b1641636 Fix #1217 2017-02-08 09:58:04 +08:00
Max Lv c5c8389a8d Fix data len 2017-02-06 18:03:05 +08:00
Max Lv c9d7ff16d6 Fix a typo 2017-02-06 17:26:58 +08:00
Max Lv ef0402eb10 Add --key option to set key directly (#1207) 2017-02-06 17:02:04 +08:00
Dijkstra 43aabb2303 Fix typo. (#1206) 2017-02-06 16:33:21 +08:00
Kim bf14944490 fixed json_null => NULL (#1193)
The json_null should be C NULL.
2017-02-05 07:14:19 +08:00
Max Lv 894eae567c Refine ciphers 2017-02-04 20:04:48 +08:00
Max Lv dde1bf7dec Fix a potential issue in parse_addr 2017-02-04 18:36:06 +08:00
Max Lv 2b1b9bb403 Refine buffer handling in stream_decrypt 2017-02-04 16:22:58 +08:00
Max Lv 68929513d3 Fix a typo 2017-02-04 15:32:24 +08:00
Max Lv 2f7882244f Refine IV in stream cipher 2017-02-04 12:45:13 +08:00
Max Lv 116e177657 Refine ss-tunnel 2017-02-04 09:34:38 +08:00
Max Lv 44220a5a53 Fix options 2017-02-04 09:29:31 +08:00
Max Lv f45c150e02 Fix redundant options 2017-02-04 09:23:22 +08:00
Max Lv a906d0cfc8 Fix UDP relay issue on Android 2017-02-03 12:33:28 +08:00
Max Lv 7ef88b174c Fix #1154 2017-02-03 07:52:26 +08:00
Max Lv 6e0c257bce Fix help message 2017-02-03 07:24:18 +08:00
Max Lv 7b290f30d6 Make SO_REUSEPORT disabled by default 2017-02-02 21:05:57 +08:00
Max Lv df595fcb73 Fix #1168 2017-02-02 20:27:06 +08:00
Mygod c8bcf594e2 Fix android.c 2017-02-02 17:36:59 +08:00
Max Lv 833594e3c6 Update Makefile 2017-02-01 19:22:36 +08:00
Max Lv 78cf5348f0 Update documents 2017-02-01 18:51:48 +08:00
Max Lv 56658d1c79 Merge pull request #1152 from shadowsocks/sip004
Add AEAD support
2017-02-01 18:19:40 +08:00
anonymous-contributor 98c51cd0d5 Obfsproxy standalone mode (#1156)
* ss-libev: Introduce mode parameter for start_plugin

Since obfsproxy handles client and server in different ways, no matter
standalone or manged mode, so introduce the mode for start_plugin() to
support obfsproxy.

With more comments added to plugin.h for later developers.

Signed-off-by: Adam Anonymous <anonymous_temp_mail@yahoo.co.jp>

* ss-libev: Move SS protocol plugin initialization code to start_ss_plugin

Move SS protocol plugin initialization to start_ss_plugin() function, as
the support for obfsproxy will not use that environment.

Also, remove the use of get_current_dir_name() which is a glibc
extension, such macro hack will just make code less readable.
Not to mention it already screw up code folding of vim.

Signed-off-by: Adam Anonymous <anonymous_temp_mail@yahoo.co.jp>

* ss-libev: Introduce obfsproxy standalone mode support as plugin

Now shadowsocks-libev supports to use obfsproxy as plugin.

Currently we only support to use standalone(proxy) mode of obfsproxy, as
managed mode needs to use SOCKS5 as upstream forward, while ss-libev
doesn't support it yet.

And the output from plugin is just trashed for now.
Support to pipe them into stdout/stderr will be added later.

Signed-off-by: Adam Anonymous <anonymous_temp_mail@yahoo.co.jp>

* ss-libev: doc: Fix wrong cmdline parameter for plugin options

Command line option for plugin options is "--plugin-opts", not the json
option "--plugin_opts"

Fix it.

Signed-off-by: Adam Anonymous <anonymous_temp_mail@yahoo.co.jp>
2017-02-01 18:18:43 +08:00
anonymous-contributor a3d0f02c3e Use enum number for val of long options (#1155) 2017-02-01 12:53:20 +08:00
anonymous-contributor 1fc17aca38 Use enum number for val of long options (#1155)
* ss-libev: local: Use enum number for val of long options

Signed-off-by: Adam Anonymous <anonymous_temp_mail@yahoo.co.jp>

* ss-libev: manager: Use enum number for val of long options

Signed-off-by: Adam Anonymous <anonymous_temp_mail@yahoo.co.jp>

* ss-libev: redir: Use enum number for val of long options

Signed-off-by: Adam Anonymous <anonymous_temp_mail@yahoo.co.jp>

* ss-libev: server: Use enum number for val of long options

Signed-off-by: Adam Anonymous <anonymous_temp_mail@yahoo.co.jp>

* ss-libev: tunnel: Use enum number for val of long options

Signed-off-by: Adam Anonymous <anonymous_temp_mail@yahoo.co.jp>
2017-02-01 12:49:10 +08:00