3 years agotravis: Bump tpm2-tss to 2.3.1
Tobias Brunner [Thu, 26 Sep 2019 09:50:46 +0000 (11:50 +0200)]
travis: Bump tpm2-tss to 2.3.1

3 years agowolfssl: Fixes for building with OpenSSL compatibility layer
David Garske [Tue, 24 Sep 2019 18:38:36 +0000 (11:38 -0700)]
wolfssl: Fixes for building with OpenSSL compatibility layer

Resolves conflicts with building against wolfSSL when
`--enable-opensslextra` is set, namely the `WOLFSSL_HMAC_H_`,
`RNG` and `ASN1_*` name conflicts.

Closes strongswan/strongswan#151.

3 years agoopenssl: Don't manually seed DRBG with OpenSSL 1.1.1
Tobias Brunner [Thu, 12 Sep 2019 14:15:46 +0000 (16:15 +0200)]
openssl: Don't manually seed DRBG with OpenSSL 1.1.1

According to the documentation, it's generally not necessary to manually
seed OpenSSL's DRBG (and it actually can cause the daemon to lock up
during start up on systems with low entropy if OpenSSL is already trying
to seed it itself and holds the lock).  While that might already have been
the case with earlier versions, it's not explicitly stated in their
documentation.  So we keep the code for these versions.

3 years agotravis: Bump OpenSSL to 1.1.1d
Tobias Brunner [Tue, 10 Sep 2019 14:33:18 +0000 (16:33 +0200)]
travis: Bump OpenSSL to 1.1.1d

3 years agodaemon: Correctly re-register custom loggers in set_level()
Tobias Brunner [Fri, 20 Sep 2019 12:13:56 +0000 (14:13 +0200)]
daemon: Correctly re-register custom loggers in set_level()

Fixes: 2080c7e1e232 ("charon: Add custom logger to daemon")
Fixes #3182.

3 years agocharon-nm: Move D-Bus conf file to $(datadir)/dbus-1/system.d
worldofpeace [Mon, 16 Sep 2019 16:11:21 +0000 (12:11 -0400)]
charon-nm: Move D-Bus conf file to $(datadir)/dbus-1/system.d

Since D-Bus 1.9.18 configuration files installed by third-party should
go in share/dbus-1/system.d. The old location is for sysadmin overrides.

Closes strongswan/strongswan#150.

3 years agoconf: Fix typo in documentation of charon.rdn_matching
Tobias Brunner [Tue, 3 Sep 2019 08:26:29 +0000 (10:26 +0200)]
conf: Fix typo in documentation of charon.rdn_matching

Fixes #3165.

3 years agoVersion bump to 5.8.1 5.8.1
Andreas Steffen [Mon, 2 Sep 2019 12:39:16 +0000 (14:39 +0200)]
Version bump to 5.8.1

3 years agoVersion bump to 5.8.1rc2 5.8.1rc2
Andreas Steffen [Thu, 29 Aug 2019 09:15:18 +0000 (11:15 +0200)]
Version bump to 5.8.1rc2

3 years agoVersion bump to 5.8.1rc1
Andreas Steffen [Wed, 28 Aug 2019 14:30:24 +0000 (16:30 +0200)]
Version bump to 5.8.1rc1

3 years agoFixed some typos, courtesy of codespell
Tobias Brunner [Wed, 28 Aug 2019 12:03:41 +0000 (14:03 +0200)]
Fixed some typos, courtesy of codespell

3 years agoNEWS: Added some news for 5.8.1
Tobias Brunner [Wed, 28 Aug 2019 10:17:44 +0000 (12:17 +0200)]
NEWS: Added some news for 5.8.1

3 years agoikev2: Check the length of received COOKIE notifies
Tobias Brunner [Tue, 27 Aug 2019 16:32:32 +0000 (18:32 +0200)]
ikev2: Check the length of received COOKIE notifies

As specified by RFC 7296, section 2.6, the data associated with COOKIE
notifications MUST be between 1 and 64 octets in length (inclusive).

Fixes #3160.

3 years agolibipsec: Fix compiler warning with GCC 9
Tobias Brunner [Wed, 28 Aug 2019 07:53:19 +0000 (09:53 +0200)]
libipsec: Fix compiler warning with GCC 9

