|
@@ -1,4 +1,4 @@
|
|
|
-# SPDX-FileCopyrightText: 2016-2017 Helmut Pozimski <helmut@pozimski.eu>
|
|
|
+# SPDX-FileCopyrightText: 2016-2023 Helmut Pozimski <helmut@pozimski.eu>
|
|
|
#
|
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
|
|
|
|
@@ -13,6 +13,7 @@ import datetime
|
|
|
import os
|
|
|
import shutil
|
|
|
import hashlib
|
|
|
+import subprocess
|
|
|
|
|
|
import OpenSSL
|
|
|
import dns.tsigkeyring
|
|
@@ -299,7 +300,7 @@ def create_tlsa_records(domain, port, certificate, named_key_path,
|
|
|
dns_server=dns_server)
|
|
|
|
|
|
|
|
|
-def get_subject_alt_name(certificate):
|
|
|
+def get_subject_alt_name(certificate) -> list:
|
|
|
"""
|
|
|
Extracts the subjectAltName entries from a X509 certficiate
|
|
|
|
|
@@ -309,11 +310,19 @@ def get_subject_alt_name(certificate):
|
|
|
:return: list of hostnames
|
|
|
:rtype: list
|
|
|
"""
|
|
|
- list = []
|
|
|
+ alt_names = []
|
|
|
for i in range(0, certificate.get_extension_count(), 1):
|
|
|
if certificate.get_extension(i).get_short_name() == b"subjectAltName":
|
|
|
extension_string = str(certificate.get_extension(i))
|
|
|
for entry in extension_string.split(","):
|
|
|
- list.append(entry.split(":")[1])
|
|
|
+ alt_names.append(entry.split(":")[1])
|
|
|
break
|
|
|
- return list
|
|
|
+ return alt_names
|
|
|
+
|
|
|
+
|
|
|
+def restart_service(service_name: str):
|
|
|
+ if os.path.exists("/run/systemd/system"):
|
|
|
+ subprocess.call(["/usr/bin/systemctl", "restart", service_name])
|
|
|
+ else:
|
|
|
+ subprocess.call(["/etc/init.d/%s" % service_name,
|
|
|
+ "restart"])
|