diff options
Diffstat (limited to 'crypto/src/asn1/DerUTF8String.cs')
-rw-r--r-- | crypto/src/asn1/DerUTF8String.cs | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/crypto/src/asn1/DerUTF8String.cs b/crypto/src/asn1/DerUTF8String.cs index 7bc9ff524..24023cd6c 100644 --- a/crypto/src/asn1/DerUTF8String.cs +++ b/crypto/src/asn1/DerUTF8String.cs @@ -89,19 +89,14 @@ namespace Org.BouncyCastle.Asn1 return this.str.Equals(other.str); } - internal override bool EncodeConstructed(int encoding) + internal override IAsn1Encoding GetEncoding(int encoding) { - return false; + return new PrimitiveEncoding(Asn1Tags.Universal, Asn1Tags.Utf8String, Encoding.UTF8.GetBytes(str)); } - internal override int EncodedLength(int encoding, bool withID) + internal override IAsn1Encoding GetEncodingImplicit(int encoding, int tagClass, int tagNo) { - return Asn1OutputStream.GetLengthOfEncodingDL(withID, Encoding.UTF8.GetByteCount(str)); - } - - internal override void Encode(Asn1OutputStream asn1Out, bool withID) - { - asn1Out.WriteEncodingDL(withID, Asn1Tags.Utf8String, Encoding.UTF8.GetBytes(str)); + return new PrimitiveEncoding(tagClass, tagNo, Encoding.UTF8.GetBytes(str)); } } } |