Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | android: Migrate to the Gradle build system | Tobias Brunner | 2015-11-12 | 1 | -706/+0 |
| | | | | | This uses a manual way to trigger the NDK build (the default with on-the-fly Android.mk files does not work for us). | ||||
* | android: Add a custom kernel-net implementation to replace kernel-netlink | Tobias Brunner | 2015-07-28 | 1 | -20/+2 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When roaming from a mobile network to WiFi on Android 5.x the event received via ConnectivityManager is triggered before the mobile connection is fully torn down (i.e. before the interface is disabled and the routes disappear). So for strongSwan the current path still seems valid and since no roam event is triggered later the daemon never switches to WiFi and the connection is broken afterwards. A possible solution to this is enabling roam events in the kernel-netlink plugin. That would trigger an event when the device is finally disconnected from the mobile network. However, this could actually take a some time, during which traffic continues to be sent via mobile network instead of WiFi. That's because Android now uses multiple routing tables, routing rules and fwmarks to direct traffic to the appropriate interface/table, but in our plugin we don't have the information available that would allow us to make the switch to a different network/routing table earlier (and we actually prefer the current path if it is still valid). Additionally, the plugin produces quite a bit more events than ConnectivityManager (which was one of the reasons to use the latter in the first place). This custom kernel-net implementation is now specifically tailored for Android. Roam events are still triggered via ConnectivityManager but the source address is determined via connect()/getsockname() on a VPN excluded UDP socket, which does use the correct routing table as intended by Android. That way the daemon immediately sees a different source IP when connectivity changes even if the device is connected to multiple networks concurrently. | ||||
* | android: Apply configured MTU | Tobias Brunner | 2015-07-28 | 1 | -3/+8 |
| | | | | | | While it is stored as property of individual profiles it is really a global setting because we currently don't support more than one connection. | ||||
* | android: Set preferred language for remediation instructions | Tobias Brunner | 2015-07-28 | 1 | -0/+4 |
| | |||||
* | android: Encode connection settings as single Java string argument | Tobias Brunner | 2015-07-28 | 1 | -15/+10 |
| | | | | This makes adding new configuration settings easier. | ||||
* | android: Enable charon.initiator_only option | Tobias Brunner | 2015-07-28 | 1 | -0/+2 |
| | |||||
* | attributes: Move the configuration attributes framework to libcharon | Martin Willi | 2015-02-20 | 1 | -4/+4 |
| | |||||
* | android: Increase fragment size | Tobias Brunner | 2014-11-06 | 1 | -0/+3 |
| | | | | We use the same value we use as MTU on TUN devices. | ||||
* | plugin-loader: Support a reload() callback for static features | Martin Willi | 2014-09-22 | 1 | -2/+2 |
| | |||||
* | android: Remove unused hash argument from getTrustedCertificates() | Tobias Brunner | 2014-07-22 | 1 | -2/+2 |
| | |||||
* | android: Don't limit number to packets during EAP-TTLS | Tobias Brunner | 2014-02-18 | 1 | -0/+2 |
| | |||||
* | libcharon: Remove unused charon->name | Tobias Brunner | 2014-02-12 | 1 | -1/+1 |
| | |||||
* | libhydra: Remove unused hydra->daemon | Tobias Brunner | 2014-02-12 | 1 | -1/+1 |
| | |||||
* | lib: Add global config namespace | Tobias Brunner | 2014-02-12 | 1 | -1/+1 |
| | |||||
* | android: Properly handle failures while initializing charon | Tobias Brunner | 2013-09-23 | 1 | -6/+7 |
| | |||||
* | android: Use a different set of plugins if BYOD features are enabled | Tobias Brunner | 2013-07-08 | 1 | -5/+18 |
| | |||||
* | android: Handle and store IETF remediation instructions | Tobias Brunner | 2013-07-08 | 1 | -0/+32 |
| | |||||
* | android: Add state of IMC to VpnStateService and update it via JNI | Tobias Brunner | 2013-07-08 | 1 | -0/+25 |
| | |||||
* | android: Added a Java part to the Android IMC | Tobias Brunner | 2013-07-08 | 1 | -9/+10 |
| | |||||
* | android: Don't attempt loading IMCs from /etc/tnc_config | Tobias Brunner | 2013-07-08 | 1 | -0/+2 |
| | |||||
* | android: Added a sample IMC that sends some dummy OS data | Tobias Brunner | 2013-07-08 | 1 | -3/+27 |
| | |||||
* | android: Disable listening on IPv6 | Tobias Brunner | 2013-07-05 | 1 | -0/+4 |
| | | | | | As we have to use UDP encapsulation and the Linux kernel currently does not support that this avoids issues with dual-stack gateways. | ||||
* | plugin-loader: Add method to print loaded plugins on a given log level | Tobias Brunner | 2013-06-21 | 1 | -0/+1 |
| | |||||
* | android: Ignore interface 'lo' | Tobias Brunner | 2013-05-03 | 1 | -2/+4 |
| | | | | | Android adds a default route via 'lo' if no connectivity is available causing charon to send packets via lo and triggering DPD. | ||||
* | android: Repurpose android-net to simply handle connectivity events | Tobias Brunner | 2013-05-03 | 1 | -1/+12 |
| | | | | | | Using the events by NetworkManager/ConnectivityManager to trigger roam events instead of the events generated by the kernel-netlink plugin the noise level is much lower. | ||||
* | android: Replace android-net plugin with kernel-netlink | Tobias Brunner | 2013-05-03 | 1 | -2/+7 |
| | | | | | Virtual IPs are not handled by the kernel-netlink plugin and tun devices are ignored. | ||||
* | android: Set strongswan.conf options before initializing other libraries | Tobias Brunner | 2013-05-03 | 1 | -36/+44 |
| | |||||
* | android: Properly handle exceptions when loading keys/certificates | Tobias Brunner | 2012-11-21 | 1 | -3/+3 |
| | |||||
* | Reload logger configuration on SIGHUP | Tobias Brunner | 2012-10-18 | 1 | -22/+14 |
| | | | | | | Besides changing the configuration this allows to easily rotate log files. Also moved logger initialization back to daemon_t. | ||||
* | Make syslog and file loggers configurable at runtime | Tobias Brunner | 2012-10-18 | 1 | -13/+3 |
| | |||||
* | android: Use a shorter timeout for retransmits | Tobias Brunner | 2012-10-18 | 1 | -1/+1 |
| | |||||
* | android: Bypass/protect previously bypassed sockets if connectivity changes | Tobias Brunner | 2012-10-16 | 1 | -3/+25 |
| | |||||
* | android: Register NetworkManager as BroadcastReceiver and relay events via JNI | Tobias Brunner | 2012-10-16 | 1 | -1/+1 |
| | |||||
* | android: Determine source address dynamically | Tobias Brunner | 2012-10-16 | 1 | -9/+19 |
| | |||||
* | android: Added a method to get the user's private key via JNI | Tobias Brunner | 2012-09-24 | 1 | -1/+36 |
| | |||||
* | android: Native parts handle ikev2-cert VPN type | Tobias Brunner | 2012-08-31 | 1 | -6/+2 |
| | |||||
* | android: Added JNI method to retrieve user certificate and private key | Tobias Brunner | 2012-08-31 | 1 | -13/+58 |
| | | | | | To simplify things the private key, the user certificate and the CA certificates are all put into the same list. | ||||
* | android: Pass the type of VPN to the native parts | Tobias Brunner | 2012-08-31 | 1 | -4/+7 |
| | |||||
* | Charon logs to a file in the App's data directory | Tobias Brunner | 2012-08-13 | 1 | -1/+36 |
| | |||||
* | Moved Java to C string conversion function to android_jni header file | Tobias Brunner | 2012-08-13 | 1 | -19/+4 |
| | |||||
* | Log charon version and uname() output, split libcharon and charon initialization | Tobias Brunner | 2012-08-13 | 1 | -2/+20 |
| | |||||
* | Don't set the source address on Android | Tobias Brunner | 2012-08-13 | 1 | -0/+9 |
| | |||||
* | Close IKE_SA on Android immediately if setting up CHILD_SA fails | Tobias Brunner | 2012-08-13 | 1 | -0/+2 |
| | |||||
* | Reduce number of retransmits on Android | Tobias Brunner | 2012-08-13 | 1 | -0/+9 |
| | |||||
* | An Android specific attribute handler installs DNS servers via Builder | Tobias Brunner | 2012-08-13 | 1 | -0/+12 |
| | |||||
* | Native counterpart of VpnService.Builder added, exposed by charonservice | Tobias Brunner | 2012-08-13 | 1 | -3/+18 |
| | |||||
* | Initiate an SA via native JNI method | Tobias Brunner | 2012-08-13 | 1 | -0/+63 |
| | |||||
* | Added an Android specific credential set that provides CA certificates via JNI | Tobias Brunner | 2012-08-13 | 1 | -0/+29 |
| | |||||
* | CharonVpnService provides a function to get trusted certificates via JNI | Tobias Brunner | 2012-08-13 | 1 | -0/+48 |
| | |||||
* | Function added that allows to update VPN state via JNI | Tobias Brunner | 2012-08-13 | 1 | -0/+25 |
| |