Commit Graph
100 Commits
Author SHA1 Message Date
Tobias Brunner 42a69b05ab String for ENCRYPTED_DATA fixed. 2012-03-20 17:30:46 +01:00
Tobias Brunner 780ce7724d Strings for ENCRYPTED_V1 payload added. 2012-03-20 17:30:46 +01:00
Tobias Brunner d66199884f Set flags on message according to IKE version when parsing header. 2012-03-20 17:30:46 +01:00
Tobias Brunner c92f2cf36d Encrypt IKEv1 messages. 2012-03-20 17:30:46 +01:00
Tobias Brunner 477e856a15 Decrypt IKEv1 messages. 2012-03-20 17:30:46 +01:00
Tobias Brunner b6f0029497 Added IV generation to keymat_v1_t. 2012-03-20 17:30:46 +01:00
Tobias Brunner 6f5f8ee4b5 Use modified encryption payload to encrypt/decrypt complete IKEv1 messages. 2012-03-20 17:30:46 +01:00
Tobias Brunner 0463674971 Use key derivation in IKEv1 main mode (PSK authentication). 2012-03-20 17:30:46 +01:00
Tobias Brunner aadb9e8355 Added a simple AEAD wrapper for IKEv1 encryption/decryption. 2012-03-20 17:30:46 +01:00
Tobias Brunner b05d91edd7 Added IKEv1 key derivation with support for AUTH_CLASS_PSK. 2012-03-20 17:30:45 +01:00
Tobias Brunner 3d59c5c382 Update cached hosts on ike_sa_t when processing IKEv1 messages. 2012-03-20 17:30:45 +01:00
Tobias Brunner 0cec72df40 Provide keymat_t to message_t to encrypt/decrypt data. 2012-03-20 17:30:45 +01:00
Tobias Brunner 50d493808c Avoid compiler warnings due to extended enums. 2012-03-20 17:30:45 +01:00
Tobias Brunner a0563846b0 Moved version specific keymat functions to specific interfaces. 2012-03-20 17:30:45 +01:00
Tobias Brunner 043ed1b346 Memory leak fixed. 2012-03-20 17:30:43 +01:00
Tobias Brunner 273f2f8054 Added factory function to create task_manager_t implementations. 2012-03-20 17:30:43 +01:00
Tobias Brunner 4b64a1a17d Added factory function to create keymat_t implementations. 2012-03-20 17:30:43 +01:00
Tobias Brunner 0b611540ef Store IKE version of an SA on ike_sa_t. 2012-03-20 17:30:43 +01:00
Tobias Brunner 0fc9acdd23 Added stub for IKEv1 keymat_t implementation. 2012-03-20 17:30:42 +01:00
Tobias Brunner 6ab936f046 Use keymat_t as common interface, renamed current implementation to _v2. 2012-03-20 17:30:42 +01:00
Tobias Brunner f7a8fcedc0 Use enum to define IKE version on peer_cfg_t.
Replaced all those magic numbers.
2012-03-20 17:30:41 +01:00
Tobias Brunner 3238faf8e6 Fix init message arrival check. 2012-03-20 17:30:41 +01:00
Tobias Brunner 354ac9579f Compile error fixed. 2012-03-20 17:30:41 +01:00
Tobias Brunner 7f56cf1a65 Message parsing slightly refactored, allows parsing of unencrypted IKEv1 messages. 2012-03-20 17:30:40 +01:00
Tobias Brunner 4ed52db2bb Allow creation of message_t objects for IKEv1 packets. 2012-03-20 17:30:40 +01:00
Tobias Brunner 8a2d079d78 Certificate request payloads can be sent in pretty much any IKEv1 message. 2012-03-20 17:30:40 +01:00
Tobias Brunner 8f3aea2f77 Message rules for IKEv1 INFORMATIONAL exchange added.
Since INFORMATIONAL "exchanges" are actually unidirectionally sent
message we don't have any responder rules.
2012-03-20 17:30:40 +01:00
Tobias Brunner 130c9a54c2 Message rules for IKEv1 AGGRESSIVE exchange added.
These are basically the same as for ID_PROT but no payloads are expected
to be encrypted (at least if using PSK or signatures for authentication).
2012-03-20 17:30:40 +01:00
Tobias Brunner 6ba70ba8dd Message rules for IKEv1 ID_PROT exchange added.
These rules are quite broad and cover main mode with at least PSK and
signature based authentication.
2012-03-20 17:30:40 +01:00
Tobias Brunner fdb8421f36 Typo fixed. 2012-03-20 17:30:40 +01:00
Tobias Brunner ccdd3a4cee Added configure option for the IKEv1 implementation in charon. 2012-03-20 17:30:39 +01:00
Tobias Brunner 856baca23e Fixed monolithic build of libcharon with libtnccs enabled. 2011-11-08 18:35:11 +01:00
Tobias Brunner 59c5f048bb Correctly refer to tnc-tnccs plugin when building monolithically. 2011-11-08 18:35:11 +01:00
Tobias Brunner b12ad862c1 Calculate checksums for libsimaka and libtls.
These are currently not checked though. And because they don't define a
<libname>_init function an warning is reported when the checksum is
calculated.
2011-11-08 18:35:11 +01:00
Tobias Brunner 89bad63bac Defer calculation of checksums until installation.
The checksum is now calculated from the installed libraries and plugins.
This allows to calculate checksums for plugins linking to libraries like
libtls as these are relinked during installation.
2011-11-08 18:35:11 +01:00
Tobias Brunner 4ad67fe7d5 Fixed formatting for longer plugin names in checksum_builder output. 2011-11-08 18:35:11 +01:00
Tobias Brunner 9192f78f70 Don't link libtnccs to checksum_builder.
Linking is only required for libraries defining global symbols used by
plugins to which the plugins do not link themselves.
2011-11-08 18:35:11 +01:00
Tobias Brunner 48e87e12ab Revert "fixed integrity tests of plugins using libtls or libtnccs"
This reverts commit b597ac4a4c (not
completely).
2011-11-08 18:35:11 +01:00
Tobias Brunner e034cc9ca9 Revert "fixed integrity tests of plugins using libsimaka"
This reverts commit 8c42f16dee.

