- 23 Dec, 2017 1 commit
-
- 22 Dec, 2017 1 commit
-
-
Max Lv authored
-
- 20 Dec, 2017 7 commits
- 19 Dec, 2017 9 commits
- 17 Dec, 2017 16 commits
-
-
Mygod authored
-
Mygod authored
-
Mygod authored
I just saved everyone ~0.9s every VPN connection.
-
Mygod authored
It should run 9x faster than before now. Past mistakes: * InetAddress.parseNumericAddress throws TWO exceptions underthehood if the string passed is invalid. This caused a huge overhead; * CharSequence.split in Kotlin is EXTREMELY SLOW.
-
Mygod authored
Also solves a cache problem.
-
Mygod authored
-
Mygod authored
-
Mygod authored
-
Mygod authored
Less files to backup. Less constants to keep track of.
-
Mygod authored
-
Mygod authored
Fix #1505
-
Max Lv authored
-
Max Lv authored
-
Max Lv authored
-
Mygod authored
-
Mygod authored
-
- 16 Dec, 2017 1 commit
-
-
Max Lv authored
Implement direct boot awareness
-
- 15 Dec, 2017 5 commits
-
-
Mygod authored
-
Mygod authored
-
Mygod authored
-
Mygod authored
To do direct boot, important files need to be moved to device storage (i.e. not as safe storage). The only thing sensitive is user credentials (server settings in each profile) and the config file passed to libss-*.so. In order to implement direct boot, at least the active profile has to be moved/copied to device storage. This commit keeps profile information (and temporary data used by ProfileConfigFragment) and Shadowsocks config in credential storage and move everything else to device storage. In order to make direct boot work, active profile is also copied into device storage and Shadowsocks config file is created in device storage during direct boot. Cleanup of those information is also implemented. Fixes #1457. NB: * `android:directBootAware` can't be used on application element. That seems to be used by system apps. * Works fine with multi-user; * Old GSM files are not migrated (see App.kt) to device storage.
-
Mygod authored
-