internal Asn1Object ReadTaggedObject(bool constructed, int tag) { if (!constructed) { DefiniteLengthInputStream definiteLengthInputStream = (DefiniteLengthInputStream)_in; return(new DerTaggedObject(explicitly: false, tag, new DerOctetString(definiteLengthInputStream.ToArray()))); } Asn1EncodableVector asn1EncodableVector = ReadVector(); if (_in is IndefiniteLengthInputStream) { if (asn1EncodableVector.Count != 1) { return(new BerTaggedObject(explicitly: false, tag, BerSequence.FromVector(asn1EncodableVector))); } return(new BerTaggedObject(explicitly: true, tag, asn1EncodableVector[0])); } if (asn1EncodableVector.Count != 1) { return(new DerTaggedObject(explicitly: false, tag, DerSequence.FromVector(asn1EncodableVector))); } return(new DerTaggedObject(explicitly: true, tag, asn1EncodableVector[0])); }
internal virtual DerSequence CreateDerSequence(DefiniteLengthInputStream dIn) { return(DerSequence.FromVector(BuildDerEncodableVector(dIn))); }