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

◆ DecodeCore() [2/2]

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

Definition at line 41 of file SubjectPublicKeyInfoAsn.cs.

42 {
44 System.Formats.Asn1.AsnValueReader reader2 = reader.ReadSequence(expectedTag);
45 ReadOnlySpan<byte> span = rebind.Span;
46 System.Security.Cryptography.Asn1.AlgorithmIdentifierAsn.Decode(ref reader2, rebind, out decoded.Algorithm);
47 if (reader2.TryReadPrimitiveBitString(out var unusedBitCount, out var value))
48 {
49 decoded.SubjectPublicKey = (span.Overlaps(value, out var elementOffset) ? rebind.Slice(elementOffset, value.Length) : ((ReadOnlyMemory<byte>)value.ToArray()));
50 }
51 else
52 {
53 decoded.SubjectPublicKey = reader2.ReadBitString(out unusedBitCount);
54 }
55 reader2.ThrowIfNotEmpty();
56 }
AsnValueReader ReadSequence(Asn1Tag? expectedTag=null)
unsafe ReadOnlySpan< T > Span
ReadOnlyMemory< T > Slice(int start)
static void Decode(ref AsnValueReader reader, ReadOnlyMemory< byte > rebind, out AlgorithmIdentifierAsn decoded)

References System.Security.Cryptography.Asn1.AlgorithmIdentifierAsn.Decode(), System.Formats.Asn1.AsnValueReader.ReadBitString(), System.Formats.Asn1.AsnValueReader.ReadSequence(), System.ReadOnlyMemory< T >.Slice(), System.ReadOnlyMemory< T >.Span, System.Formats.Asn1.AsnValueReader.ThrowIfNotEmpty(), System.Formats.Asn1.AsnValueReader.TryReadPrimitiveBitString(), and System.value.