| Commit message (Collapse) | Author | Age |
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Moving back the configuration files and logs to the user-accessible
storage. Everything should be accessible through a file manager using
the "USB storage" mode. The embedded FTP server is no longer
necessary.
|
| |
|
|
|
|
|
|
|
|
| |
Backup was disabled altogether to avoid leaking the private keys in
clear.
This relaxes this restriction only for client-side encrypted online
backups or local device-to-device transfers.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
* Automatic commit of updated project files
* Machine translation formatting fixed
* Update strings.xml
Copyright years fixed.
Co-authored-by: L10N Robot <l10n@mycompany.com>
|
|
|
|
|
|
|
|
| |
Since API 29, all VPN connections were treated as metered by default.
This is not relevant for tinc networks, so it's preferable to simply
inherit that property from the underlying link.
GitHub: closes #114
|
| |
|
|
|
|
|
| |
This was causing a crash when connecting or enabling the internal FTP
server or opening manual links.
|
|
|
|
| |
Recommended and performed by Android Studio's Upgrade Assistant.
|
|
|
|
|
| |
The "prominent disclosure" is a new requirement for Google Play:
https://support.google.com/googleplay/android-developer/answer/12564964?hl=en
|
|
|
|
| |
The Google Play Store requires targetting >=API 31.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
configurable
GitHub: see https://github.com/pacien/tincapp/issues/103#issuecomment-741025439
|
|
|
|
|
|
|
|
|
|
|
|
| |
port range
The Apache Mina FtpServer library seems to have some issues when handling parallel transfers.
This simply disables multithreading in the library to avoid those.
The changeset also explicitly define a port range to be used for passive FTP data connections,
solving the warnings about unregistered ports.
GitHub: see https://github.com/pacien/tincapp/issues/103#issuecomment-741025439
|
|
|
|
|
|
|
| |
Android versions
The Java NIO API is not fully available below Android API level 26, causing errors on devices
that we still support otherwise.
|
|
|
|
|
|
|
|
|
| |
loses focus
This makes the ConfigurationAccessService (formerly ConfigurationFtpService) start in foreground
through the use of a persistent notification so that it isn't stopped by the system after the app
loses the focus on the user's screen, which happens when the user switches to an FTP client
application on the same device.
|
|
|
|
|
| |
The default logging settings of the Apache Mina FtpServer library quickly fill-up the logs at the
INFO level. This sets the level to WARN for this library.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a ridiculous workaround to make the configuration (and other files) accessible to the user
necessary after the new storage access restriction enforced in Android 11 which prevent other
applications from accessing the supposedly public application's directory.
The app's internal private storage directory is now exposed to the user through an embedded FTP
server that the user can turn on and off from the configuration activity. The user can then play
with the configuration and retrieve logs through a remote or local FTP client application of their
choice.
GitHub: closes #103
|
|
|
|
|
|
|
|
|
|
|
| |
This adds an automatic configuration migrator which moves the configuration files previously located
on the external public-ish directory to the private app storage, so that existing users can seamlessly
transition to the next version.
The cache directory containing the logs is cleared instead of being migrated, because those files are
considered disposable.
GitHub: related to #103
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
app storage
The external app public storage directory is no longer reliably accessible on Android 11 and above.
This makes editing the configuration and accessing the log files impossible in some cases.
Let's move to the app private storage, to be made accessible to the user by some other mean.
This has the benefit of also protecting the private keys that need to be stored encrypted otherwise.
We also split the configuration and cache directory into specialised sub-directories.
GitHub: related to #103
|
| |
|
|
|
|
|
|
|
|
| |
The following works from API 21 to 30 (included):
* creating a new network configuration
* private key encryption and decryption
* communication between apps and the tinc daemon
* communication between tinc daemon and the internet
|
|
|
|
|
|
|
| |
The external cache directory used to store the application's log files
may not be available on all devices, in particular on Android >11.
GitHub: closes #98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The following works from API 21 to 29 (included):
* creating a new network configuration
* private key encryption and decryption
* communication between apps and the tinc daemon
* communication between tinc daemon and the internet
The app seems to have issues with the new storage restriction on API 30
(Android 11).
GitHub: closes #97
|
| |
|
|
|
|
|
|
|
|
|
| |
This fixes the "FORTIFY: umask: called with invalid mask -601" error
when attempting to create a new tinc configuration on builds having
the FORTIFY option enabled (by default in NDK >=r21).
Upstream patch: https://github.com/gsliepen/tinc/pull/251
GitHub: closes #99
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
GitHub: closes https://github.com/pacien/tincapp/issues/94
|
|
|
|
|
|
|
| |
Android 10 (API 29) doesn't allow us to pass them by sharing file
descriptors anymore, making the use of temp files mandatory.
GitHub: https://github.com/pacien/tincapp/issues/92
|
|
|
|
|
|
|
|
|
| |
Workaround for new shared memory restrictions added in Android 10
preventing file descriptor leakage to sub-processes.
This change set BREAKS ENCRYPTED PRIVATE KEYS SUPPORT.
GitHub: https://github.com/pacien/tincapp/issues/92
|
|
|
|
| |
switching from android.support to androidx
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
https://developer.android.com/google-play/resources/icon-design-specifications
|
| |
|