summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Gallagher <sgallagh@redhat.com>2017-09-22 10:29:43 -0400
committerStephen Gallagher <sgallagh@redhat.com>2017-09-22 10:37:53 -0400
commiteec4cf442f96fabda35399b232ef5b5206e9901f (patch)
tree284ede17cf5185b6e4bc14e7f13660da94dcd84a
parentc094ba48271609ad5329c2bd04c276b011a639c5 (diff)
downloadhttpd-eec4cf442f96fabda35399b232ef5b5206e9901f.tar.gz
httpd-eec4cf442f96fabda35399b232ef5b5206e9901f.tar.xz
httpd-eec4cf442f96fabda35399b232ef5b5206e9901f.zip
Handle edge-cases in gencerts
Make sure that we exit with success if the files already exist and that we exit with failure and a message if only one or the other is present.
-rwxr-xr-xhttpd-ssl-gencerts15
1 files changed, 14 insertions, 1 deletions
diff --git a/httpd-ssl-gencerts b/httpd-ssl-gencerts
index 371a838..22aece4 100755
--- a/httpd-ssl-gencerts
+++ b/httpd-ssl-gencerts
@@ -4,11 +4,24 @@ set -e
FQDN=`hostname`
-if test -f /etc/pki/tls/certs/localhost.crt -o \
+if test -f /etc/pki/tls/certs/localhost.crt -a \
-f /etc/pki/tls/private/localhost.key; then
+ exit 0
+fi
+
+if test -f /etc/pki/tls/certs/localhost.crt -a \
+ ! -f /etc/pki/tls/private/localhost.key; then
+ echo "Missing certificate key!"
+ exit 1
+fi
+
+if test ! -f /etc/pki/tls/certs/localhost.crt -a \
+ -f /etc/pki/tls/private/localhost.key; then
+ echo "Missing certificate, but key is present!"
exit 1
fi
+
sscg -q \
--cert-file /etc/pki/tls/certs/localhost.crt \
--cert-key-file /etc/pki/tls/private/localhost.key \