Commit Graph

13423 Commits

Author SHA1 Message Date
Andreas Steffen d6fb2cc6e3 Merged libpts into libimcv 2014-10-05 12:55:37 +02:00
Andreas Steffen c4d0987609 Added out message queue for imv_msg receive method 2014-10-05 12:55:37 +02:00
Andreas Steffen e911ac9a5f Implemented IF-M segmentation 2014-10-05 12:55:37 +02:00
Andreas Steffen 89d12654b3 Added request variable to get_info_string method 2014-10-03 22:25:09 +02:00
Andreas Steffen f50968976b Implemented IF-M segmentation contracts 2014-10-03 22:25:09 +02:00
Andreas Steffen 38b5f527e2 Allow to treat specified Attribute-Type-Not-Supported errors as non-fatal 2014-10-03 22:25:09 +02:00
Tobias Brunner 030295dd44 testing: Updated swanctl certificates and keys 2014-10-03 12:50:08 +02:00
Tobias Brunner 12e9ed12ec testing: Wait a bit in swanctl scenarios before interacting with the daemon 2014-10-03 12:44:14 +02:00
Tobias Brunner e9028462c8 testing: Actually build swanctl 2014-10-03 12:44:14 +02:00
Tobias Brunner 722a8a177e testing: Make sure the whitelist plugin is ready before configuring it 2014-10-03 12:44:14 +02:00
Tobias Brunner 09f1fb82f9 testing: Update PKCS#12 containers 2014-10-03 12:44:13 +02:00
Tobias Brunner 079c797421 testing: Update PKCS#8 keys 2014-10-03 12:44:13 +02:00
Tobias Brunner 9f5fd7899e testing: Update public keys in DNSSEC scenarios
The tests are successful even if the public keys are not stored locally,
but an additional DNS query is required to fetch them.
2014-10-03 12:44:13 +02:00
Tobias Brunner 1bab64e7cb testing: Update public keys and certificates in DNS zone 2014-10-03 12:44:13 +02:00
Tobias Brunner 2c7ad260f9 testing: Update carols certificate in several test cases 2014-10-03 12:44:13 +02:00
Martin Willi 7ab320def3 testing: Add some notes about how to reissue attribute certificates 2014-10-03 12:31:01 +02:00
Martin Willi 16469e8474 testing: Reissue attribute certificates for the new holder certificates
Due to the expired and reissued holder certificates of carol and dave, new
attribute certificates are required to match the holder certificates serial in
the ikev2/acert-{cached,fallback,inline} tests.
2014-10-03 12:28:11 +02:00
Shea Levy 90fe4b3f8a starter: Allow specifying the ipsec.conf location in strongswan.conf 2014-10-02 14:33:08 +02:00
Shea Levy 213e02b872 stroke: Allow specifying the ipsec.secrets location in strongswan.conf 2014-10-02 14:31:00 +02:00
Shea Levy 5fea45506e library: Allow specifying the path to strongswan.conf in the STRONGSWAN_CONF env var 2014-10-02 14:28:01 +02:00
Shea Levy 0efea2fd86 Don't fail to install if sysconfdir isn't writable 2014-09-26 10:52:37 +02:00
Martin Willi 55e85387bb ikev1: Be more verbose if a peer config would match, but is unusable for Mode 2014-09-25 17:21:54 +02:00
Tobias Brunner 9e3ab0d114 ikev2: Reorder task activation for established IKE SAs
We now prefer MOBIKE tasks over delete tasks then the rest.
2014-09-25 10:16:45 +02:00
Tobias Brunner b3a7ba14f1 Revert "ikev2: Insert MOBIKE tasks at the front of the queue"
This reverts commit 3293d14628.

The position of tasks in the queue does not actually determine the order
in which they are activated.  Instead this is determined by the
statements in task_manager_v2_t.initiate().
2014-09-25 10:16:45 +02:00
Martin Willi 0c8c965ca1 Merge branch 'curl-features'
Enable missing https:// support in the curl plugin by initializing libcurl
appropriately.

To initialize the SSL backend properly as required, we rely on our specific
crypto backends (openssl, gcrypt) that already provide this functionality.

Fixes #692.
2014-09-24 17:37:13 +02:00
Martin Willi ab23a0f86a travis: Disable soup in "all" test
On Ubuntu 12.04, there seems to be a resource leak related to pthread keys
when initializing glib or related libraries more than once. With our repeated
initialization for libstrongswan tests, we hit the following error:

  Lib (gthread-posix.c): Unexpected error from C library during
  'pthread_key_create': Resource temporarily unavailable.

The problem is not reproducible on a newer Gnome stack, hence we disable the
glib based soup plugin until we have a more recent Ubuntu on Travis.
2014-09-24 17:35:16 +02:00
Martin Willi a336aefa89 curl: For SSL features, depend on thread-safety provided by our crypto plugins
To use SSL in curl, we need to initialize the SSL library in a thread-safe
manner and provide the appropriate callbacks. As we already do that in our
crypto plugins using these libraries, we depend on these features.

