Commit Graph
940 Commits
Author SHA1 Message Date
Tobias Brunner ea022bb194 android: Add fragment that displays a single remediation instruction 2013-07-08 18:49:29 +02:00
Tobias Brunner c469cd2a66 android: RemediationInstruction implements Parcelable interface 2013-07-08 18:49:29 +02:00
Tobias Brunner 2b91085701 android: Background for state panels provides separator 2013-07-08 18:49:29 +02:00
Tobias Brunner e5bf6dcddc android: Add fragment that displays the IMC state
The fragment hides itself if the state is unknown or the assessment
succeeded.
2013-07-08 18:49:29 +02:00
Tobias Brunner a05acd7629 android: Handle and store IETF remediation instructions 2013-07-08 18:49:28 +02:00
Tobias Brunner 0484989dbd android: Add a parser for XML remediation instructions 2013-07-08 18:49:28 +02:00
Tobias Brunner a8dc42b295 android: Show different error message depending on IMC state 2013-07-08 18:49:28 +02:00
Tobias Brunner 5e7a4193e5 android: Clear error only when the user explicitly dismisses the dialog
The previous code worked fine on rotation changes as the fragment is
destroyed and recreated causing onCreate to be called, which restores the
saved error state.  But if the user switches to a different application
and then back this is not the case.  The dialog still gets dismissed (as
we have to do so to avoid nasty exceptions on rotation changes) but since
that implicitly cleared the error state the UI was never fully restored.
2013-07-08 18:49:28 +02:00
Tobias Brunner dc52cfab73 android: Add state of IMC to VpnStateService and update it via JNI 2013-07-08 18:49:28 +02:00
Tobias Brunner d087f080f0 android: Handle TCG file measurement related attributes using PTS 2013-07-08 18:49:28 +02:00
Tobias Brunner fd3aa004e4 android: Android IMC state provides a Platform Trust Service (PTS) instance 2013-07-08 18:49:28 +02:00
Tobias Brunner 0e53beda32 android: Provide a public interface for Android IMC state 2013-07-08 18:49:28 +02:00
Tobias Brunner 403165102c android: Define IMC functions static and with lower-case names 2013-07-08 18:49:28 +02:00
Tobias Brunner 583fe0ccb6 android: Add measurement collector for ITA Device ID 2013-07-08 18:49:28 +02:00
Tobias Brunner 44330a171f android: Add measurement collector for ITA Settings 2013-07-08 18:49:27 +02:00
Tobias Brunner c179a3f6f2 android: Handle ITA PA-TNC attributes 2013-07-08 18:49:27 +02:00
Tobias Brunner 036fa7a166 android: Overload for getMeasurement() that takes a String array as argument 2013-07-08 18:49:27 +02:00
Tobias Brunner ba59486fc8 android: Add measurement collector for Port Filter
This collector reports all listening TCP and UDP sockets/ports.
2013-07-08 18:49:27 +02:00
Tobias Brunner 6500727d6a android: Enum type for transport protocols added 2013-07-08 18:49:27 +02:00
Tobias Brunner 7cb8f570ed android: Add measurement collector for Installed Packages 2013-07-08 18:49:27 +02:00
Tobias Brunner 2d61172314 android: Add measurement collector for Product Information 2013-07-08 18:49:27 +02:00
Tobias Brunner 75d710ec63 android: Also support writing of 24-bit values 2013-07-08 18:49:27 +02:00
Tobias Brunner 5c9706f30b android: Add measurement collector for String Version 2013-07-08 18:49:27 +02:00
Tobias Brunner 4eec7912a1 android: Interfaces for measurement collectors and attributes added 2013-07-08 18:49:27 +02:00
Tobias Brunner 2d378d8a74 android: Add a Java utility class similar to bio_writer_t 2013-07-08 18:49:27 +02:00
Tobias Brunner 28c268d707 android: Add enum types for PENs and attribute types 2013-07-08 18:49:26 +02:00
Tobias Brunner c53210f9b0 android: Add a generic handler for PA-TNC attribute requests
The idea is that the Android IMC will return attributes in their binary
encoding.  This keeps the JNI interface to the IMC pretty simple.
2013-07-08 18:49:26 +02:00
Tobias Brunner aa4ff3b211 android: Added a Java part to the Android IMC 2013-07-08 18:49:26 +02:00
Tobias Brunner 753035f6d7 android: Don't attempt loading IMCs from /etc/tnc_config 2013-07-08 18:49:26 +02:00
Tobias Brunner a6507df2ec android: Build libpts and init/deinit libpts in BYOD IMC 2013-07-08 18:49:26 +02:00
Tobias Brunner 96658d7264 android: Added a sample IMC that sends some dummy OS data 2013-07-08 18:49:26 +02:00
Tobias Brunner 933155fae6 android: Build option added to load BYOD related plugins and libraries in the Android app 2013-07-08 18:49:26 +02:00
Tobias Brunner 0015727ebd android: Disable listening on IPv6
As we have to use UDP encapsulation and the Linux kernel currently does
not support that this avoids issues with dual-stack gateways.
2013-07-05 09:48:27 +02:00
Tobias Brunner 607f8e9906 plugin-loader: Add method to print loaded plugins on a given log level 2013-06-21 15:17:53 +02:00
Tobias Brunner 92f102c21b android: Forward initiator flag to libipsec when adding IPsec SA 2013-06-13 13:55:58 +02:00
Martin Willi a8c9454423 kernel-interface: add an exchange initiator parameter to add_sa()
This new flag gives the kernel-interface a hint how it should priorize the
use of newly installed SAs during rekeying.

