Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ Encode() [2/2]

void System.Security.Cryptography.Asn1.X509ExtensionAsn.Encode ( AsnWriter writer,
Asn1Tag tag )
inlinepackage

Definition at line 21 of file X509ExtensionAsn.cs.

22 {
23 writer.PushSequence(tag);
24 try
25 {
26 writer.WriteObjectIdentifier(ExtnId);
27 }
28 catch (ArgumentException inner)
29 {
30 throw new CryptographicException(System.SR.Cryptography_Der_Invalid_Encoding, inner);
31 }
32 AsnWriter asnWriter = new AsnWriter(AsnEncodingRules.DER);
33 asnWriter.WriteBoolean(Critical);
34 if (!asnWriter.EncodedValueEquals(DefaultCritical))
35 {
36 asnWriter.CopyTo(writer);
37 }
38 writer.WriteOctetString(ExtnValue.Span);
39 writer.PopSequence(tag);
40 }
bool EncodedValueEquals(ReadOnlySpan< byte > other)
Definition AsnWriter.cs:232
void CopyTo(AsnWriter destination)
Definition AsnWriter.cs:328
void WriteBoolean(bool value, Asn1Tag? tag=null)
Definition AsnWriter.cs:565
static string Cryptography_Der_Invalid_Encoding
Definition SR.cs:50
Definition SR.cs:7
unsafe ReadOnlySpan< T > Span

References System.Formats.Asn1.AsnWriter.CopyTo(), System.Security.Cryptography.Asn1.X509ExtensionAsn.Critical, System.SR.Cryptography_Der_Invalid_Encoding, System.Security.Cryptography.Asn1.X509ExtensionAsn.DefaultCritical, System.Formats.Asn1.AsnWriter.EncodedValueEquals(), System.Security.Cryptography.Asn1.X509ExtensionAsn.ExtnId, System.Security.Cryptography.Asn1.X509ExtensionAsn.ExtnValue, System.ReadOnlyMemory< T >.Span, System.Formats.Asn1.AsnWriter.WriteBoolean(), and System.writer.