From afa3f36910db2937248f085be393289fc28330c6 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Fabian=20Gr=C3=BCnbichler?= Date: Mon, 22 Jul 2019 17:11:36 +0200 Subject: [PATCH] cert: add public key type and size to info MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Fabian Grünbichler Co-Authored-By: Alwin Antreich --- src/PVE/Certificate.pm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/PVE/Certificate.pm b/src/PVE/Certificate.pm index 691e70b..65c5c8f 100644 --- a/src/PVE/Certificate.pm +++ b/src/PVE/Certificate.pm @@ -260,6 +260,14 @@ sub get_certificate_info { $info->{san} = $parse_san->(Net::SSLeay::X509_get_subjectAltNames($cert)); $info->{pem} = Net::SSLeay::PEM_get_string_X509($cert); + my $pub_key = eval { Net::SSLeay::X509_get_pubkey($cert) }; + warn $@ if $@; + if ($pub_key) { + $info->{'public-key-type'} = Net::SSLeay::OBJ_nid2sn(Net::SSLeay::EVP_PKEY_id($pub_key)); + $info->{'public-key-bits'} = Net::SSLeay::EVP_PKEY_bits($pub_key); + Net::SSLeay::EVP_PKEY_free($pub_key); + } + Net::SSLeay::X509_free($cert); $cert_path =~ s!^.*/!!g; -- 2.39.2