Conflicts:

	src/charon/Makefile.am
2011-11-08 18:35:11 +01:00
Tobias Brunner 9b6502ade8 maemo: New upstream release. 2011-11-08 18:35:11 +01:00
Tobias Brunner 866858527d Fix 'ipsec pool --status' for empty pools. 2011-11-04 15:07:54 +01:00
Tobias Brunner 39b30518c2 Syntax error in sqlite.sql fixed. 2011-11-04 14:37:22 +01:00
Tobias Brunner 5fd8e53002 Some Android NEWS added. 2011-11-04 12:24:16 +01:00
Tobias Brunner 2e94a02115 Don't build pluto and starter by default on Android. 2011-11-04 12:20:21 +01:00
Tobias Brunner 051226d5c0 Silently install route again, even if it did not change.
Address/interface changes can cause the route to disappear. Afterwards
the route might look the same but that does not mean it is still installed.
2011-11-04 11:11:17 +01:00
Tobias Brunner 25d59e9e2d Compile warning fixed in kernel interfaces. 2011-11-04 11:11:17 +01:00
Tobias Brunner f3eef176f4 Common spelling errors fixed. 2011-11-03 19:30:17 +01:00
Tobias Brunner 602ee58e45 NEWS about pkcs11 plugin added. 2011-11-03 18:39:57 +01:00
Tobias Brunner 53e2fc690e pkcs11: Documented use_pubkey option in strongswan.conf(5). 2011-11-03 18:36:34 +01:00
Tobias Brunner 1bdd255ed3 pkcs11: Make public key operations on tokens optional. 2011-11-03 17:56:40 +01:00
Tobias Brunner 5b85b94e27 pkcs11: Make sure a key can be used for a given signature scheme. 2011-11-02 20:27:55 +01:00
Tobias Brunner 58d0a8d49b pkcs11: Register ECDSA feature. 2011-11-02 20:27:55 +01:00
Tobias Brunner fd48b220ed pkcs11: We have to create our own hashes for some signature schemes. 2011-11-02 20:27:55 +01:00
Tobias Brunner 30a3ede8ce pkcs11: Lookup the public key of a private key by CKA_ID.
Currently this only works if a public key object with the same ID is
available, if there isn't one we could search for a certificate with the
same ID and extract the key from there.
2011-11-02 20:27:55 +01:00
Tobias Brunner 5d2fccf439 pkcs11: Search for private keys in a more generic way.
Also, don't extract the public key directly from the private key. Some
tokens actually do not return the public exponent (it's not required).
We have to find a different way to get the public key.
2011-11-02 20:27:55 +01:00
Tobias Brunner 9e3b1e1495 pkcs11: Added support to encode ECDSA public keys. 2011-11-02 20:27:55 +01:00
Tobias Brunner 36d1627f6e pkcs11: Parse ECDSA public keys and find/create them on tokens. 2011-11-02 20:27:55 +01:00
Tobias Brunner 574261163f pkcs11: Added generic functions to find/create public keys on tokens. 2011-11-02 20:27:55 +01:00
Tobias Brunner a8084ee011 pkcs11: Store public key length in bits. 2011-11-02 20:27:55 +01:00
Tobias Brunner 8859c1f26b pkcs11: Fix encoding of RSA public keys. 2011-11-02 20:27:55 +01:00
Tobias Brunner dae19d448d pkcs11: Use create_object_attr_enumerator to encode RSA public key. 2011-11-02 20:27:54 +01:00
Tobias Brunner b0319fe860 pkcs11: Instead of a mutex use a new session to do multipart operations. 2011-11-02 20:27:54 +01:00
Tobias Brunner c198525104 pkcs11: Function added to retrieve multiple attributes from a single object. 2011-11-02 20:27:54 +01:00
Tobias Brunner 817d165cbc pkcs11: Memory leak fixed in DH/ECDH implementation. 2011-11-02 20:27:54 +01:00
Tobias Brunner 43cd036a77 pkcs11: Invalid free fixed in DH/ECDH implementation. 2011-11-02 20:27:54 +01:00
Tobias Brunner 50ad6eacb6 pkcs11: Changed how pkcs11-manager is initialized.
The manager is now created directly, but events and certificate loading
is deferred.
2011-11-02 20:27:54 +01:00
Tobias Brunner cf9d45ea08 pkcs11: Add attributes to specify what we use the DH/ECDH keys for. 2011-11-02 20:27:54 +01:00
Tobias Brunner b7b5bca048 pkcs11: Allow to build pkcs11 plugin on Android. 2011-10-31 18:55:27 +01:00
Tobias Brunner 1a9e3e0147 pkcs11: Documented new options in strongswan.conf(5). 2011-10-31 18:50:10 +01:00
Tobias Brunner b3b3613c60 pkcs11: Register the pkcs11 plugin before any other crypto plugins.
This is what most users probably expect when they enable the pkcs11
plugin.  All advanced features (like DH/RNG) are disabled by default.
2011-10-31 18:46:16 +01:00
Tobias Brunner 23b50b776b pkcs11: Use callback registration for pkcs11-manager.
Otherwise a plugin providing X509 decoding capabilities might be unloaded
before the manager which will result in a segmentation fault when
certificates in the manager's credential sets are to be destroyed.
2011-10-31 18:45:37 +01:00
Tobias Brunner 10b82be61f pkcs11: Merged the ECDH into the DH implementation. 2011-10-31 18:45:37 +01:00
Tobias Brunner 89de89be57 pkcs11: Use get_ck_attribute for ECDH. 2011-10-31 18:45:37 +01:00
Tobias Brunner cac6853180 pkcs11: Use get_ck_attribute for DH. 2011-10-31 18:45:37 +01:00
Tobias Brunner 8531106578 pkcs11: Method added to library to extract a single attribute from an object. 2011-10-31 18:45:36 +01:00
Tobias Brunner 6a5020fc67 pkcs11: Added names for CKA_* constants. 2011-10-31 18:45:36 +01:00
Tobias Brunner 4e346b1f97 pkcs11: Added support for ECDH. 2011-10-31 18:45:36 +01:00
Tobias Brunner 612e431305 pkcs11: Added definitions needed for ECDH to pkcs11.h. 2011-10-31 18:45:36 +01:00
Tobias Brunner 7c78a6e631 pkcs11: Specify object class and key type when deriving DH secrets.
pkcs11_softtoken on OpenSolaris requires this (probably others too).
2011-10-31 18:45:36 +01:00
Tobias Brunner b730fd6fbd pkcs11: Add features support. 2011-10-31 18:45:36 +01:00
Tobias Brunner 1bb5d7c3cb pkcs11: Added support for DH. 2011-10-31 18:45:36 +01:00
Tobias Brunner df241121fd pkcs11: Error message fixed. 2011-10-31 18:45:35 +01:00
Tobias Brunner 1bb522bc34 pkcs11: Added support to generate random numbers on a token. 2011-10-31 18:45:35 +01:00
Tobias Brunner deba3da5b0 pkcs11: Properly destroy mutex in pkcs11_hasher if no token found. 2011-10-31 18:45:29 +01:00
Tobias Brunner abb89a97d1 Some Doxygen fixes. 2011-10-28 21:24:52 +02:00
Tobias Brunner 075c706073 Copyright fixed. 2011-10-28 21:07:35 +02:00
Tobias Brunner 54ce738920 pluto: Compile warning fixed. 2011-10-27 15:42:44 +02:00
Tobias Brunner 3b8ed73708 pluto: plugin_list.* added to Android.mk. 2011-10-27 15:42:10 +02:00
Tobias Brunner 07bf080e6d Added missing backslash. 2011-10-27 15:41:30 +02:00
Tobias Brunner 4683630442 Forgot to add Android.mk in ba5b559b41. 2011-10-26 18:31:34 +02:00
Tobias Brunner 8fde0b669b Destroy objects hashtable after plugin_manager.
If plugins are not explicitly unloaded before library_deinit is called
there could have been a segfault because some plugins might unregister
objects during unloading/destruction.
2011-10-26 17:39:12 +02:00
Tobias Brunner 87c65e76fc Don't link to tnc libraries on Android as no tnc plugins are currently enabled. 2011-10-25 11:57:00 +02:00
Tobias Brunner ba5b559b41 Build libtnccs on Android. 2011-10-25 11:56:26 +02:00
Tobias Brunner 5d549cd4e1 Log if charon failed to establish a CHILD_SA but keeps the IKE_SA up. 2011-10-21 18:09:02 +02:00
Tobias Brunner 848a36fed7 starter.load documented in strongswan.conf(5) man page. 2011-10-21 17:30:39 +02:00
Tobias Brunner bb3357e886 starter: Android.mk updated to use kernel-netlink via libhydra. 2011-10-21 14:24:34 +02:00
Tobias Brunner adab84533e starter: Use kernel interfaces to flush SAD and SPD.
This now supports platforms where neither 'ip xfrm' nor 'setkey' are
available (like Android).
2011-10-21 14:24:34 +02:00
Tobias Brunner f3a682c1ff starter: Load plugins specific to starter. 2011-10-21 14:24:34 +02:00
Tobias Brunner d19eaf7457 starter: INFO_FILE is not used anymore. 2011-10-21 14:24:34 +02:00
Tobias Brunner 677955e9d4 The load-tester plugin does not support SAD/SPD flushing. 2011-10-21 14:24:33 +02:00