From a9ee4c34747ea0f52fdd35fd96fd27a1ca6f5fe5 Mon Sep 17 00:00:00 2001 From: Peter Dettman Date: Mon, 27 Jun 2022 23:35:40 +0700 Subject: Add extra IAN,SAN extension accessors --- crypto/src/x509/X509Certificate.cs | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) (limited to 'crypto/src') diff --git a/crypto/src/x509/X509Certificate.cs b/crypto/src/x509/X509Certificate.cs index 098a2b95a..56d9e639f 100644 --- a/crypto/src/x509/X509Certificate.cs +++ b/crypto/src/x509/X509Certificate.cs @@ -379,9 +379,14 @@ namespace Org.BouncyCastle.X509 return -1; } - public virtual IList> GetSubjectAlternativeNames() + public virtual GeneralNames GetIssuerAlternativeNameExtension() { - return GetAlternativeNames(X509Extensions.SubjectAlternativeName); + return GetAlternativeNameExtension(X509Extensions.IssuerAlternativeName); + } + + public virtual GeneralNames GetSubjectAlternativeNameExtension() + { + return GetAlternativeNameExtension(X509Extensions.SubjectAlternativeName); } public virtual IList> GetIssuerAlternativeNames() @@ -389,7 +394,12 @@ namespace Org.BouncyCastle.X509 return GetAlternativeNames(X509Extensions.IssuerAlternativeName); } - protected virtual IList> GetAlternativeNames(DerObjectIdentifier oid) + public virtual IList> GetSubjectAlternativeNames() + { + return GetAlternativeNames(X509Extensions.SubjectAlternativeName); + } + + protected virtual GeneralNames GetAlternativeNameExtension(DerObjectIdentifier oid) { Asn1OctetString altNames = GetExtensionValue(oid); if (altNames == null) @@ -397,7 +407,12 @@ namespace Org.BouncyCastle.X509 Asn1Object asn1Object = X509ExtensionUtilities.FromExtensionValue(altNames); - var generalNames = GeneralNames.GetInstance(asn1Object); + return GeneralNames.GetInstance(asn1Object); + } + + protected virtual IList> GetAlternativeNames(DerObjectIdentifier oid) + { + var generalNames = GetAlternativeNameExtension(oid); var gns = generalNames.GetNames(); var result = new List>(gns.Length); -- cgit 1.4.1