summary refs log tree commit diff
path: root/crypto/src/asn1/crmf
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/src/asn1/crmf')
-rw-r--r--crypto/src/asn1/crmf/EncryptedValue.cs21
-rw-r--r--crypto/src/asn1/crmf/OptionalValidity.cs13
-rw-r--r--crypto/src/asn1/crmf/PopoSigningKey.cs8
3 files changed, 8 insertions, 34 deletions
diff --git a/crypto/src/asn1/crmf/EncryptedValue.cs b/crypto/src/asn1/crmf/EncryptedValue.cs
index 83122e220..7c5cf18b4 100644
--- a/crypto/src/asn1/crmf/EncryptedValue.cs
+++ b/crypto/src/asn1/crmf/EncryptedValue.cs
@@ -131,24 +131,13 @@ namespace Org.BouncyCastle.Asn1.Crmf
         public override Asn1Object ToAsn1Object()
         {
             Asn1EncodableVector v = new Asn1EncodableVector();
-
-            AddOptional(v, 0, intendedAlg);
-            AddOptional(v, 1, symmAlg);
-            AddOptional(v, 2, encSymmKey);
-            AddOptional(v, 3, keyAlg);
-            AddOptional(v, 4, valueHint);
-
+            v.AddOptionalTagged(false, 0, intendedAlg);
+            v.AddOptionalTagged(false, 1, symmAlg);
+            v.AddOptionalTagged(false, 2, encSymmKey);
+            v.AddOptionalTagged(false, 3, keyAlg);
+            v.AddOptionalTagged(false, 4, valueHint);
             v.Add(encValue);
-
             return new DerSequence(v);
         }
-
-        private void AddOptional(Asn1EncodableVector v, int tagNo, Asn1Encodable obj)
-        {
-            if (obj != null)
-            {
-                v.Add(new DerTaggedObject(false, tagNo, obj));
-            }
-        }
     }
 }
diff --git a/crypto/src/asn1/crmf/OptionalValidity.cs b/crypto/src/asn1/crmf/OptionalValidity.cs
index 46fd1f860..d608ea5d1 100644
--- a/crypto/src/asn1/crmf/OptionalValidity.cs
+++ b/crypto/src/asn1/crmf/OptionalValidity.cs
@@ -60,17 +60,8 @@ namespace Org.BouncyCastle.Asn1.Crmf
         public override Asn1Object ToAsn1Object()
         {
             Asn1EncodableVector v = new Asn1EncodableVector();
-
-            if (notBefore != null)
-            {
-                v.Add(new DerTaggedObject(true, 0, notBefore));
-            }
-
-            if (notAfter != null)
-            {
-                v.Add(new DerTaggedObject(true, 1, notAfter));
-            }
-
+            v.AddOptionalTagged(true, 0, notBefore);
+            v.AddOptionalTagged(true, 1, notAfter);
             return new DerSequence(v);
         }
     }
diff --git a/crypto/src/asn1/crmf/PopoSigningKey.cs b/crypto/src/asn1/crmf/PopoSigningKey.cs
index 1c24db8ee..11e735415 100644
--- a/crypto/src/asn1/crmf/PopoSigningKey.cs
+++ b/crypto/src/asn1/crmf/PopoSigningKey.cs
@@ -101,15 +101,9 @@ namespace Org.BouncyCastle.Asn1.Crmf
         public override Asn1Object ToAsn1Object()
         {
             Asn1EncodableVector v = new Asn1EncodableVector();
-
-            if (poposkInput != null)
-            {
-                v.Add(new DerTaggedObject(false, 0, poposkInput));
-            }
-
+            v.AddOptionalTagged(false, 0, poposkInput);
             v.Add(algorithmIdentifier);
             v.Add(signature);
-
             return new DerSequence(v);
         }
     }