240 lines
14 KiB
C#
240 lines
14 KiB
C#
using System;
|
|
using System.Text;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.X509;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix
|
|
{
|
|
// Token: 0x02001988 RID: 6536
|
|
[Token(Token = "0x2001988")]
|
|
public class TrustAnchor
|
|
{
|
|
// Token: 0x06009C07 RID: 39943 RVA: 0x00207ACC File Offset: 0x00205CCC
|
|
[Token(Token = "0x6009C07")]
|
|
[Address(RVA = "0x19C2710", Offset = "0x19C1510", VA = "0x1819C2710")]
|
|
public TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009C07)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.TrustAnchor::.ctor(BestHTTP.SecureProtocol.Org.BouncyCastle.X509.X509Certificate,System.Byte[])
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_30:
|
|
stloc:ArgumentNullException(var_1_3A, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("trustedCert")))
|
|
}
|
|
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1878
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1846
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
|
|
--- End of inner exception stack trace ---
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
|
|
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06009C08 RID: 39944 RVA: 0x00207B14 File Offset: 0x00205D14
|
|
[Token(Token = "0x6009C08")]
|
|
[Address(RVA = "0x19C27C0", Offset = "0x19C15C0", VA = "0x1819C27C0")]
|
|
public TrustAnchor(X509Name caPrincipal, AsymmetricKeyParameter pubKey, byte[] nameConstraints)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009C08)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.TrustAnchor::.ctor(BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X509.X509Name,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[])
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_46:
|
|
stloc:ArgumentNullException(var_2_50, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("pubKey")))
|
|
}
|
|
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
|
|
--- End of inner exception stack trace ---
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
|
|
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x06009C09 RID: 39945 RVA: 0x00207B74 File Offset: 0x00205D74
|
|
[Token(Token = "0x6009C09")]
|
|
[Address(RVA = "0x19C28C0", Offset = "0x19C16C0", VA = "0x1819C28C0")]
|
|
public TrustAnchor(string caName, AsymmetricKeyParameter pubKey, byte[] nameConstraints)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06009C09)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Pkix.TrustAnchor::.ctor(System.String,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[])
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_4F:
|
|
stloc:ArgumentNullException(var_2_59, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("pubKey")))
|
|
}
|
|
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
|
|
--- End of inner exception stack trace ---
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
|
|
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1660
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x170018F1 RID: 6385
|
|
// (get) Token: 0x06009C0A RID: 39946 RVA: 0x00207BDC File Offset: 0x00205DDC
|
|
[Token(Token = "0x170018F1")]
|
|
public X509Certificate TrustedCert
|
|
{
|
|
[Token(Token = "0x6009C0A")]
|
|
[Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0")]
|
|
get
|
|
{
|
|
return this.trustedCert;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170018F2 RID: 6386
|
|
// (get) Token: 0x06009C0B RID: 39947 RVA: 0x00207BF0 File Offset: 0x00205DF0
|
|
[Token(Token = "0x170018F2")]
|
|
public X509Name CA
|
|
{
|
|
[Token(Token = "0x6009C0B")]
|
|
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
|
get
|
|
{
|
|
return this.caPrincipal;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170018F3 RID: 6387
|
|
// (get) Token: 0x06009C0C RID: 39948 RVA: 0x00207C04 File Offset: 0x00205E04
|
|
[Token(Token = "0x170018F3")]
|
|
public string CAName
|
|
{
|
|
[Token(Token = "0x6009C0C")]
|
|
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
|
get
|
|
{
|
|
return this.caName;
|
|
}
|
|
}
|
|
|
|
// Token: 0x170018F4 RID: 6388
|
|
// (get) Token: 0x06009C0D RID: 39949 RVA: 0x00207C18 File Offset: 0x00205E18
|
|
[Token(Token = "0x170018F4")]
|
|
public AsymmetricKeyParameter CAPublicKey
|
|
{
|
|
[Token(Token = "0x6009C0D")]
|
|
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
|
get
|
|
{
|
|
return this.pubKey;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06009C0E RID: 39950 RVA: 0x00207C2C File Offset: 0x00205E2C
|
|
[Token(Token = "0x6009C0E")]
|
|
[Address(RVA = "0x19C2A70", Offset = "0x19C1870", VA = "0x1819C2A70")]
|
|
private void setNameConstraints(byte[] bytes)
|
|
{
|
|
if (bytes != 0)
|
|
{
|
|
NameConstraints instance = NameConstraints.GetInstance(Asn1Object.FromByteArray(bytes));
|
|
this.nc = instance;
|
|
return;
|
|
}
|
|
int num = 0;
|
|
this.ncBytes = num;
|
|
this.nc = num;
|
|
}
|
|
|
|
// Token: 0x170018F5 RID: 6389
|
|
// (get) Token: 0x06009C0F RID: 39951 RVA: 0x00207C64 File Offset: 0x00205E64
|
|
[Token(Token = "0x170018F5")]
|
|
public byte[] GetNameConstraints
|
|
{
|
|
[Token(Token = "0x6009C0F")]
|
|
[Address(RVA = "0x19C2A10", Offset = "0x19C1810", VA = "0x1819C2A10")]
|
|
get
|
|
{
|
|
return Arrays.Clone(this.ncBytes);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06009C10 RID: 39952 RVA: 0x00207C7C File Offset: 0x00205E7C
|
|
[Token(Token = "0x6009C10")]
|
|
[Address(RVA = "0x19C2550", Offset = "0x19C1350", VA = "0x1819C2550", Slot = "3")]
|
|
public override string ToString()
|
|
{
|
|
string newLine = Platform.NewLine;
|
|
StringBuilder stringBuilder = new StringBuilder();
|
|
StringBuilder stringBuilder2 = stringBuilder.Append("[");
|
|
StringBuilder stringBuilder3 = stringBuilder.Append(newLine);
|
|
int num = 0;
|
|
if (this.pubKey == num)
|
|
{
|
|
StringBuilder stringBuilder4 = stringBuilder.Append(" Trusted CA cert: ");
|
|
X509Certificate x509Certificate = this.trustedCert;
|
|
StringBuilder stringBuilder5 = stringBuilder4.Append(x509Certificate);
|
|
}
|
|
StringBuilder stringBuilder6 = stringBuilder.Append(" Trusted CA Public Key: ");
|
|
AsymmetricKeyParameter asymmetricKeyParameter = this.pubKey;
|
|
StringBuilder stringBuilder7 = stringBuilder6.Append(asymmetricKeyParameter).Append(newLine);
|
|
StringBuilder stringBuilder8 = stringBuilder.Append(" Trusted CA Issuer Name: ");
|
|
string text = this.caName;
|
|
StringBuilder stringBuilder9 = stringBuilder8.Append(text).Append(newLine);
|
|
if (this.nc != (ulong)0L)
|
|
{
|
|
StringBuilder stringBuilder10 = stringBuilder.Append(" Name Constraints: ");
|
|
NameConstraints nameConstraints = this.nc;
|
|
StringBuilder stringBuilder11 = stringBuilder10.Append(nameConstraints).Append(newLine);
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x04006918 RID: 26904
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4006918")]
|
|
private readonly AsymmetricKeyParameter pubKey;
|
|
|
|
// Token: 0x04006919 RID: 26905
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4006919")]
|
|
private readonly string caName;
|
|
|
|
// Token: 0x0400691A RID: 26906
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x400691A")]
|
|
private readonly X509Name caPrincipal;
|
|
|
|
// Token: 0x0400691B RID: 26907
|
|
[FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x400691B")]
|
|
private readonly X509Certificate trustedCert;
|
|
|
|
// Token: 0x0400691C RID: 26908
|
|
[FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x400691C")]
|
|
private byte[] ncBytes;
|
|
|
|
// Token: 0x0400691D RID: 26909
|
|
[FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x400691D")]
|
|
private NameConstraints nc;
|
|
}
|
|
}
|