Consider the following rekey procedure in IKEv2:

Initiator  ---    Responder

I1 -------CREATE-------> R1
I2 <------CREATE--------
   -------DELETE-------> R2
I3 <------DELETE--------

SAs are always handled as pairs, the following happens at the SA level:

  * Initiator starts the exchange at I1
  * Responder installs new SA pair at R1
  * Initiator installs new SA pair at I2
  * Responder removes old SA pair at R2
  * Initiator removes old SA pair at I3

This makes sure SAs get installed/removed overlapping during rekeying. However,
to avoid any packet loss, it is crucial that the new outbound SA gets
activated at the correct position:

  * as exchange initiator, in I2
  * as exchange responder, in R2

This should guarantee that we don't use the new outbound SA before the peer
could install its corresponding inbound SA.

The new parameter allows the kernel backend to install the new SA with
appropriate priorities, i.e. it should:

  * as exchange inititator, have the new outbound SA installed with higher
    priority than the old SA
  * as exchange responder, have the new outbound SA installed with lower
    priority than the old SA

While we could split up the SA installation at the responder, this approach
has another advantage: it allows the kernel backend to switch SAs based on
other criteria, for example when receiving traffic on the new inbound SA.
2013-06-11 15:58:48 +02:00
Martin Willi 5c12700f9a kernel-interface: query SAD for last use time if SPD query didn't yield one 2013-05-06 17:01:13 +02:00
Martin Willi 0be946dce3 Use the GEN silent rule when generating files with sed 2013-05-06 15:04:56 +02:00
Tobias Brunner 55321dcfb6 New Android release after adding AES-GCM, IPv6-in-IPv4 and using kernel-netlink
libipsec now supports AES-GCM, IPv6 tunnels over IPv4 are supported,
native x86 libraries are built (requires a new Vstr build script).
Also, the existing kernel-netlink plugin now provides the kernel-net
implementation, which should be more stable in case multiple interfaces
are up and have IP addresses installed on them.
2013-05-03 16:02:39 +02:00
Tobias Brunner 740aedfec1 android: Use stronger ESP proposal including AES-GCM 2013-05-03 16:02:39 +02:00
Tobias Brunner 61fb3267b2 android: Remove unused methods on NetworkManager/network_manager_t 2013-05-03 15:11:20 +02:00
Tobias Brunner 70dfac4459 android: Ignore interface 'lo'
Android adds a default route via 'lo' if no connectivity is available
causing charon to send packets via lo and triggering DPD.
2013-05-03 15:11:20 +02:00
Tobias Brunner 18dab76bfa android: Repurpose android-net to simply handle connectivity events
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.
2013-05-03 15:11:20 +02:00
Tobias Brunner 3b7f25906e android: Replace android-net plugin with kernel-netlink
Virtual IPs are not handled by the kernel-netlink plugin and tun devices are
ignored.
2013-05-03 15:11:19 +02:00
Tobias Brunner 67332b4e22 android: Set strongswan.conf options before initializing other libraries 2013-05-03 15:11:19 +02:00
Tobias Brunner 24b5e71522 android: No need to disable CMS explicitly
The version check introduced with 0d237763 should take care of it.
2013-03-20 17:02:37 +01:00
Tobias Brunner 29d93e2470 android: Build native libraries also for x86
Requires an updated build script for Vstr.
2013-03-20 15:24:27 +01:00
Tobias Brunner e5d819b617 android: Remove/filter header files from LOCAL_SRC_FILES
This avoids huge warnings when building the native code.
2013-03-20 15:24:26 +01:00
Tobias Brunner 8249f288f2 android: Request and install an IPv6 DNS server 2013-03-20 15:24:26 +01:00
Tobias Brunner ee66565d43 android: Also request a virtual IPv6 address and propose IPv6 TS
This allows IPv6 over IPv4 but falls back nicely if we don't get a
virtual IPv6 (or IPv4) address.
2013-03-20 15:24:26 +01:00