Commit Graph
20 Commits
Author SHA1 Message Date
celeron533 a4c4967f5f Rename GetQRCode() to GetServerURL() 2017-09-25 20:24:15 +08:00
celeron533 7c73aaa1cf Append more test cases for ParseShadowsocksUrlTest 2017-09-10 10:55:45 +08:00
Raif Atef f04b497d79 SIP002 and SIP003 support 2017-08-14 11:48:41 +02:00
Syrone Wong 3de14098d7 add AEAD support 2017-03-31 21:36:45 +08:00
noisyfox 63816ccdd1 Fix hotkey unregister issue.
Use singleton mode for hotkey callbacks.
2016-11-23 02:34:07 +11:00
Syrone Wong 8fcb66b6ff Refine RNG usage
- Create instance once, bind it to ShadowsocksController

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2016-11-09 10:28:50 +08:00
Syrone Wong 99bdec334c Add global hotkey support (#724)
Design:

Use the plain string for both config and hotkey parsing
and make use of KeyConverter, ModifierKeysConverter
to make it more rubust.

Find corresponding label (to display operation result) and callback (to do the real work) based on textbox name. In this case, they should be named as `<Feature-Name><Control-Name>`.

ShowLogsTextBox,
ShowLogsLabel,
ShowLogsCallback.

If this requirement doesn't meet, throw an exception at runtime.

Logic:

How to input keys:
1. put focus in the corresponding textbox
2. press the key combination you want to use
3. when you think it is ready, release all keys
4. the textbox shows your input

How to change keys:
1. put focus in the corresponding textbox
2. press BackSpace to clear content
3. re-input new one

How to deactivate:
1. clear content in the textbox
2. press OK button

Meaning of label color:
- Green: this combination is not occupied by other programs and register successfully
- Yellow: this combination is occupied by other programs and you have to change to another one
- Transparent without color: initial status

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2016-09-16 23:42:16 -05:00
Syrone Wong 2fafc52def Refine encryption(#655)
* Refine encryption

- Add AES-CTR, blowfish and camellia ciphers

aes-256-ctr
aes-192-ctr
aes-128-ctr
bf-cfb
camellia-128-cfb
camellia-192-cfb
camellia-256-cfb

- Merge the previous PolarSSL and MbedTLS
- Switch to MbedTLS's cipher layer functions
- Add workaround to set cipher operation(encrypt/decrypt)

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>

* Add function to get MbedTLS cipher context size

and drop hard-coded ctx sizes

Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
2016-08-13 14:28:09 +08:00
Gang Zhuo dd0d047402 override MD5, so compatible with FIPS 2015-11-23 23:52:54 +08:00
Gang Zhuo 098640e792 refact 2015-09-25 04:42:56 -04:00
Gang Zhuo c5e27486fb Protocol V2 2015-09-25 04:03:04 -04:00
Gang Zhuo 1d1c325ce1 fix UnitTest 2015-09-22 00:11:12 -04:00
Gang Zhuo ff0bc37694 fix UnitTest 2015-09-20 15:13:12 +08:00
clowwindy db6701b1b2 refactor package name 2015-01-01 22:05:16 +08:00
clowwindy 05d8d5f6dc refine tests 2014-12-13 12:49:59 +08:00
clowwindy b30bb7ef5e fix aes 2014-12-13 11:19:17 +08:00
clowwindy 88b4eac850 make polarssl smaller 2014-11-13 23:23:29 +08:00
clowwindy aa8e6558d5 move polarssl context to unmanaged heap; fix #32 2014-11-12 01:51:11 +08:00
clowwindy bbbde8a64d add unit test for encryption 2014-11-11 21:52:26 +08:00
clowwindy e0780c0ff8 version check 2014-11-09 17:35:44 +08:00