429 lines
30 KiB
C#
429 lines
30 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.IO;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Ocsp;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Security;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls
|
|
{
|
|
// Token: 0x02001C0E RID: 7182
|
|
[Token(Token = "0x2001C0E")]
|
|
public class DtlsServerProtocol : DtlsProtocol
|
|
{
|
|
// Token: 0x0600B0EF RID: 45295 RVA: 0x00263F98 File Offset: 0x00262198
|
|
[Token(Token = "0x600B0EF")]
|
|
[Address(RVA = "0x23413D0", Offset = "0x23403D0", VA = "0x1823413D0")]
|
|
public DtlsServerProtocol(SecureRandom secureRandom)
|
|
: base(secureRandom)
|
|
{
|
|
}
|
|
|
|
// Token: 0x17001C0A RID: 7178
|
|
// (get) Token: 0x0600B0F0 RID: 45296 RVA: 0x00263FB4 File Offset: 0x002621B4
|
|
// (set) Token: 0x0600B0F1 RID: 45297 RVA: 0x00263FC8 File Offset: 0x002621C8
|
|
[Token(Token = "0x17001C0A")]
|
|
public virtual bool VerifyRequests
|
|
{
|
|
[Token(Token = "0x600B0F0")]
|
|
[Address(RVA = "0x497570", Offset = "0x496570", VA = "0x180497570", Slot = "5")]
|
|
get
|
|
{
|
|
return this.mVerifyRequests;
|
|
}
|
|
[Token(Token = "0x600B0F1")]
|
|
[Address(RVA = "0x611070", Offset = "0x610070", VA = "0x180611070", Slot = "6")]
|
|
set
|
|
{
|
|
this.mVerifyRequests = value;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600B0F2 RID: 45298 RVA: 0x00263FDC File Offset: 0x002621DC
|
|
[Token(Token = "0x600B0F2")]
|
|
[Address(RVA = "0x233EF70", Offset = "0x233DF70", VA = "0x18233EF70", Slot = "7")]
|
|
public virtual DtlsTransport Accept(TlsServer server, DatagramTransport transport)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B0F2)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsTransport BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsServerProtocol::Accept(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsServer,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DatagramTransport)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_69:
|
|
stloc:ArgumentNullException(var_16_73, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("transport")))
|
|
}
|
|
|
|
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 1663
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x0600B0F3 RID: 45299 RVA: 0x00264060 File Offset: 0x00262260
|
|
[Token(Token = "0x600B0F3")]
|
|
[Address(RVA = "0x233EF10", Offset = "0x233DF10", VA = "0x18233EF10", Slot = "8")]
|
|
internal virtual void AbortServerHandshake(DtlsServerProtocol.ServerHandshakeState state, DtlsRecordLayer recordLayer, byte alertDescription)
|
|
{
|
|
recordLayer.Failed();
|
|
}
|
|
|
|
// Token: 0x0600B0F4 RID: 45300 RVA: 0x0026407C File Offset: 0x0026227C
|
|
[Token(Token = "0x600B0F4")]
|
|
[Address(RVA = "0x2340930", Offset = "0x233F930", VA = "0x182340930", Slot = "9")]
|
|
internal virtual DtlsTransport ServerHandshake(DtlsServerProtocol.ServerHandshakeState state, DtlsRecordLayer recordLayer)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B0F4)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsTransport BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsServerProtocol::ServerHandshake(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsServerProtocol/ServerHandshakeState,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsRecordLayer)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_30F:
|
|
stloc:TlsFatalAlert(var_66_316, newobj:TlsFatalAlert(TlsFatalAlert::.ctor, ldloc:uint64[exp:uint8](var_67)))
|
|
stloc:TlsFatalAlert(var_68_31F, newobj:TlsFatalAlert(TlsFatalAlert::.ctor, ldloc:uint64[exp:uint8](var_69)))
|
|
}
|
|
|
|
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 1663
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x0600B0F5 RID: 45301 RVA: 0x002643AC File Offset: 0x002625AC
|
|
[Token(Token = "0x600B0F5")]
|
|
[Address(RVA = "0x233FB80", Offset = "0x233EB80", VA = "0x18233FB80", Slot = "10")]
|
|
protected virtual void InvalidateSession(DtlsServerProtocol.ServerHandshakeState state)
|
|
{
|
|
SessionParameters sessionParameters = state.sessionParameters;
|
|
if (sessionParameters != 0)
|
|
{
|
|
sessionParameters.Clear();
|
|
state.sessionParameters = (ulong)0L;
|
|
}
|
|
if (state.tlsSession != 0)
|
|
{
|
|
state.tlsSession = (ulong)0L;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600B0F6 RID: 45302 RVA: 0x002643EC File Offset: 0x002625EC
|
|
[Token(Token = "0x600B0F6")]
|
|
[Address(RVA = "0x233F330", Offset = "0x233E330", VA = "0x18233F330", Slot = "11")]
|
|
protected virtual byte[] GenerateCertificateRequest(DtlsServerProtocol.ServerHandshakeState state, CertificateRequest certificateRequest)
|
|
{
|
|
MemoryStream memoryStream = new MemoryStream();
|
|
IList certificateAuthorities = certificateRequest.CertificateAuthorities;
|
|
((IDisposable)memoryStream).Dispose();
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600B0F7 RID: 45303 RVA: 0x00264414 File Offset: 0x00262614
|
|
[Token(Token = "0x600B0F7")]
|
|
[Address(RVA = "0x233F3C0", Offset = "0x233E3C0", VA = "0x18233F3C0", Slot = "12")]
|
|
protected virtual byte[] GenerateCertificateStatus(DtlsServerProtocol.ServerHandshakeState state, CertificateStatus certificateStatus)
|
|
{
|
|
MemoryStream memoryStream = new MemoryStream();
|
|
OcspResponse ocspResponse = certificateStatus.GetOcspResponse();
|
|
((IDisposable)memoryStream).Dispose();
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600B0F8 RID: 45304 RVA: 0x0026443C File Offset: 0x0026263C
|
|
[Token(Token = "0x600B0F8")]
|
|
[Address(RVA = "0x233F450", Offset = "0x233E450", VA = "0x18233F450", Slot = "13")]
|
|
protected virtual byte[] GenerateNewSessionTicket(DtlsServerProtocol.ServerHandshakeState state, NewSessionTicket newSessionTicket)
|
|
{
|
|
MemoryStream memoryStream = new MemoryStream();
|
|
byte[] ticket = newSessionTicket.Ticket;
|
|
((IDisposable)memoryStream).Dispose();
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600B0F9 RID: 45305 RVA: 0x00264464 File Offset: 0x00262664
|
|
[Token(Token = "0x600B0F9")]
|
|
[Address(RVA = "0x233F4E0", Offset = "0x233E4E0", VA = "0x18233F4E0", Slot = "14")]
|
|
protected virtual byte[] GenerateServerHello(DtlsServerProtocol.ServerHandshakeState state)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B0F9)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Byte[] BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsServerProtocol::GenerateServerHello(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsServerProtocol/ServerHandshakeState)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_213:
|
|
stloc:TlsFatalAlert(var_39_21A, newobj:TlsFatalAlert(TlsFatalAlert::.ctor, ldloc:uint64[exp:uint8](var_40)))
|
|
}
|
|
|
|
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 1663
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x0600B0FA RID: 45306 RVA: 0x0026468C File Offset: 0x0026288C
|
|
[Token(Token = "0x600B0FA")]
|
|
[Address(RVA = "0x233FBF0", Offset = "0x233EBF0", VA = "0x18233FBF0", Slot = "15")]
|
|
protected virtual void NotifyClientCertificate(DtlsServerProtocol.ServerHandshakeState state, Certificate clientCertificate)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B0FA)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsServerProtocol::NotifyClientCertificate(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsServerProtocol/ServerHandshakeState,BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.Certificate)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_50:
|
|
stloc:InvalidOperationException(var_5_55, newobj:InvalidOperationException(InvalidOperationException::.ctor))
|
|
}
|
|
|
|
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 1663
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x0600B0FB RID: 45307 RVA: 0x002646F0 File Offset: 0x002628F0
|
|
[Token(Token = "0x600B0FB")]
|
|
[Address(RVA = "0x2340160", Offset = "0x233F160", VA = "0x182340160", Slot = "16")]
|
|
protected virtual void ProcessClientCertificate(DtlsServerProtocol.ServerHandshakeState state, byte[] body)
|
|
{
|
|
int num;
|
|
MemoryStream memoryStream = new MemoryStream(body, num != 0);
|
|
num = 0;
|
|
Certificate certificate = Certificate.Parse(memoryStream);
|
|
TlsProtocol.AssertEmpty(memoryStream);
|
|
}
|
|
|
|
// Token: 0x0600B0FC RID: 45308 RVA: 0x00264714 File Offset: 0x00262914
|
|
[Token(Token = "0x600B0FC")]
|
|
[Address(RVA = "0x233FD80", Offset = "0x233ED80", VA = "0x18233FD80", Slot = "17")]
|
|
protected virtual void ProcessCertificateVerify(DtlsServerProtocol.ServerHandshakeState state, byte[] body, TlsHandshakeHash prepareFinishHash)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B0FC)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsServerProtocol::ProcessCertificateVerify(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsServerProtocol/ServerHandshakeState,System.Byte[],BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsHandshakeHash)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_F7:
|
|
stloc:InvalidOperationException(var_14_FC, newobj:InvalidOperationException(InvalidOperationException::.ctor))
|
|
}
|
|
|
|
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 1663
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x0600B0FD RID: 45309 RVA: 0x00264820 File Offset: 0x00262A20
|
|
[Token(Token = "0x600B0FD")]
|
|
[Address(RVA = "0x2340220", Offset = "0x233F220", VA = "0x182340220", Slot = "18")]
|
|
protected virtual void ProcessClientHello(DtlsServerProtocol.ServerHandshakeState state, byte[] body)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B0FD)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsServerProtocol::ProcessClientHello(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.DtlsServerProtocol/ServerHandshakeState,System.Byte[])
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_18B:
|
|
stloc:TlsFatalAlert(var_35_192, newobj:TlsFatalAlert(TlsFatalAlert::.ctor, ldloc:uint64[exp:uint8](var_36)))
|
|
}
|
|
|
|
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.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 1663
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x0600B0FE RID: 45310 RVA: 0x002649C0 File Offset: 0x00262BC0
|
|
[Token(Token = "0x600B0FE")]
|
|
[Address(RVA = "0x23407F0", Offset = "0x233F7F0", VA = "0x1823407F0", Slot = "19")]
|
|
protected virtual void ProcessClientKeyExchange(DtlsServerProtocol.ServerHandshakeState state, byte[] body)
|
|
{
|
|
int num;
|
|
MemoryStream memoryStream = new MemoryStream(body, num != 0);
|
|
num = 0;
|
|
TlsKeyExchange keyExchange = state.keyExchange;
|
|
TlsProtocol.AssertEmpty(memoryStream);
|
|
}
|
|
|
|
// Token: 0x0600B0FF RID: 45311 RVA: 0x002649EC File Offset: 0x00262BEC
|
|
[Token(Token = "0x600B0FF")]
|
|
[Address(RVA = "0x2340890", Offset = "0x233F890", VA = "0x182340890", Slot = "20")]
|
|
protected virtual void ProcessClientSupplementalData(DtlsServerProtocol.ServerHandshakeState state, byte[] body)
|
|
{
|
|
int num;
|
|
MemoryStream memoryStream = new MemoryStream(body, num != 0);
|
|
num = 0;
|
|
IList list = TlsProtocol.ReadSupplementalDataMessage(memoryStream);
|
|
TlsServer server = state.server;
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x0600B100 RID: 45312 RVA: 0x00264A18 File Offset: 0x00262C18
|
|
[Token(Token = "0x600B100")]
|
|
[Address(RVA = "0x233F2C0", Offset = "0x233E2C0", VA = "0x18233F2C0", Slot = "21")]
|
|
protected virtual bool ExpectCertificateVerifyMessage(DtlsServerProtocol.ServerHandshakeState state)
|
|
{
|
|
short clientCertificateType = state.clientCertificateType;
|
|
return TlsUtilities.HasSigningCapability((byte)clientCertificateType);
|
|
}
|
|
|
|
// Token: 0x0400705F RID: 28767
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x400705F")]
|
|
protected bool mVerifyRequests = true;
|
|
|
|
// Token: 0x02001C0F RID: 7183
|
|
[Token(Token = "0x2001C0F")]
|
|
protected internal class ServerHandshakeState
|
|
{
|
|
// Token: 0x0600B101 RID: 45313 RVA: 0x00264A3C File Offset: 0x00262C3C
|
|
[Token(Token = "0x600B101")]
|
|
[Address(RVA = "0x497630", Offset = "0x496630", VA = "0x180497630")]
|
|
public ServerHandshakeState()
|
|
{
|
|
}
|
|
|
|
// Token: 0x04007060 RID: 28768
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4007060")]
|
|
internal TlsServer server;
|
|
|
|
// Token: 0x04007061 RID: 28769
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4007061")]
|
|
internal TlsServerContextImpl serverContext;
|
|
|
|
// Token: 0x04007062 RID: 28770
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4007062")]
|
|
internal TlsSession tlsSession;
|
|
|
|
// Token: 0x04007063 RID: 28771
|
|
[FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x4007063")]
|
|
internal SessionParameters sessionParameters;
|
|
|
|
// Token: 0x04007064 RID: 28772
|
|
[FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x4007064")]
|
|
internal SessionParameters.Builder sessionParametersBuilder;
|
|
|
|
// Token: 0x04007065 RID: 28773
|
|
[FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x4007065")]
|
|
internal int[] offeredCipherSuites;
|
|
|
|
// Token: 0x04007066 RID: 28774
|
|
[FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x4007066")]
|
|
internal byte[] offeredCompressionMethods;
|
|
|
|
// Token: 0x04007067 RID: 28775
|
|
[FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x4007067")]
|
|
internal IDictionary clientExtensions;
|
|
|
|
// Token: 0x04007068 RID: 28776
|
|
[FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x4007068")]
|
|
internal IDictionary serverExtensions;
|
|
|
|
// Token: 0x04007069 RID: 28777
|
|
[FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x4007069")]
|
|
internal bool resumedSession;
|
|
|
|
// Token: 0x0400706A RID: 28778
|
|
[FieldOffset(Offset = "0x59")]
|
|
[Token(Token = "0x400706A")]
|
|
internal bool secure_renegotiation;
|
|
|
|
// Token: 0x0400706B RID: 28779
|
|
[FieldOffset(Offset = "0x5A")]
|
|
[Token(Token = "0x400706B")]
|
|
internal bool allowCertificateStatus;
|
|
|
|
// Token: 0x0400706C RID: 28780
|
|
[FieldOffset(Offset = "0x5B")]
|
|
[Token(Token = "0x400706C")]
|
|
internal bool expectSessionTicket;
|
|
|
|
// Token: 0x0400706D RID: 28781
|
|
[FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x400706D")]
|
|
internal TlsKeyExchange keyExchange;
|
|
|
|
// Token: 0x0400706E RID: 28782
|
|
[FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x400706E")]
|
|
internal TlsCredentials serverCredentials;
|
|
|
|
// Token: 0x0400706F RID: 28783
|
|
[FieldOffset(Offset = "0x70")]
|
|
[Token(Token = "0x400706F")]
|
|
internal CertificateRequest certificateRequest;
|
|
|
|
// Token: 0x04007070 RID: 28784
|
|
[FieldOffset(Offset = "0x78")]
|
|
[Token(Token = "0x4007070")]
|
|
internal short clientCertificateType = (short)((uint)(-1));
|
|
|
|
// Token: 0x04007071 RID: 28785
|
|
[FieldOffset(Offset = "0x80")]
|
|
[Token(Token = "0x4007071")]
|
|
internal Certificate clientCertificate;
|
|
}
|
|
}
|
|
}
|