The compiler complains that "taking address of packed member ... of
class or structure 'ip6_hdr' may result in an unaligned pointer value".
We don't care if the address is aligned as we explicitly use untoh16()
to convert the read value.

3 years agocirrus: Run automated tests on FreeBSD via Cirrus CI
Tobias Brunner [Tue, 27 Aug 2019 16:22:33 +0000 (18:22 +0200)]
cirrus: Run automated tests on FreeBSD via Cirrus CI

3 years agoFix issue with $< automatic variable on FreeBSD
Tobias Brunner [Fri, 23 Aug 2019 07:40:59 +0000 (09:40 +0200)]
Fix issue with $< automatic variable on FreeBSD

BSD make only evaluates $< for implicit rules, so building from the
repository won't work unless GNU make is installed and used, or we
replace affected uses like this.

3 years agoMerge branch 'android-updates'
Tobias Brunner [Mon, 26 Aug 2019 09:28:43 +0000 (11:28 +0200)]
Merge branch 'android-updates'

Some fixes for Android 9 (28) and other issues.  Also migrated to

Closes strongswan/strongswan#148.

3 years agoandroid: Avoid crash related to TileService on Huawei devices
Tobias Brunner [Fri, 16 Aug 2019 15:04:28 +0000 (17:04 +0200)]
android: Avoid crash related to TileService on Huawei devices

No idea when exactly this happens but on many Huawei devices (and
only on them) it seems that onStartListening is sometimes called after
onDestroy i.e. when the database was already closed.  This caused an
InvalidStateException in getProfile via updateTile when retrieving the
current profile.  It's possible that it happens during shutdown (there
have been similar reports related to TileService implementations) so
users might not even notice, but it pollutes the Play Console, so this
workaround now makes sure the database is open when updateTile is called.

3 years agoandroid: Fix null pointer dereference in TextInputLayoutHelper
Tobias Brunner [Tue, 13 Aug 2019 13:26:22 +0000 (15:26 +0200)]
android: Fix null pointer dereference in TextInputLayoutHelper

The AndroidX/Material version of TextInputLayout actually supports a
helper text, but it is always shown, so we continue to use our version.

3 years agoandroid: Replace deprecated Html.fromHtml with version from AndroidX
Tobias Brunner [Tue, 13 Aug 2019 13:37:05 +0000 (15:37 +0200)]
android: Replace deprecated Html.fromHtml with version from AndroidX

3 years agoandroid: Migrate from support libraries to AndroidX
Tobias Brunner [Tue, 13 Aug 2019 13:01:31 +0000 (15:01 +0200)]
android: Migrate from support libraries to AndroidX

The support libraries will not be developed further.

3 years agoandroid: Request FOREGROUND_SERVICE permission
Tobias Brunner [Tue, 13 Aug 2019 12:42:39 +0000 (14:42 +0200)]
android: Request FOREGROUND_SERVICE permission

This is required since API 28 to call Service.startForeground.

3 years agoandroid: Switch to Loaders from the support library
Tobias Brunner [Tue, 13 Aug 2019 12:28:31 +0000 (14:28 +0200)]
android: Switch to Loaders from the support library

