Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
DirectoryStringAsn.cs
Go to the documentation of this file.
1
using
System.Formats.Asn1
;
2
3
namespace
System.Security.Cryptography.Asn1
;
4
5
internal
struct
DirectoryStringAsn
6
{
7
internal
string
TeletexString
;
8
9
internal
string
PrintableString
;
10
11
internal
ReadOnlyMemory<byte>
?
UniversalString
;
12
13
internal
string
Utf8String
;
14
15
internal
string
BmpString
;
16
17
internal
void
Encode
(
AsnWriter
writer
)
18
{
19
bool
flag =
false
;
20
if
(
TeletexString
!=
null
)
21
{
22
if
(flag)
23
{
24
throw
new
CryptographicException
();
25
}
26
writer
.WriteCharacterString(
UniversalTagNumber
.TeletexString,
TeletexString
);
27
flag =
true
;
28
}
29
if
(
PrintableString
!=
null
)
30
{
31
if
(flag)
32
{
33
throw
new
CryptographicException
();
34
}
35
writer
.WriteCharacterString(
UniversalTagNumber
.PrintableString,
PrintableString
);
36
flag =
true
;
37
}
38
if
(
UniversalString
.HasValue)
39
{
40
if
(flag)
41
{
42
throw
new
CryptographicException
();
43
}
44
if
(!
Asn1Tag
.
TryDecode
(
UniversalString
.Value.
Span
, out var tag, out var _) || !tag.HasSameClassAndValue(
new
Asn1Tag
(
UniversalTagNumber
.UniversalString)))
45
{
46
throw
new
CryptographicException
();
47
}
48
try
49
{
50
writer
.WriteEncodedValue(
UniversalString
.Value.
Span
);
51
}
52
catch
(
ArgumentException
inner)
53
{
54
throw
new
CryptographicException
(
System
.
SR
.
Cryptography_Der_Invalid_Encoding
, inner);
55
}
56
flag =
true
;
57
}
58
if
(
Utf8String
!=
null
)
59
{
60
if
(flag)
61
{
62
throw
new
CryptographicException
();
63
}
64
writer
.WriteCharacterString(
UniversalTagNumber
.UTF8String,
Utf8String
);
65
flag =
true
;
66
}
67
if
(
BmpString
!=
null
)
68
{
69
if
(flag)
70
{
71
throw
new
CryptographicException
();
72
}
73
writer
.WriteCharacterString(
UniversalTagNumber
.BMPString,
BmpString
);
74
flag =
true
;
75
}
76
if
(!flag)
77
{
78
throw
new
CryptographicException
();
79
}
80
}
81
}
System.ArgumentException
Definition
ArgumentException.cs:9
System.Formats.Asn1.AsnWriter
Definition
AsnWriter.cs:13
System.SR.Cryptography_Der_Invalid_Encoding
static string Cryptography_Der_Invalid_Encoding
Definition
SR.cs:50
System.SR
Definition
SR.cs:7
System.Security.Cryptography.CryptographicException
Definition
CryptographicException.cs:9
System.Formats.Asn1.UniversalTagNumber
UniversalTagNumber
Definition
UniversalTagNumber.cs:4
System.Formats.Asn1
Definition
Asn1Tag.cs:3
System.Security.Cryptography.Asn1
Definition
AlgorithmIdentifierAsn.cs:3
System.ExceptionArgument.writer
@ writer
System
Definition
BlockingCollection.cs:8
System.Formats.Asn1.Asn1Tag.TryDecode
static bool TryDecode(ReadOnlySpan< byte > source, out Asn1Tag tag, out int bytesConsumed)
Definition
Asn1Tag.cs:87
System.Formats.Asn1.Asn1Tag
Definition
Asn1Tag.cs:6
System.ReadOnlyMemory.Span
unsafe ReadOnlySpan< T > Span
Definition
ReadOnlyMemory.cs:30
System.ReadOnlyMemory
Definition
ReadOnlyMemory.cs:14
System.Security.Cryptography.Asn1.DirectoryStringAsn.PrintableString
string PrintableString
Definition
DirectoryStringAsn.cs:9
System.Security.Cryptography.Asn1.DirectoryStringAsn.TeletexString
string TeletexString
Definition
DirectoryStringAsn.cs:7
System.Security.Cryptography.Asn1.DirectoryStringAsn.Encode
void Encode(AsnWriter writer)
Definition
DirectoryStringAsn.cs:17
System.Security.Cryptography.Asn1.DirectoryStringAsn.BmpString
string BmpString
Definition
DirectoryStringAsn.cs:15
System.Security.Cryptography.Asn1.DirectoryStringAsn.Utf8String
string Utf8String
Definition
DirectoryStringAsn.cs:13
System.Security.Cryptography.Asn1.DirectoryStringAsn.UniversalString
ReadOnlyMemory< byte >? UniversalString
Definition
DirectoryStringAsn.cs:11
System.Security.Cryptography.Asn1.DirectoryStringAsn
Definition
DirectoryStringAsn.cs:6
source
System.Security.Cryptography.X509Certificates
System.Security.Cryptography.Asn1
DirectoryStringAsn.cs
Generated by
1.10.0