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>
* 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>
- use null conditional access in case some connections been
cancelled unexpectedly and may cause null reference exception
- Refine error message
- use conditional operator to simplify some code
Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
The executable was modified based on official release version, which
prevents privoxy from showing tray icon.
jmp dword ptr [<&SHELL32.Shell_NotifyIconA>] => nop
This should close#455
Signed-off-by: Syrone Wong <wong.syrone@gmail.com>
ChaCha20 with an extended (96 bit) nonce and a 32-bit counter has
been implemented as crypto_stream_chacha20_ietf() from LibSodium 1.0.4
Please refer to https://tools.ietf.org/html/rfc7539 for details.
Signed-off-by: Syrone Wong <wong.syrone@gmail.com>