Pkcs7ProcessableObject
using Org.BouncyCastle.Asn1;
using System.IO;
namespace Org.BouncyCastle.Cms
{
public class Pkcs7ProcessableObject : CmsProcessable
{
public DerObjectIdentifier ContentType { get; }
public Asn1Encodable Content { get; }
public Pkcs7ProcessableObject(DerObjectIdentifier contentType, Asn1Encodable content)
{
ContentType = contentType;
Content = content;
}
public void Write(Stream outStream)
{
Asn1Sequence optional = Asn1Sequence.GetOptional(Content);
if (optional != null) {
foreach (Asn1Encodable item in optional) {
item.EncodeTo(outStream, "DER");
}
} else {
byte[] encoded = Content.GetEncoded("DER");
int i;
for (i = 1; (encoded[i] & 128) != 0; i++) {
}
i++;
outStream.Write(encoded, i, encoded.Length - i);
}
}
public object GetContent()
{
return Content;
}
}
}