summary refs log tree commit diff
path: root/crypto/src/asn1/cmp/PKIFreeText.cs
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/src/asn1/cmp/PKIFreeText.cs')
-rw-r--r--crypto/src/asn1/cmp/PKIFreeText.cs15
1 files changed, 15 insertions, 0 deletions
diff --git a/crypto/src/asn1/cmp/PKIFreeText.cs b/crypto/src/asn1/cmp/PKIFreeText.cs
index a567852e4..e2845c529 100644
--- a/crypto/src/asn1/cmp/PKIFreeText.cs
+++ b/crypto/src/asn1/cmp/PKIFreeText.cs
@@ -19,6 +19,21 @@ namespace Org.BouncyCastle.Asn1.Cmp
             return new PkiFreeText(Asn1Sequence.GetInstance(taggedObject, declaredExplicit));
         }
 
+        public static PkiFreeText GetOptional(Asn1Encodable element)
+        {
+            if (element == null)
+                throw new ArgumentNullException(nameof(element));
+
+            if (element is PkiFreeText pkiFreeText)
+                return pkiFreeText;
+
+            Asn1Sequence asn1Sequence = Asn1Sequence.GetOptional(element);
+            if (asn1Sequence != null)
+                return new PkiFreeText(asn1Sequence);
+
+            return null;
+        }
+
         private readonly Asn1Sequence m_strings;
 
         internal PkiFreeText(Asn1Sequence seq)