They are officially deprecated as of API 28 (recommended replacement is
a combination of ViewModels and LiveData, maybe something to look into

3 years agoandroid: Set compile-/targetSdkVersion to 28
Tobias Brunner [Tue, 13 Aug 2019 12:16:11 +0000 (14:16 +0200)]
android: Set compile-/targetSdkVersion to 28

This is mandatory for new apps since August 1, 2019 and will be for existing
apps in November 1, 2019.

3 years agoandroid: Update Gradle plugin
Tobias Brunner [Tue, 13 Aug 2019 12:07:28 +0000 (14:07 +0200)]
android: Update Gradle plugin

3 years agoidentification: Optionally match RDNs in any order and accept missing RDNs
Tobias Brunner [Thu, 9 May 2019 11:09:40 +0000 (13:09 +0200)]
identification: Optionally match RDNs in any order and accept missing RDNs

3 years agoRun gperf with --output-file instead of output redirection
Martin Willi [Mon, 15 Jul 2019 05:43:06 +0000 (07:43 +0200)]
Run gperf with --output-file instead of output redirection

When missing gperf, the redirection generates an empty file, which must
be manually removed after gperf has been installed. This is difficult
to diagnose, as the produced build error is cryptic.

Use --output-file of gperf instead to avoid creating an empty file if
gperf is missing. This still requires the user to re-run ./configure
after installing gperf, though.

3 years agoupdown: Pass the local interface the traffic to the peer actually takes
Tobias Brunner [Thu, 20 Jun 2019 08:02:21 +0000 (10:02 +0200)]
updown: Pass the local interface the traffic to the peer actually takes

If the local IP is not on the interface the peer is reached through,
firewall rules will be installed with the wrong interface.

Fixes #3095.

3 years agoattributes: Add definition of some additional configuration attributes
Tobias Brunner [Wed, 12 Jul 2017 08:59:41 +0000 (10:59 +0200)]
attributes: Add definition of some additional configuration attributes

3 years agoasn1: Fix a compiler warning with GCC 9.1
Tobias Brunner [Thu, 22 Aug 2019 14:27:19 +0000 (16:27 +0200)]
asn1: Fix a compiler warning with GCC 9.1

Compiling with GCC 9.1, as e.g. happens on AppVeyor, results in the
following warning:

asn1/asn1.c: In function 'asn1_integer':
asn1/asn1.c:871:24: error: '<Ucb40>' may be used uninitialized in this function [-Werror=maybe-uninitialized]
  871 |  len = content.len + ((*content.ptr & 0x80) ? 1 : 0);
      |                        ^~~~~~~~~~~~

Some experiments showed that the problem was the chunk_from_chars()
assignment.  This might be because the temporary chunk_t that was assigned
to the variable was defined in a sub-block, so it might actually be
undefined later when *content.ptr is read.

3 years agoload-tester: Add digitalSignature keyUsage flag to test certificate
Tobias Brunner [Mon, 12 Aug 2019 16:10:06 +0000 (18:10 +0200)]
load-tester: Add digitalSignature keyUsage flag to test certificate

This allows using the certificate, which is technically a CA cert, as
end-entity certificate again after the RFC4945-related changes added
with 5.6.3.

Fixes #3139.

3 years agoSome whitespace fixes
Tobias Brunner [Tue, 9 Jul 2019 15:03:23 +0000 (17:03 +0200)]
Some whitespace fixes

Didn't change some of the larger testing scripts that use an inconsistent
indentation style.

3 years agoAdd an .editorconfig file
Tobias Brunner [Fri, 6 Jul 2018 12:07:55 +0000 (14:07 +0200)]
Add an .editorconfig file

It's currently not possible to configure our indentation scheme for
continuation lines (i.e. use 1-3 spaces to align with the upper line).
There is an issue open regarding this, see [1].  So we can't run e.g.
eclint over our codebase to detect issues without getting a lot of
false positives.

The main trigger was that this sets the preferred tab width in GitHub's
code browser.


References #3111.

3 years agomemory: Use explicit_bzero() as memwipe() if available
Tobias Brunner [Thu, 18 Jul 2019 12:25:32 +0000 (14:25 +0200)]
memory: Use explicit_bzero() as memwipe() if available

3 years agotravis: Bump wolfSSL to 4.1.0 149/head
Tobias Brunner [Mon, 12 Aug 2019 12:25:56 +0000 (14:25 +0200)]
travis: Bump wolfSSL to 4.1.0

3 years agofuzz: Support build with -fsanitize=fuzzer instead of libFuzzer.a
Tobias Brunner [Wed, 17 Jul 2019 09:16:19 +0000 (11:16 +0200)]
fuzz: Support build with -fsanitize=fuzzer instead of libFuzzer.a

Recent clang versions (6.0+) include libFuzzer and OSS-Fuzz switched to
that mode a while ago.

3 years agoUse Botan 2.11.0 for tests
Tobias Brunner [Tue, 2 Jul 2019 07:53:53 +0000 (09:53 +0200)]
Use Botan 2.11.0 for tests

3 years agobotan: Replace deprecated FFI function calls
Tobias Brunner [Tue, 2 Jul 2019 08:47:54 +0000 (10:47 +0200)]
botan: Replace deprecated FFI function calls

Several "wrapper" functions have been marked deprecated with 2.11.0.

3 years agoVersion bump to 5.8.1dr1 5.8.1dr1
Andreas Steffen [Wed, 26 Jun 2019 15:32:33 +0000 (17:32 +0200)]
Version bump to 5.8.1dr1

3 years agolibtpmtss: Protect TPM 2.0 context by mutex
krinfels [Wed, 26 Jun 2019 13:32:29 +0000 (15:32 +0200)]
libtpmtss: Protect TPM 2.0 context by mutex

Each private key object created to access a key residing in a TPM 2.0
creates a context structure used for communication with the TSS.
When multiple IKE SAs are established at the same time and using the
same private key, it is possible to make concurrent calls to the
TSS with the same context which results in multiple threads writing
to the same place in memory causing undefined behaviour.

Fix this by protecting calls to the TSS with a mutex unique for
each TPM 2.0 context object.

3 years agoandroid: Fix remote identity fallback after changing IKE config creation
Tobias Brunner [Tue, 18 Jun 2019 08:22:57 +0000 (10:22 +0200)]
android: Fix remote identity fallback after changing IKE config creation

Fixes: 9486a2e5b0b5 ("ike-cfg: Pass arguments as struct")

3 years agoandroid: Fix typo when building IKE config
Tobias Brunner [Tue, 18 Jun 2019 08:21:07 +0000 (10:21 +0200)]
android: Fix typo when building IKE config

Fixes: 9486a2e5b0b5 ("ike-cfg: Pass arguments as struct")

3 years agotravis: Bump OpenSSL to 1.1.1c
Tobias Brunner [Tue, 28 May 2019 13:28:06 +0000 (15:28 +0200)]
travis: Bump OpenSSL to 1.1.1c

3 years agoAdd compile option to disable internal handling of fatal signals
Sheena Mira-ato [Thu, 21 Mar 2019 03:28:08 +0000 (16:28 +1300)]
Add compile option to disable internal handling of fatal signals

By default, charon and its derivatives internally handle the SIGSEGV,
SIGILL, and SIGBUS signals raised by threads (segv_handler).  Add a compile
option so that the signal handling can optionally be done externally.

Closes strongswan/strongswan#132.

3 years agoikev1: Do a rekey check before installing CHILD_SAs as responder
Tobias Brunner [Thu, 16 May 2019 08:19:15 +0000 (10:19 +0200)]
ikev1: Do a rekey check before installing CHILD_SAs as responder

If CHILD_SAs are created while waiting for the third QM message we'd not
notice the redundancy and updown events would be triggered unevenly.
This is consistent with the behavior on the initiator, which already does
this check right before installation. Moving the existing check is not
possible due to the narrow hook and moving the installation changes which
peer installs the SAs first and could have other side-effects (e.g. in
error or conflict cases).  Still, this might result in CHILD_SA state
discrepancies between the two peers.

Fixes #3060.

3 years agoAvoid enumerating certificates with non-matching key type
SophieK [Tue, 21 May 2019 01:28:21 +0000 (09:28 +0800)]
Avoid enumerating certificates with non-matching key type

If the key type was specified but the ID was NULL or matched a subject, it
was possible that a certificate was returned that didn't actually match
the requested key type.

Closes strongswan/strongswan#141.

3 years agoVersion bump to 5.8.0 5.8.0
Andreas Steffen [Mon, 20 May 2019 10:31:08 +0000 (12:31 +0200)]
Version bump to 5.8.0

3 years agoproposal: Add missing curve448/x448 keywords
Tobias Brunner [Fri, 17 May 2019 15:15:38 +0000 (17:15 +0200)]
proposal: Add missing curve448/x448 keywords

Fixes #3064.

3 years agonm: Version bump to 1.4.5
Tobias Brunner [Tue, 14 May 2019 08:38:12 +0000 (10:38 +0200)]
nm: Version bump to 1.4.5

3 years agoVersion bump to 5.8.0rc1 5.8.0rc1
Andreas Steffen [Fri, 10 May 2019 10:55:48 +0000 (12:55 +0200)]
Version bump to 5.8.0rc1

3 years agotesting: Use strongswan systemd service
Andreas Steffen [Fri, 10 May 2019 10:55:09 +0000 (12:55 +0200)]
testing: Use strongswan systemd service

3 years agotesting: Load PEM keys in ikev2/net2-net-rsa scenario
Andreas Steffen [Fri, 10 May 2019 10:54:28 +0000 (12:54 +0200)]
testing: Load PEM keys in ikev2/net2-net-rsa scenario

3 years agotesting: Copy keys and certs to swanctl/rw-newhope-bliss scenario
Andreas Steffen [Fri, 10 May 2019 10:53:33 +0000 (12:53 +0200)]
testing: Copy keys and certs to swanctl/rw-newhope-bliss scenario

3 years agokeymat_v1: Avoid memory leak during IKE key derivation in some error cases
SophieK [Thu, 9 May 2019 07:20:30 +0000 (15:20 +0800)]
keymat_v1: Avoid memory leak during IKE key derivation in some error cases

Closes strongswan/strongswan#138.

3 years agoMerge branch 'build-certs'
Tobias Brunner [Wed, 8 May 2019 12:57:03 +0000 (14:57 +0200)]
Merge branch 'build-certs'

Adds a script to generate the keys and certificates used for regression
tests dynamically.  They are built with the pki version installed in the
root image so it's not necessary to have an up-to-date version with all
required plugins installed on the host system.

3 years agotesting: Return an error if any command in the certificate build script fails
Tobias Brunner [Wed, 8 May 2019 12:36:27 +0000 (14:36 +0200)]
testing: Return an error if any command in the certificate build script fails

3 years agotesting: Build certificates before guests after building strongSwan
Tobias Brunner [Tue, 7 May 2019 17:21:21 +0000 (19:21 +0200)]
testing: Build certificates before guests after building strongSwan

If the script is run on a clean working copy, building the guests will
fail if the certificates don't exist.

3 years agotesting: Automatically build guest images after generating certificates
Tobias Brunner [Tue, 7 May 2019 17:20:04 +0000 (19:20 +0200)]
testing: Automatically build guest images after generating certificates

This (re-)generates the CRLs on winnetou.

3 years agotesting: Use custom plugin configuration to build SHA-3 CA
Tobias Brunner [Tue, 7 May 2019 17:07:51 +0000 (19:07 +0200)]
testing: Use custom plugin configuration to build SHA-3 CA

3 years agopki: Plugins to load may be defined via PKI_PLUGINS env variable
Tobias Brunner [Tue, 7 May 2019 16:34:49 +0000 (18:34 +0200)]
pki: Plugins to load may be defined via PKI_PLUGINS env variable

3 years agotesting: Fix ikev2/net2net-rsa scenario
Tobias Brunner [Tue, 7 May 2019 14:06:28 +0000 (16:06 +0200)]
testing: Fix ikev2/net2net-rsa scenario

3 years agotesting: Add wrapper script to build certificates in root image
Tobias Brunner [Thu, 18 Apr 2019 13:10:10 +0000 (15:10 +0200)]
testing: Add wrapper script to build certificates in root image

This does not modify the root image but uses the strongSwan version
installed there (avoids build dependencies on version installed on the
host to use pki to generate all the keys and certificates).

3 years agotesting: Upgrade to Linux 5.1 kernel
Andreas Steffen [Mon, 6 May 2019 14:58:44 +0000 (16:58 +0200)]
testing: Upgrade to Linux 5.1 kernel

3 years agopki: Allow inclusion of [unsupported] critical X.509 extension
Andreas Steffen [Mon, 6 May 2019 12:33:49 +0000 (14:33 +0200)]
pki: Allow inclusion of [unsupported] critical X.509 extension

3 years agotesting: Updated build-certs script
Andreas Steffen [Sun, 5 May 2019 16:07:43 +0000 (18:07 +0200)]
testing: Updated build-certs script

3 years agotesting: Deleting dynamic test keys and certificates
Andreas Steffen [Sat, 4 May 2019 13:23:57 +0000 (15:23 +0200)]
testing: Deleting dynamic test keys and certificates

3 years agotesting: Exclude files that are ignored in Git from the distribution
Tobias Brunner [Mon, 29 Apr 2019 12:53:28 +0000 (14:53 +0200)]
testing: Exclude files that are ignored in Git from the distribution

Since the complete hosts and tests directories are part of the tarball
this would include generated certificates and keys.

3 years agotesting: Remove dynamic keys and certs from repository
Andreas Steffen [Sun, 28 Apr 2019 18:39:26 +0000 (20:39 +0200)]
testing: Remove dynamic keys and certs from repository

3 years agotesting: Build data.sql files for SQL test cases
Andreas Steffen [Sun, 28 Apr 2019 15:16:59 +0000 (17:16 +0200)]
testing: Build data.sql files for SQL test cases

3 years agopki: Add different output options for --keyid
Tobias Brunner [Thu, 18 Apr 2019 14:14:16 +0000 (16:14 +0200)]
pki: Add different output options for --keyid

Makes machine-processing these identifiers easier.

3 years agotesting: Build CERT and IPSECKEY RRs for zone
Tobias Brunner [Mon, 15 Apr 2019 16:25:13 +0000 (18:25 +0200)]
testing: Build CERT and IPSECKEY RRs for zone

Also copy generated keys to DNSSEC test cases.

3 years agotesting: Rename public keys in DNSSEC scenarios
Tobias Brunner [Mon, 15 Apr 2019 16:20:20 +0000 (18:20 +0200)]
testing: Rename public keys in DNSSEC scenarios

We will generate PEM-encoded public keys with the script.

3 years agotesting: Convert keys and certificates for all TKM scenarios
Tobias Brunner [Wed, 10 Apr 2019 09:27:11 +0000 (11:27 +0200)]
testing: Convert keys and certificates for all TKM scenarios

3 years agotesting: Disable leak detective in build-certs script
Tobias Brunner [Wed, 10 Apr 2019 07:34:26 +0000 (09:34 +0200)]
testing: Disable leak detective in build-certs script

3 years agotesting: Script building fresh certificates
Andreas Steffen [Mon, 1 Apr 2019 14:21:10 +0000 (16:21 +0200)]
testing: Script building fresh certificates

3 years agosmp: Use correct printf specifier to print SPIs
Tobias Brunner [Tue, 7 May 2019 12:50:11 +0000 (14:50 +0200)]
smp: Use correct printf specifier to print SPIs

3 years agofast: Use correct printf specifier to print content length
Tobias Brunner [Tue, 7 May 2019 12:48:19 +0000 (14:48 +0200)]
fast: Use correct printf specifier to print content length

3 years agolibimcv: Use proper printf specifier for unsigned issuer and responder IDs
Tobias Brunner [Tue, 7 May 2019 12:43:30 +0000 (14:43 +0200)]
libimcv: Use proper printf specifier for unsigned issuer and responder IDs

3 years agoswima-collector: Use proper type for field precision
Tobias Brunner [Tue, 7 May 2019 12:40:58 +0000 (14:40 +0200)]
swima-collector: Use proper type for field precision

3 years agoopenssl: Fix build with OpenSSL 1.1.1 without compatibility layer
Tobias Brunner [Tue, 7 May 2019 09:44:34 +0000 (11:44 +0200)]
openssl: Fix build with OpenSSL 1.1.1 without compatibility layer

If OpenSSL is built with --api, defines for deprecated functions in
OpenSSL's header files are not visible anymore.

Fixes #3045.

3 years agotravis: Build OpenSSL 1.1.1 without compatibility layer for older versions
Tobias Brunner [Tue, 7 May 2019 09:28:29 +0000 (11:28 +0200)]
travis: Build OpenSSL 1.1.1 without compatibility layer for older versions

Configuring 1.1.1 is not actually possible with 1.1.1b, not sure if
that's on purpose.

3 years agotravis: Make sure crypto plugins are actually loaded
Tobias Brunner [Tue, 7 May 2019 11:43:45 +0000 (13:43 +0200)]
travis: Make sure crypto plugins are actually loaded

3 years agostarter: Remove IPsec stack detection
Tobias Brunner [Tue, 7 May 2019 09:03:23 +0000 (11:03 +0200)]
starter: Remove IPsec stack detection

Checking specifically for /proc/net/pfkey is not ideal as af_key will
eventually be removed in Linux kernels.  Support for KLIPS is long gone.
The detection also wasn't used for anything anymore (failures were just
ignored since the ports to BSD-based systems).  And modprobing doesn't seem
to be necessary either (charon-systemd doesn't do that, for instance).

3 years agovici: Add Python command wrappers to tarball
Tobias Brunner [Mon, 6 May 2019 13:51:05 +0000 (15:51 +0200)]
vici: Add Python command wrappers to tarball

Fixes: e0f7da864481 ("vici: Extract command wrappers in Python bindings")

3 years agopki: Fix memory leaks in --signcrl if signature scheme is not found
Tobias Brunner [Tue, 30 Apr 2019 08:25:56 +0000 (10:25 +0200)]
pki: Fix memory leaks in --signcrl if signature scheme is not found

Fixes: dd4bd21c5a22 ("pki: Query private key for supported signature schemes")

3 years agotesting: Update documentation in headers of all updown scripts
Tobias Brunner [Mon, 29 Apr 2019 15:43:04 +0000 (17:43 +0200)]
testing: Update documentation in headers of all updown scripts

3 years agoswanctl: Move documentation of if_id_in/out after all mark-related options
Tobias Brunner [Mon, 29 Apr 2019 15:37:30 +0000 (17:37 +0200)]
swanctl: Move documentation of if_id_in/out after all mark-related options

Also fix a typo.

3 years agoFixed some typos, courtesy of codespell
Tobias Brunner [Mon, 29 Apr 2019 13:07:25 +0000 (15:07 +0200)]
Fixed some typos, courtesy of codespell

3 years agononce: Allow overriding the RNG quality used to generate nonces
Tobias Brunner [Tue, 23 Apr 2019 09:14:44 +0000 (11:14 +0200)]
nonce: Allow overriding the RNG quality used to generate nonces

Usually, changing this won't be necessary (actually, some plugins
specifically use different DRGBs for RNG_WEAK in order to separate
the public nonces from random data used for e.g. DH).
But for experts with special plugin configurations this might be
more flexible and avoids code changes.

