Add some new issuer access methods. v1.8.52
authorCarl Hetherington <cth@carlh.net>
Mon, 16 Jan 2023 20:16:54 +0000 (21:16 +0100)
committerCarl Hetherington <cth@carlh.net>
Mon, 16 Jan 2023 20:16:54 +0000 (21:16 +0100)
src/certificate.cc
src/certificate.h

index 1e7714a321e61991c2a7a2a284c9d30004ebef76..c447be76fe83b366b6bd6fff795585c25154a634 100644 (file)
@@ -245,6 +245,33 @@ Certificate::issuer () const
 }
 
 
+string
+Certificate::issuer_common_name() const
+{
+       DCP_ASSERT(_certificate);
+
+       return get_name_part(X509_get_issuer_name(_certificate), NID_commonName);
+}
+
+
+string
+Certificate::issuer_organization_name() const
+{
+       DCP_ASSERT(_certificate);
+
+       return get_name_part(X509_get_issuer_name(_certificate), NID_organizationName);
+}
+
+
+string
+Certificate::issuer_organizational_unit_name() const
+{
+       DCP_ASSERT(_certificate);
+
+       return get_name_part(X509_get_issuer_name(_certificate), NID_organizationalUnitName);
+}
+
+
 string
 Certificate::asn_to_utf8 (ASN1_STRING* s)
 {
index 49fca02cdab55aa38df5dc45a03660cfb13624c9..642bf890102cad5a7fc667505ebfc6a9e1cd6bd7 100644 (file)
@@ -102,6 +102,9 @@ public:
         *  and with + signs escaped to \+
         */
        std::string issuer () const;
+       std::string issuer_common_name() const;
+       std::string issuer_organization_name() const;
+       std::string issuer_organizational_unit_name() const;
 
        std::string subject () const;
        std::string subject_common_name () const;