This implies that we need the same plugin enabled (openssl, gcrypt) as the
curl backend is configured to use to fetch from HTTPS URIs.
2014-09-24 17:35:16 +02:00
Martin Willi 44b6a34d43 configure: Load fetcher plugins after crypto base plugins
Some fetcher plugins (such as curl) might build upon OpenSSL to implement
HTTPS fetching. As we set (and can't unset) threading callbacks in our
openssl plugin, we must ensure that OpenSSL functions don't get called after
openssl plugin unloading.

We achieve that by loading curl and all other fetcher plugins after the base
crypto plugins, including openssl.
2014-09-24 17:34:54 +02:00
Martin Willi d717b42b51 curl: Dynamically query supported protocols and register appropriate features 2014-09-24 11:35:59 +02:00
Martin Willi 6eaec1e349 leak-detective: Whitelist libssl SSL_COMP_get_compression_methods()
This function is called by libcurl initialization with SSL, and uses
a static allocation of compression algorithms not freed.
2014-09-24 11:35:59 +02:00
Martin Willi 85c95db17a curl: Try to initialize with SSL support to handle https:// URIs
If initialization fails, we fall back to the old behavior.
2014-09-24 11:35:59 +02:00
Martin Willi dcdcae0159 NEWS: Introduce charon-systemd 2014-09-24 11:35:03 +02:00
Martin Willi b3accbe2cb Merge branch 'netlink-cleanups'
In preparation for larger parallelization changes in kernel-netlink, this
merge does some general code cleanup in that plugin.
2014-09-24 11:20:53 +02:00
Martin Willi 5ea627bdfa watcher: Add a method to query the watcher state
This allows a user to check if the watcher is actually running, and potentially
perform read operations directly instead of relying on watcher.
2014-09-24 11:19:59 +02:00
Martin Willi 12c0bde689 kernel-netlink: Define and use rtnetlink message types 2014-09-24 11:19:59 +02:00
Martin Willi c94e93a7ab kernel-netlink: Pass protocol specific enum names to socket constructor
This avoid the hard dependency on enum names, and makes kernel_netlink_shared
independent of kernel_netlink_ipsec.
2014-09-24 11:19:59 +02:00
Martin Willi 5957e76b38 kernel-netlink: Clean up socket initialization, handle 0 as valid socket fd 2014-09-24 11:19:59 +02:00
Martin Willi 4c3aca273f kernel-netlink: Clean up response buffer management 2014-09-24 11:19:59 +02:00
Martin Willi de11d34abb kernel-netlink: Use recv() instead of recvfrom()
As we are not interested in the returned address, there is really no need
in passing that argument.
2014-09-24 11:19:59 +02:00
Martin Willi 4c438cf099 kernel-netlink: Avoid casting the NLMSG_DATA() return value
There is really no need for doing so, and it makes the code just unreadable.
2014-09-24 11:19:59 +02:00
Martin Willi 0404a29bfe kernel-netlink: Define netlink buffer as an union having a netlink header
This allows us to streamline the netlink buffers, and avoid extensive
casting.
2014-09-24 11:19:58 +02:00
Martin Willi 6fe02dda75 Merge branch 'systemd'
Introduces a systemd specific charon-systemd IKE daemon based on libcharon.
Uses systemd APIs for startup control and journal logging and a new systemd
service unit using swanctl as configuration backend.
2014-09-24 11:17:29 +02:00
Martin Willi 575d3ab19a travis: Disable build of native systemd IKE daemon
Travis still uses Ubuntu 12.04, where no systemd libraries are available. Skip
systemd support on Travis until we have a more recent Ubuntu distribution.
2014-09-22 14:19:38 +02:00
Martin Willi c59fad9dbd man: Skip installation of ipsec.conf/secrets manpages when not building starter 2014-09-22 14:19:38 +02:00
Martin Willi a3d03b4c71 init: Update starter systemd service to distinguish it from strongswan-swanctl 2014-09-22 14:19:38 +02:00
Martin Willi 0097141858 init: Provide a service file for charon-systemd using swanctl 2014-09-22 14:19:38 +02:00
Martin Willi b2f76c514d systemd: Check if ./configure detected a systemd system unit directory 2014-09-22 14:19:38 +02:00
Martin Willi db8ae75bf6 systemd: Discover and check systemd libraries with pkg-config during configure 2014-09-22 14:19:38 +02:00
Martin Willi e2d9f27c19 systemd: Add a native systemd journal logger 2014-09-22 14:19:37 +02:00
Martin Willi 5421092b75 plugin-loader: Support a reload() callback for static features 2014-09-22 13:55:12 +02:00