Commit Graph
470 Commits
Author SHA1 Message Date
Tobias Brunner 9665686bd8 daemon: Use separate method to set default loggers
This way it is not necessary to pass the same values to reload the
loggers.
2017-01-25 14:58:09 +01:00
Tobias Brunner 7b73cf4aa9 android: New release after adding profile import functionality 2017-01-20 11:53:43 +01:00
Tobias Brunner 66bf2b788c android: Handle profile file names with dots in them 2017-01-20 11:44:17 +01:00
Tobias Brunner 9c79af8c38 android: Handle errors when fetching profile in more detail 2017-01-20 11:44:16 +01:00
Tobias Brunner 3107634e30 android: Add activity to import VPN profiles from JSON-encoded files
The file format is documented on the wiki.

URLs to .sswan files may be intercepted and downloaded files with a media
type of application/vnd.strongswan.profile may also be opened (the file
extension doesn't matter in that case).  Whether downloaded files for which
the media type is not correct but the extension is .sswan can be opened
depends on the app that issues the Intent.  For instance, from the default
Downloads app it won't work due to the content:// URLs that do not contain
the file name but when opening the downloaded file from within Chrome's
Downloads view it works as these Intents use file:// URLs, which contain
the complete file name (the latter requires a new permission).
2017-01-20 11:44:07 +01:00
Tobias Brunner cf6110f152 android: Use a local broadcast to notify about profile changes
This allows other components to modify the profiles and notify about
changes.
2017-01-20 11:01:32 +01:00
Tobias Brunner c4ab9af74e android: Add a UUID property to the VPN profiles
All new or edited profiles get a random UUID.  We currently don't
enforce one, though.  Later we might change that and use the UUID as
primary key.
2017-01-20 11:01:32 +01:00
Tobias Brunner 8c859e86d6 android: New release after re-adding support for ECC Brainpool curves 2016-12-10 12:28:09 +01:00
Tobias Brunner aae9a9e678 android: New release after fixing libtpmtss issue 2016-12-09 11:18:17 +01:00
Tobias Brunner 9920824e70 android: Make sure libtpmtss is loaded on older systems
On newer Android systems this seems to happen automatically (or does at
least not cause crashes if the library is not loaded).
2016-12-09 11:16:42 +01:00
Tobias Brunner 708f9c7f65 android: New release after adding notification 2016-12-08 17:37:21 +01:00
Tobias Brunner 3e85b5a492 android: Ensure that the certificates are loaded when accessing them via JNI 2016-12-08 17:14:49 +01:00
Tobias Brunner 85059424a7 android: Add a public notification 2016-12-08 17:14:49 +01:00
Tobias Brunner d5070425a0 android: Display a permanent notification while connected
This forces the service to run in the foreground, meaning the system
won't kill it when low on memory.
2016-12-08 17:14:49 +01:00
Tobias Brunner e03c936982 android: Log any installed DNS servers 2016-12-08 17:14:49 +01:00
Tobias Brunner d6d12bab14 android: Unregister listener in case of error alerts
This avoids triggering additional errors via e.g. ike_updown() that
might cause the error message displayed in the GUI to change if the
status fragment is recreated.

References #2134.
2016-12-08 17:13:16 +01:00
Tobias Brunner ef2ad9db1c android: Report an error for invalid integer values
Previously we'd just ignore the invalid values without notifying the
user.
2016-12-08 16:43:51 +01:00
Tobias Brunner cefbf2bf9b android: Propose curve25519 in the ESP proposals 2016-12-08 16:43:51 +01:00
Tobias Brunner fec47b6146 android: Enable curve25519 plugin in the app 2016-12-08 16:43:51 +01:00
Tobias Brunner 5f0913fc1e android: Propose ChaCha20/Poly1305 in the ESP AEAD proposals 2016-12-08 16:43:50 +01:00
Tobias Brunner 8c0b38e9df android: Enable chapoly plugin in the app 2016-12-08 16:43:50 +01:00
Tobias Brunner 03472aea1f android: Update Gradle plugin and wrapper 2016-12-08 16:43:50 +01:00
Tobias Brunner 8b35d5f162 android: Identifiers for SHA2-base RSA signature schemes got renamed
Fixes: 40f2589abf ("gmp: Support of SHA-3 RSA signatures")
2016-10-11 15:29:14 +02:00
Tobias Brunner 6b726b6fb2 android: Fix build after adding libtpmtss 2016-06-28 11:28:15 +02:00
Tobias Brunner 6294f28bd3 android: Catch exception if numbers are too large for Integer 2016-06-13 16:12:17 +02:00
Tobias Brunner 9827380e6f android: Update Gradle plugin 2016-06-13 10:19:13 +02:00
Tobias Brunner 25b69260fe android: Fix signature of get_nexthop() 2016-06-13 10:18:45 +02:00
Tobias Brunner 2df0d092f0 android: New release after fixing a crash during certificate imports 2016-05-06 12:52:26 +02:00
Tobias Brunner 1130dbc408 android: Avoid IllegalStateException when importing certificates
When certificates are imported via Storage Access Framework we did handle
the selection directly in onActivityResult().  However, at that point the
activity might apparently not yet be resumed.  So committing
FragmentTransactions could result in IllegalStateExceptions due to the
potential state loss.  To avoid that we cache the returned URI and wait
until onPostResume() to make sure the activity's state is fully restored
before showing the confirmation dialog.
2016-05-06 12:51:49 +02:00
Tobias Brunner c962ae2e62 android: New release after reducing number of DH groups in proposal 2016-05-04 12:07:36 +02:00
Tobias Brunner 2b9bfb6682 android: Use separate label strings for text fields in login dialog
In the profile editor the password is now marked as optional in the
label, which looks a bit strange in the login dialog.
2016-05-03 10:43:27 +02:00
Tobias Brunner 3e21168d96 android: New release after GUI changes/additions 2016-05-02 18:50:44 +02:00
Tobias Brunner e69781b1a2 android: Show selected user identity in profile list
This also readds the colons that were removed from the labels.
2016-05-02 18:39:19 +02:00
Tobias Brunner 67fa05aa59 android: Allow selection of user identity in GUI 2016-05-02 18:39:18 +02:00
Tobias Brunner cdcf754f64 android: Add adapter for user ID selection 2016-05-02 18:39:18 +02:00
Tobias Brunner eb507a5a0d android: Add helper function to TrustedCertificateEntry to get subjectAltNames
Duplicates (e.g. with different types) are filtered.  If necessary we
could later perhaps add a prefix.
2016-05-02 18:39:18 +02:00
Tobias Brunner e7a12cc862 android: Add auto-completion to remote ID and profile name
This makes it easy to explicitly use the server's IP/hostname as remote
identity or use it in the profile name.
2016-05-02 18:39:18 +02:00
Tobias Brunner c5fee22305 android: Make remote identity configurable in the GUI 2016-05-02 18:39:18 +02:00
Tobias Brunner be05310e7a android: Use TextInputLayout in login dialog 2016-05-02 18:39:18 +02:00
Tobias Brunner ea15f20a56 android: Use TextInputLayoutHelper in profile editor
This adds floating labels and helper texts to the form fields. It also
changed/added lots of strings in the editor.
2016-05-02 18:39:17 +02:00
Tobias Brunner 79ba4b285f android: Add TextInputLayout child class that displays a helper text below the text field
Also hides the error message if the text is changed.
2016-05-02 18:39:17 +02:00
Tobias Brunner 5ffd79b39b android: Use proper namespace for custom attribute 2016-05-02 18:39:17 +02:00
Tobias Brunner fd23ed8cf3 android: Move profile name field to the bottom and use server address as hint 2016-05-02 18:39:17 +02:00
Tobias Brunner 4a58ec24fd android: Use configured local identity in auth-cfgs
We still default to the username or subject DN if none is configured.
But we don't check if the local ID is contained in the configured
certificate.
2016-05-02 18:39:17 +02:00
Tobias Brunner 8b3bf4a4f8 android: Use configured remote ID in auth-cfg
If one is explicitly set we don't use loose identity matching and send it as
IDr to the server.

Closes #strongswan/strongswan#29.
Fixes #1268.
2016-05-02 18:38:44 +02:00
Tobias Brunner 9c55644158 android: Pass local and remote identities as settings of a connection 2016-05-02 18:38:15 +02:00
Tobias Brunner 89149dbb5f android: Add fields for local and remote identities to data model 2016-05-02 18:38:15 +02:00
Tobias Brunner 7ab8ec7ad0 android: Avoid races between FragmentManager and state saving
onSaveInstanceState is apparently called after pausing the fragment and after
that committing any FragmentTransactions causes an IllegalStateException.
We could use commitAllowingStateLoss() but that's not really necessary
as we don't need to update when we are not active anyway.  We also don't
update the view directly after registration as this happens
asynchronously, i.e. we might be paused when it finishes.
2016-05-02 18:38:15 +02:00
Tobias Brunner 73a6bec3fc android: Increase the NAT-T keepalive interval to potentially save battery life
In case this doesn't work out we could probably make it configurable.

References #1326.
2016-05-02 18:38:08 +02:00
Tobias Brunner 44c8580ebe android: Show confirmation dialog also when connecting 2016-05-02 18:35:04 +02:00