| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
|
|
|
| |
Permissions mode 0600 was preventing even the user from accessing the
configuration files. This makes the permissions more open.
The private key files should nevertheless be protected from other apps
by the permissions on the parent directory. Password protection for the
private key is also recommended in general.
GitHub: fixes #122
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
|
|
| |
Google Play requires apps to target this API level by August 31 2023.
The app builds and seems to work, with the exception of notifications
which require additional runtime permission handling. Those are needed
for the VPN service to be able to report config and runtime errors to
the user.
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
JCenter is shutting down.
All used dependencies seem to be available on Maven Central.
|
| |
|
|
|
|
|
|
| |
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
|
| |
|
| |
|
| |
|
| |
|