]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[#2969] regenerate key to avoid SSL errors in DB
authorAndrei Pavel <andrei@isc.org>
Fri, 3 Nov 2023 13:03:29 +0000 (15:03 +0200)
committerAndrei Pavel <andrei@isc.org>
Tue, 14 Nov 2023 09:55:37 +0000 (11:55 +0200)
Prevents this error that happens on Debian 10:
- SSL error: Unable to get private key from '/etc/mysql/ssl/kea-server.key'

hammer.py

index 59e971f4dd6904e1390c52f4c7c30d5cb9238d83..138553ba10f3416220299550eea2df64bfa371a0 100755 (executable)
--- a/hammer.py
+++ b/hammer.py
@@ -1278,6 +1278,13 @@ def _configure_mysql(system, revision, features):
     if 'tls' in features:
         if not os.path.isdir(cert_dir):
             execute('sudo mkdir -p {}'.format(cert_dir))
+        # Some systems, usually old ones, might require a cerain PKCS format
+        # of the key. Try to regenerate it here, but don't stop if it fails.
+        # If the key is wrong, it will fail later anyway.
+        exit_code = execute('openssl rsa -in src/lib/asiolink/testutils/ca/kea-server.key ' \
+                                       '-out src/lib/asiolink/testutils/ca/kea-server.key', raise_error=False)
+        if exit_code != 0:
+            log.warning(f'openssl command failed with exit code {exit_code}, but continuing...')
         for file in [
             './src/lib/asiolink/testutils/ca/kea-ca.crt',
             './src/lib/asiolink/testutils/ca/kea-client.crt',