From dfeaa1ed41765610295c03fe11ee47b7c3658147 Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Fri, 3 Apr 2020 14:24:24 +0200 Subject: global-functions: $Certificate{Available,Download}: return and check status --- global-functions | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'global-functions') diff --git a/global-functions b/global-functions index 2673d2e..bcc35f5 100644 --- a/global-functions +++ b/global-functions @@ -57,7 +57,9 @@ :if ([ / certificate print count-only where common-name=$CommonName ] = 0) do={ :log info ("Certificate with CommonName \"" . $CommonName . "\" not available."); - $CertificateDownload $CommonName; + :if ([ $CertificateDownload $CommonName ] = false) do={ + :return false; + } } :local CertVal; @@ -65,11 +67,14 @@ :do { :if ([ / certificate print count-only where common-name=$Issuer ] = 0) do={ :log info ("Certificate chain for \"" . $CommonName . "\" is incomplete, missing \"" . $Issuer . "\"."); - $CertificateDownload $CommonName; + :if ([ $CertificateDownload $CommonName ] = false) do={ + :return false; + } } :set CertVal [ / certificate get [ find where common-name=$Issuer ] ]; :set Issuer ([ $ParseKeyValueStore ($CertVal->"issuer") ]->"CN"); } while=($Issuer != $CertVal->"common-name"); + :return true; } # download and import certificate @@ -101,7 +106,9 @@ } } on-error={ :log warning "Failed imprting certificate!"; + :return false; } + :return true; } # name a certificate by its common-name -- cgit v1.2.3-54-g00ecf