Commit Graph
100 Commits
Author SHA1 Message Date
Tobias Brunner 952487d689 pluto: Migrated raw_eroute to libhydra's kernel interface.
This introduces a new struct to pass the protocol information like spis.
Also adapted eroute_connection and the simple calls of raw_eroute to
the new signature.
2010-09-02 19:04:20 +02:00
Tobias Brunner deea15f04e pluto: Added a function to create a traffic_selector_t from an ip_subnet. 2010-09-02 19:04:20 +02:00
Tobias Brunner 230aa11fb4 pluto: Migrated update_ipsec_sa to libhydra's kernel interface. 2010-09-02 19:04:20 +02:00
Tobias Brunner 1ad497c78f pluto: Functions to convert IKEv1 ESP algos to IKEv2 identifiers added. 2010-09-02 19:04:20 +02:00
Tobias Brunner 7dd0c17cd4 pluto: Refactored IKEv2/IKEv1 crypto algorithm conversion functions. 2010-09-02 19:04:20 +02:00
Tobias Brunner 6da26f3008 Do not overwrite the original mode when installing policies.
The mode is later used to decide if a route has to be installed.
2010-09-02 19:04:20 +02:00
Tobias Brunner afc4505e11 pluto: Removed KLIPS specific algorithm detection. 2010-09-02 19:04:19 +02:00
Tobias Brunner 54f42e350e pluto: Removed KLIPS specific bare shunt scanning. 2010-09-02 19:04:19 +02:00
Tobias Brunner 749d3cccaf Added support for different policy types in kernel_netlink plugin. 2010-09-02 19:04:19 +02:00
Tobias Brunner bd7a2f3bfc Added an option to specify the type of a policy to kernel_ipsec.add_policy.
This will later allow us to support pluto's passthrough and drop
policies in charon.
2010-09-02 19:04:19 +02:00
Tobias Brunner 6a066ad19b pluto: Migrated get_my_cpi to libhydra's kernel interface. 2010-09-02 19:04:19 +02:00
Tobias Brunner 89f0cca111 pluto: Migrated get_ipsec_spi to libhydra's kernel interface. 2010-09-02 19:04:19 +02:00
Tobias Brunner 55be07a15f Added support for combined IPComp/ESP/AH policies in kernel_netlink plugin. 2010-09-02 19:04:19 +02:00
Tobias Brunner b4872c1e09 Replaced the protocol argument in add_policy with an optional SPI for an AH SA. 2010-09-02 19:04:19 +02:00
Tobias Brunner c5fb6882f2 Initialize the thread pool in pluto. 2010-09-02 19:04:19 +02:00
Tobias Brunner bb381e26c6 Refer to scheduler and processor via lib and not hydra. 2010-09-02 19:04:18 +02:00
Tobias Brunner e18556e9e9 Moved scheduler and thread pool to libstrongswan. 2010-09-02 19:04:18 +02:00
Tobias Brunner 062a602216 Moved all kernel plugins to libhydra. 2010-09-02 19:01:26 +02:00
Tobias Brunner 08c0d340b8 Moved ipsec_transform_t to kernel_ipsec.h in libhydra.
Because of this libfreeswan, pluto, starter etc. now depend on that
file (and libhydra). This resolved some duplicate declarations.
2010-09-02 19:01:25 +02:00
Tobias Brunner f6659688ab Refer to kernel interface via hydra and not charon. 2010-09-02 19:01:25 +02:00
Tobias Brunner 6f449d2efd Moved kernel interface to libhydra. 2010-09-02 19:01:25 +02:00
Tobias Brunner 9f166d9ac2 Removed references to protocol_id_t from kernel interface.
Instead we use the actual IP protocol identifier (the conversion now happens in
child_sa_t and kernel_handler_t).
2010-09-02 19:01:25 +02:00
Tobias Brunner 9d94174242 Migrated child_sa_t to INIT/METHOD macros. 2010-09-02 19:01:25 +02:00
Tobias Brunner ba26508d05 Moved roam job creation to kernel event handler. 2010-09-02 19:01:25 +02:00
Tobias Brunner 61e8e73206 Refer to scheduler via hydra and not charon. 2010-09-02 19:01:24 +02:00
Tobias Brunner 8c387909eb Moved scheduler_t to libhydra. 2010-09-02 19:01:24 +02:00
Tobias Brunner 4e258e63c3 Moved migrate job creation to kernel event handler. 2010-09-02 19:01:24 +02:00
Tobias Brunner 01563352e8 Moved update SA job creation to kernel event handler. 2010-09-02 19:01:24 +02:00
Tobias Brunner a22853b302 Moved delete/rekey CHILD_SA job creation to kernel event handler. 2010-09-02 19:01:24 +02:00
Tobias Brunner 81f6ec276b Moved acquire job creation to kernel event handler. 2010-09-02 19:01:23 +02:00
Tobias Brunner 09ae31f13a Added kernel event handler stub. 2010-09-02 19:01:23 +02:00
Tobias Brunner f7f3d87ed7 All kernel listener hooks are optional. 2010-09-02 19:01:23 +02:00
Tobias Brunner c560ddeb25 Added listener handling to kernel interface. 2010-09-02 19:01:23 +02:00
Tobias Brunner bd50254ca9 Added an interface for kernel event listeners. 2010-09-02 19:01:23 +02:00
Tobias Brunner 1989c75e9e Some minor comment fixes. 2010-09-02 19:01:23 +02:00
Tobias Brunner 211943be23 Some whitespace and code style fixes. 2010-09-02 19:01:23 +02:00
Tobias Brunner 74f15e9320 Do not include files from libcharon in libhydra. 2010-09-02 19:01:22 +02:00
Tobias Brunner 07500cda69 Move callback_job_t to libhydra. 2010-09-02 19:01:22 +02:00
Tobias Brunner 222a64d892 Fixing Doxygen groups after moving processor. 2010-09-02 19:01:22 +02:00
Tobias Brunner c5f7146b17 Refer to processor via hydra and not charon. 2010-09-02 19:01:22 +02:00
Tobias Brunner 633fbe4fde Move processor_t (thread-pool) to libhydra. 2010-09-02 19:01:22 +02:00
Tobias Brunner 64d24679df Corrected some URLs. 2010-08-31 14:46:53 +02:00
Tobias Brunner 9b698a771c Enable the generation of unencrypted messages (e.g. ME connectivity checks). 2010-08-30 17:25:12 +02:00
Tobias Brunner 2402dee177 Port floating patch partially reversed.
If MOBIKE is enabled, we do have to switch to port 4500 with the
IKE_AUTH request, that is, before we know whether the other peer
actually supports MOBIKE or not.
2010-08-30 14:54:31 +02:00
Tobias Brunner 277f02ce9e Slightly refactored port floating.
In case of MOBIKE, only float to port 4500 if the other peer actually supports MOBIKE.
2010-08-30 13:42:58 +02:00
Tobias Brunner 0433b4172b Typo in doxygen comment fixed. 2010-08-30 10:49:32 +02:00
Tobias Brunner fde2d34d0f Fixed ME after introduction of AEAD wrapper. 2010-08-30 10:48:09 +02:00
Tobias Brunner cb7a0cef48 Fixed documentation of XAUTH in ipsec.secrets. 2010-08-26 10:25:08 +02:00
Tobias Brunner 6432669fa2 Added support for early and late calls to Vstr wrappers.
That is, prevent a SIGSEGV if Vstr wrappers are called before printf_hook_t
is initialized and after it is destroyed.
2010-08-10 13:00:20 +02:00
Tobias Brunner fa9f101345 Properly initialize libstrongswan in _copyright.
This is required if libvstr is used.
2010-08-06 19:56:42 +02:00
Tobias Brunner 7c3dd613d7 Added missing Vstr wrappers for asprintf. 2010-08-06 19:56:42 +02:00
Tobias Brunner edb82ab8ae Some Doxygen fixes. 2010-08-05 11:53:53 +02:00
Tobias Brunner 744b83c7c9 Fixed loading of secrets with IDs.
Since the ID string is manually terminated by a null character, write
permission is required for the mmapped ipsec.secrets.
2010-08-04 16:03:46 +02:00
Tobias Brunner dca2d89209 Fixed loading of private keys without password.
The chunk storing the password was not correctly initialized, resulting
in a segmentation fault when no password was specified in ipsec.secrets.
2010-08-04 14:22:48 +02:00
Tobias Brunner 83628fd600 Accept EAP_ONLY_AUTHENTICATION notifies from any client, now that IANA allocated an ID. 2010-08-04 12:58:53 +02:00
Tobias Brunner 12549bedea IKEv2 notification types updated. 2010-08-04 10:06:00 +02:00
Tobias Brunner f8029ca3f9 test_cert adapted to extended signature of get_encoding(). 2010-08-03 19:00:56 +02:00
Tobias Brunner 56bceda7b5 Fixed compiler warnings. 2010-08-03 19:00:46 +02:00
Tobias Brunner dcb4651d8c apidoc is actually a directory not a file. 2010-07-12 15:28:55 +02:00
Tobias Brunner af7b34b13b Added missing pool parameter in DHCP attribute provider. 2010-07-12 12:27:49 +02:00
Tobias Brunner f395f28e44 Added missing markt_t in load tester, also migrated to INIT/METHOD macros. 2010-07-06 09:29:18 +02:00
Tobias Brunner 83b23011de Some Doxygen fixes. 2010-07-05 15:04:30 +02:00
Tobias Brunner 8f7e8e075a Fixed typo. 2010-07-05 14:53:56 +02:00
Tobias Brunner 43ab542b66 Disable EAP-GTC on Android.
The EAP-GTC plugin does not compile due to its dependency on PAM.
2010-07-05 09:40:26 +02:00
Tobias Brunner c177076b50 Enabling some EAP plugins on Android. 2010-06-30 10:02:15 +02:00
Tobias Brunner 5430d6ab3c The x509 plugin is not needed anymore on Android, using OpenSSL. 2010-06-30 10:01:16 +02:00
Tobias Brunner 0f21ebc81d The signature of keystore_get changed again.
With Android 2.2 (Froyo) the interface of keystore_get was changed once
again. The change was made to allow the keys to contain \0 characters.
2010-06-28 17:18:53 +02:00
Tobias Brunner 6f52d3b077 Compiler warning fixed. 2010-06-28 08:50:30 +02:00
Tobias Brunner c0914c457b Increased the loglevel for the arguments received via Android control socket. 2010-06-24 14:46:25 +02:00
Tobias Brunner e9e2a4fecf Terminate charon from the Android plugin if the tunnel goes down after it was initiated successfully. 2010-06-24 14:30:06 +02:00
Tobias Brunner 7913a74c36 Initiate the tunnel in the Android plugin asynchronously.
Also track its initiation using the registered listener.
2010-06-24 14:30:05 +02:00
Tobias Brunner 8b775e99ea Implement the listener_t interface in the Android plugin to track the status of an SA. 2010-06-24 14:30:05 +02:00
Tobias Brunner 94ec9adc10 Helper function added to notify the Android frontend about status changes. 2010-06-24 14:30:05 +02:00
Tobias Brunner 024dd37fa0 Initiate consumes a child_sa reference, so get an additional one. 2010-06-24 14:30:05 +02:00
Tobias Brunner 5eb9eeb130 Use the same error code constants as in the Java frontend. 2010-06-24 14:30:05 +02:00
Tobias Brunner 359063caf7 Flush and destroy the send queue before unloading the socket plugins. 2010-06-24 14:30:05 +02:00
Tobias Brunner 9eb7f46b3d Do not install routes in the PF_KEY kernel interface if interface lookup failed. 2010-06-23 11:43:31 +02:00
Tobias Brunner a427e98da1 The signature of keystore_get was changed with Android 2.x. 2010-06-22 16:19:55 +02:00
Tobias Brunner f283520faf Avoid a segmentation fault if opening the Android control socket failed. 2010-06-22 16:18:22 +02:00
Tobias Brunner 61c950d9aa OpenSSL in Android 2.1+ lacks Elliptic Curve and ENGINE support.
Unfortunately, opensslconf.h was not changed accordingly.
2010-06-22 16:15:10 +02:00
Tobias Brunner c03ed4835c Allow to enable the kernel-pfkey plugin via Android.mk. 2010-06-22 16:14:14 +02:00
Tobias Brunner b7900d3258 Fixing the PF_KEY kernel interface on Android.
In Android's in.h IPPROTO_COMP is not #defined but just an enum member.
2010-06-22 16:12:07 +02:00
Tobias Brunner 1e3d66f8d3 Fixing compilation of the OpenSSL plugin if ENGINE support is disabled.
That is, enable compilation if OpenSSL was configured with
OPENSSL_NO_ENGINE.
2010-06-22 11:55:34 +02:00
Tobias Brunner 5a367e99c3 Fixing compilation of the OpenSSL plugin if Elliptic Curve support is disabled.
That is, enable compilation if OpenSSL was configured with
OPENSSL_NO_EC.
2010-06-22 11:55:33 +02:00
Tobias Brunner 9b6db5cd2e Fixed plugin checks in Android.mk files. 2010-06-22 10:40:34 +02:00
Tobias Brunner 4f9b82bc1d Fixed compiler warning. 2010-06-15 19:58:59 +02:00
Tobias Brunner 499af811c0 Use vpn.dns* to store DNS servers (Android manages net.dns* using these). 2010-06-15 19:58:58 +02:00
Tobias Brunner be00d219cc Adding an interface that interacts with the Android Settings frontend. 2010-06-15 19:58:58 +02:00
Tobias Brunner c373f14947 Adding an Android specific credential set. 2010-06-15 19:58:58 +02:00
Tobias Brunner 51a00fb275 Adding an Android specific logger. 2010-06-15 19:58:58 +02:00
Tobias Brunner 946be4d357 Adding support for the native Linux capabilities interface.
Note that this interface is deprecated and mainly added to support
Android. Use libcap, if possible.
2010-06-15 19:58:30 +02:00
Tobias Brunner b77e493bea Explicitly refer to LIBCAP in Makefiles. 2010-06-15 19:57:31 +02:00
Tobias Brunner 404960e522 Run as vpn user on Android. 2010-06-15 19:57:31 +02:00
Tobias Brunner b02a03a5dd Truncate the PID file so that even if we fail to unlink it, the daemon can be restarted properly. 2010-06-15 19:57:14 +02:00
Tobias Brunner 4e9d313ff8 Explicitly include stdint.h for UINT64_MAX.
This is required on FreeBSD 8.
2010-06-15 15:31:46 +02:00
Tobias Brunner ed76b21652 Check for SADB_X_NAT_T_NEW_MAPPING in PF_KEY kernel interface.
FreeBSD 8 does not support SADB_X_NAT_T_NEW_MAPPING whereas Linux and
the previous FreeBSD NAT-T patch both do.
2010-06-15 15:31:10 +02:00
Tobias Brunner 668e84d904 Set the ports of all hosts installed via the PF_KEY kernel interface to zero. 2010-06-15 10:11:57 +02:00
Tobias Brunner 2e8a5e12ef Adding a basic unit test for hashtable_t. 2010-06-07 16:40:32 +02:00
Tobias Brunner b2ddaf0775 Adding a remove_at method to the hash table.
This allows to remove key-value pairs while enumerating them.
2010-06-07 16:36:26 +02:00
Tobias Brunner 88b6f14143 Migrated hashtable_t to INIT/METHOD macros. 2010-06-07 15:53:36 +02:00