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

◆ DecodeCore() [1/2]

static void System.Security.Cryptography.Asn1.Rc2CbcParameters.DecodeCore ( ref AsnValueReader reader,
Asn1Tag expectedTag,
ReadOnlyMemory< byte > rebind,
out Rc2CbcParameters decoded )
inlinestaticprivate

Definition at line 61 of file Rc2CbcParameters.cs.

62 {
63 decoded = default(Rc2CbcParameters);
64 AsnValueReader asnValueReader = reader.ReadSequence(expectedTag);
65 ReadOnlySpan<byte> span = rebind.Span;
66 if (!asnValueReader.TryReadInt32(out decoded.Rc2Version))
67 {
68 asnValueReader.ThrowIfNotEmpty();
69 }
70 if (asnValueReader.TryReadPrimitiveOctetString(out var value))
71 {
72 decoded.Iv = (span.Overlaps(value, out var elementOffset) ? rebind.Slice(elementOffset, value.Length) : ((ReadOnlyMemory<byte>)value.ToArray()));
73 }
74 else
75 {
76 decoded.Iv = asnValueReader.ReadOctetString();
77 }
78 asnValueReader.ThrowIfNotEmpty();
79 }
bool TryReadInt32(out int value, Asn1Tag? expectedTag=null)
bool TryReadPrimitiveOctetString(out ReadOnlySpan< byte > value, Asn1Tag? expectedTag=null)
byte[] ReadOctetString(Asn1Tag? expectedTag=null)
AsnValueReader ReadSequence(Asn1Tag? expectedTag=null)
unsafe ReadOnlySpan< T > Span
ReadOnlyMemory< T > Slice(int start)

References System.Formats.Asn1.AsnValueReader.ReadOctetString(), System.Formats.Asn1.AsnValueReader.ReadSequence(), System.ReadOnlyMemory< T >.Slice(), System.ReadOnlyMemory< T >.Span, System.Formats.Asn1.AsnValueReader.ThrowIfNotEmpty(), System.Formats.Asn1.AsnValueReader.TryReadInt32(), System.Formats.Asn1.AsnValueReader.TryReadPrimitiveOctetString(), and System.value.

Referenced by System.Security.Cryptography.Asn1.Rc2CbcParameters.Decode().