3 years agounit-tests: Fix skipping of some ECDSA signature schemes
SophieK [Mon, 29 Apr 2019 06:33:47 +0000 (14:33 +0800)]
unit-tests: Fix skipping of some ECDSA signature schemes

Closes strongswan/strongswan#137.

3 years agoNEWS: Added some news for 5.8.0
Tobias Brunner [Fri, 26 Apr 2019 16:54:58 +0000 (18:54 +0200)]
NEWS: Added some news for 5.8.0

3 years agoMerge branch 'update-vici-bindings'
Tobias Brunner [Fri, 26 Apr 2019 08:19:21 +0000 (10:19 +0200)]
Merge branch 'update-vici-bindings'

Updates the command wrappers in all the bindings and simplifies calling
new commands (i.e. not yet wrapped) with the Python and Ruby bindings.

Fixes #3028.

3 years agovici: Update command wrappers in the Perl bindings
Tobias Brunner [Thu, 25 Apr 2019 09:09:20 +0000 (11:09 +0200)]
vici: Update command wrappers in the Perl bindings

Note that load_key() now returns the complete response (to get the key

3 years agovici: Update some data in the Ruby gemspec
Tobias Brunner [Thu, 25 Apr 2019 08:26:11 +0000 (10:26 +0200)]
vici: Update some data in the Ruby gemspec

3 years agovici: Some code style fixes in the Ruby bindings
Tobias Brunner [Wed, 24 Apr 2019 16:05:11 +0000 (18:05 +0200)]
vici: Some code style fixes in the Ruby bindings

As reported by rubocop (some issues were not fixed, in particular
related to class/method length metrics).

3 years agovici: Update command wrappers of the Ruby bindings
Tobias Brunner [Wed, 24 Apr 2019 14:37:11 +0000 (16:37 +0200)]
vici: Update command wrappers of the Ruby bindings

Also reorder them to match

3 years agovici: Refactor how commands are called in the Ruby bindings
Tobias Brunner [Wed, 24 Apr 2019 14:05:12 +0000 (16:05 +0200)]
vici: Refactor how commands are called in the Ruby bindings

Also expose a method to call arbitrary commands, which allows calling not
yet wrapped commands. Exceptions are raised for all commands if the response
includes a negative "success" key (similar to how it's done in the Python

3 years agovici: Fix formatting of return values for load-conn and load-authority commands
Tobias Brunner [Tue, 23 Apr 2019 17:56:22 +0000 (19:56 +0200)]
vici: Fix formatting of return values for load-conn and load-authority commands

3 years agovici: Add missing command wrappers for Python bindings
Tobias Brunner [Tue, 23 Apr 2019 14:13:19 +0000 (16:13 +0200)]
vici: Add missing command wrappers for Python bindings

Also change some for which the return value became relevant.

3 years agovici: Extract command wrappers in Python bindings
Tobias Brunner [Thu, 18 Apr 2019 08:56:15 +0000 (10:56 +0200)]
vici: Extract command wrappers in Python bindings

This simplifies the interface and allows calling not yet wrapped
commands more easily.