Commit Graph
32 Commits
Author SHA1 Message Date
Tobias Brunner 42af3b4cce unit-tests: Add tests for CHILD_SA rekeying/deletion collisions 2016-06-17 18:48:03 +02:00
Tobias Brunner 62a2567b06 unit-tests: Add asserts against job scheduling 2016-06-17 18:48:03 +02:00
Tobias Brunner cdbf942889 ikev2: Use CHILD_REKEYED for replaced CHILD_SAs after rekeying
This allows handling collisions better, in particular with deletions.
2016-06-17 18:48:03 +02:00
Tobias Brunner b79beba518 unit-tests: Add asserts against task queues of IKE_SAs 2016-06-17 18:48:03 +02:00
Tobias Brunner fa098aa97c unit-tests: Add unit tests for basic CHILD_SA rekeying 2016-06-17 18:48:02 +02:00
Tobias Brunner 14588d99a4 unit-tests: Add asserts against ike|child_rekey hooks 2016-06-17 18:48:02 +02:00
Tobias Brunner 5d7f03dcaa unit-tests: Match in and outbound SPIs in SA asserts
Since we use unique sequential SPIs that should be OK.
2016-06-17 18:48:02 +02:00
Tobias Brunner dda5aab0f4 unit-tests: Register nonce generator and make first nonce byte configurable 2016-06-17 18:48:02 +02:00
Tobias Brunner c1289eb578 unit-tests: Add mock nonce generator
We don't make the full nonces configurable but only the first byte,
which should be enough to force a nonce to be smaller than others.
2016-06-17 18:48:02 +02:00
Tobias Brunner fbb0b3cb0a unit-tests: Make message asserts more flexible 2016-06-17 18:48:02 +02:00
Tobias Brunner 32cfe1e00c unit-tests: Add another CHILD_SA delete collision 2016-06-17 18:48:02 +02:00
Tobias Brunner 7e5424868d unit-tests: Register mock DH implementation as static plugin feature 2016-06-17 18:48:02 +02:00
Tobias Brunner 1f73a74be0 unit-tests: Add mock DH implementation that's basically a noop
If the openssl plugin is built DH isn't that much of an overhead as
ecp256 is used, but the default MODP group is now modp3072.
2016-06-17 18:48:01 +02:00
Tobias Brunner 29f1637b9a unit-tests: Make IKE SPIs predictable 2016-06-17 18:48:01 +02:00
Tobias Brunner 5d97e5c30f unit-tests: Call methods on IKE_SAs in their context 2016-06-17 18:48:01 +02:00
Tobias Brunner 33e2620b8c unit-tests: Add a unit test for CHILD_SA DELETE collisions 2016-06-17 18:48:01 +02:00
Tobias Brunner 632ba2a21e unit-tests: Add asserts against hooks on listener_t and messages captured there 2016-06-17 18:48:01 +02:00
Tobias Brunner 735b0cdd01 unit-tests: Add asserts against SAs (e.g. their states) 2016-06-17 18:48:01 +02:00
Tobias Brunner d3c4d55391 unit-tests: Add separate test runner to test IKEv2 exchanges
This allows proper initialization of the daemon and the helper object.
2016-06-17 18:48:01 +02:00
Tobias Brunner c7f5259cde unit-tests: Add helper class/object to test IKE exchanges 2016-06-17 18:48:01 +02:00
Tobias Brunner 7a5dd544f6 unit-tests: Add mock kernel_ipsec_t implementation for unit tests
Provides predictable sequential SPIs.
2016-06-17 18:48:01 +02:00
Tobias Brunner 87539617f1 unit-tests: Add mock sender_t implementation for unit testing
This allows to retrieve packets sent by an IKE_SA and pass it to another
IKE_SA directly via process_message().
2016-06-17 18:48:01 +02:00
Tobias Brunner 3b50e6fc3e unit-tests: Don't unload plugins before calling libcharon_deinit()
libcharon_deinit() already calls all the functions we called manually.
Unloading the plugins will not work if charon->initialize() is called
as charon's static plugin features would already be unloaded before the
destroyed members are accessed in destroy() to flush them.
2016-06-17 18:48:01 +02:00
Andreas Steffen b12c53ce77 Use standard unsigned integer types 2016-03-24 18:52:48 +01:00
Tobias Brunner 28649f6d91 libhydra: Remove empty unused library 2016-03-03 17:36:11 +01:00
Tobias Brunner 834bf7ca5f ike-cfg: Add unit tests for ike_cfg_get_family() helper 2015-07-27 12:08:45 +02:00
Martin Willi 98aa6aa344 unit-tests: Add a IKEv2 message encryption test case
It uses the ChaCha20Poly1305 test vectors from
draft-ietf-ipsecme-chacha20-poly1305-06.
2015-07-12 13:54:03 +02:00
Martin Willi ee9f691915 unit-tests: Forward variable argument list in TEST_SUITE_DEPEND
For some plugin features, such as crypters or AEADs, we have some additional
feature arguments, such as the key size.
2015-07-12 13:25:50 +02:00
Martin Willi 88d90c7b4b unit-tests: Load libstrongswan plugins in libcharon tests 2015-07-12 13:25:50 +02:00
Martin Willi 22e6a06b8c mem-pool: Pass the remote IKE address, to re-acquire() an address during reauth
With make-before-break IKEv2 re-authentication, virtual IP addresses must be
assigned overlapping to the same peer. With the remote IKE address, the backend
can detect re-authentication attempts by comparing the remote host address and
port. This allows proper reassignment of the virtual IP if it is re-requested.

This change removes the mem-pool.reassign_online option, as it is obsolete now.
IPs get automatically reassigned if a peer re-requests the same address, and
additionally connects from the same address and port.
2015-02-20 13:34:57 +01:00
Martin Willi 751363275f attributes: Move the configuration attributes framework to libcharon 2015-02-20 13:34:55 +01:00
Martin Willi 1f29cd2c5d libcharon: Add a test runner 2015-02-20 13:34:55 +01:00