700 lines
48 KiB
C#
700 lines
48 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.IO;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls
|
|
{
|
|
// Token: 0x02001C5A RID: 7258
|
|
[Token(Token = "0x2001C5A")]
|
|
public abstract class TlsExtensionsUtilities
|
|
{
|
|
// Token: 0x0600B2B1 RID: 45745 RVA: 0x00269FAC File Offset: 0x002681AC
|
|
[Token(Token = "0x600B2B1")]
|
|
[Address(RVA = "0x4A8830", Offset = "0x4A7830", VA = "0x1804A8830")]
|
|
public static IDictionary EnsureExtensionsInitialised(IDictionary extensions)
|
|
{
|
|
if (extensions == 0)
|
|
{
|
|
return Platform.CreateHashtable();
|
|
}
|
|
return extensions;
|
|
}
|
|
|
|
// Token: 0x0600B2B2 RID: 45746 RVA: 0x00269FC8 File Offset: 0x002681C8
|
|
[Token(Token = "0x600B2B2")]
|
|
[Address(RVA = "0x4A7910", Offset = "0x4A6910", VA = "0x1804A7910")]
|
|
public static void AddClientCertificateTypeExtensionClient(IDictionary extensions, byte[] certificateTypes)
|
|
{
|
|
byte[] array = TlsExtensionsUtilities.CreateCertificateTypeExtensionClient(certificateTypes);
|
|
}
|
|
|
|
// Token: 0x0600B2B3 RID: 45747 RVA: 0x00269FE4 File Offset: 0x002681E4
|
|
[Token(Token = "0x600B2B3")]
|
|
[Address(RVA = "0x4A79A0", Offset = "0x4A69A0", VA = "0x1804A79A0")]
|
|
public static void AddClientCertificateTypeExtensionServer(IDictionary extensions, byte certificateType)
|
|
{
|
|
byte[] array = TlsUtilities.EncodeUint8(certificateType);
|
|
}
|
|
|
|
// Token: 0x0600B2B4 RID: 45748 RVA: 0x0026A000 File Offset: 0x00268200
|
|
[Token(Token = "0x600B2B4")]
|
|
[Address(RVA = "0x4A7A70", Offset = "0x4A6A70", VA = "0x1804A7A70")]
|
|
public static void AddEncryptThenMacExtension(IDictionary extensions)
|
|
{
|
|
byte[] emptyBytes = TlsUtilities.EmptyBytes;
|
|
}
|
|
|
|
// Token: 0x0600B2B5 RID: 45749 RVA: 0x0026A01C File Offset: 0x0026821C
|
|
[Token(Token = "0x600B2B5")]
|
|
[Address(RVA = "0x4A7B40", Offset = "0x4A6B40", VA = "0x1804A7B40")]
|
|
public static void AddExtendedMasterSecretExtension(IDictionary extensions)
|
|
{
|
|
byte[] emptyBytes = TlsUtilities.EmptyBytes;
|
|
}
|
|
|
|
// Token: 0x0600B2B6 RID: 45750 RVA: 0x0026A038 File Offset: 0x00268238
|
|
[Token(Token = "0x600B2B6")]
|
|
[Address(RVA = "0x4A7C10", Offset = "0x4A6C10", VA = "0x1804A7C10")]
|
|
public static void AddHeartbeatExtension(IDictionary extensions, HeartbeatExtension heartbeatExtension)
|
|
{
|
|
while (heartbeatExtension == 0)
|
|
{
|
|
}
|
|
MemoryStream memoryStream = new MemoryStream();
|
|
byte mode = heartbeatExtension.Mode;
|
|
}
|
|
|
|
// Token: 0x0600B2B7 RID: 45751 RVA: 0x0026A058 File Offset: 0x00268258
|
|
[Token(Token = "0x600B2B7")]
|
|
[Address(RVA = "0x4A7D40", Offset = "0x4A6D40", VA = "0x1804A7D40")]
|
|
public static void AddMaxFragmentLengthExtension(IDictionary extensions, byte maxFragmentLength)
|
|
{
|
|
byte[] array = TlsUtilities.EncodeUint8(maxFragmentLength);
|
|
}
|
|
|
|
// Token: 0x0600B2B8 RID: 45752 RVA: 0x0026A074 File Offset: 0x00268274
|
|
[Token(Token = "0x600B2B8")]
|
|
[Address(RVA = "0x4A7E10", Offset = "0x4A6E10", VA = "0x1804A7E10")]
|
|
public static void AddPaddingExtension(IDictionary extensions, int dataLength)
|
|
{
|
|
TlsUtilities.CheckUint16(dataLength);
|
|
byte[] array = new byte[dataLength];
|
|
}
|
|
|
|
// Token: 0x0600B2B9 RID: 45753 RVA: 0x0026A094 File Offset: 0x00268294
|
|
[Token(Token = "0x600B2B9")]
|
|
[Address(RVA = "0x4A7EF0", Offset = "0x4A6EF0", VA = "0x1804A7EF0")]
|
|
public static void AddServerCertificateTypeExtensionClient(IDictionary extensions, byte[] certificateTypes)
|
|
{
|
|
byte[] array = TlsExtensionsUtilities.CreateCertificateTypeExtensionClient(certificateTypes);
|
|
}
|
|
|
|
// Token: 0x0600B2BA RID: 45754 RVA: 0x0026A0B0 File Offset: 0x002682B0
|
|
[Token(Token = "0x600B2BA")]
|
|
[Address(RVA = "0x4A7F80", Offset = "0x4A6F80", VA = "0x1804A7F80")]
|
|
public static void AddServerCertificateTypeExtensionServer(IDictionary extensions, byte certificateType)
|
|
{
|
|
byte[] array = TlsUtilities.EncodeUint8(certificateType);
|
|
}
|
|
|
|
// Token: 0x0600B2BB RID: 45755 RVA: 0x0026A0CC File Offset: 0x002682CC
|
|
[Token(Token = "0x600B2BB")]
|
|
[Address(RVA = "0x4A8050", Offset = "0x4A7050", VA = "0x1804A8050")]
|
|
public static void AddServerNameExtension(IDictionary extensions, ServerNameList serverNameList)
|
|
{
|
|
while (serverNameList == 0)
|
|
{
|
|
}
|
|
MemoryStream memoryStream = new MemoryStream();
|
|
IList serverNames = serverNameList.ServerNames;
|
|
}
|
|
|
|
// Token: 0x0600B2BC RID: 45756 RVA: 0x0026A0EC File Offset: 0x002682EC
|
|
[Token(Token = "0x600B2BC")]
|
|
[Address(RVA = "0x4A8180", Offset = "0x4A7180", VA = "0x1804A8180")]
|
|
public static void AddStatusRequestExtension(IDictionary extensions, CertificateStatusRequest statusRequest)
|
|
{
|
|
while (statusRequest == 0)
|
|
{
|
|
}
|
|
MemoryStream memoryStream = new MemoryStream();
|
|
OcspStatusRequest ocspStatusRequest = statusRequest.GetOcspStatusRequest();
|
|
}
|
|
|
|
// Token: 0x0600B2BD RID: 45757 RVA: 0x0026A10C File Offset: 0x0026830C
|
|
[Token(Token = "0x600B2BD")]
|
|
[Address(RVA = "0x4A82B0", Offset = "0x4A72B0", VA = "0x1804A82B0")]
|
|
public static void AddTruncatedHMacExtension(IDictionary extensions)
|
|
{
|
|
byte[] emptyBytes = TlsUtilities.EmptyBytes;
|
|
}
|
|
|
|
// Token: 0x0600B2BE RID: 45758 RVA: 0x0026A128 File Offset: 0x00268328
|
|
[Token(Token = "0x600B2BE")]
|
|
[Address(RVA = "0x4A8890", Offset = "0x4A7890", VA = "0x1804A8890")]
|
|
public static byte[] GetClientCertificateTypeExtensionClient(IDictionary extensions)
|
|
{
|
|
byte[] extensionData = TlsUtilities.GetExtensionData(extensions, 19);
|
|
if (extensionData == 0)
|
|
{
|
|
return extensionData;
|
|
}
|
|
return TlsExtensionsUtilities.ReadCertificateTypeExtensionClient(extensionData);
|
|
}
|
|
|
|
// Token: 0x0600B2BF RID: 45759 RVA: 0x0026A14C File Offset: 0x0026834C
|
|
[Token(Token = "0x600B2BF")]
|
|
[Address(RVA = "0x4A8900", Offset = "0x4A7900", VA = "0x1804A8900")]
|
|
public static short GetClientCertificateTypeExtensionServer(IDictionary extensions)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B2BF)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int16 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsExtensionsUtilities::GetClientCertificateTypeExtensionServer(System.Collections.IDictionary)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_0D:
|
|
stloc:uint8(var_1_13, call:uint8(TlsUtilities::DecodeUint8, ldloc:uint8[](var_0_08)))
|
|
}
|
|
|
|
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: 0x0600B2C0 RID: 45760 RVA: 0x0026A16C File Offset: 0x0026836C
|
|
[Token(Token = "0x600B2C0")]
|
|
[Address(RVA = "0x4A89B0", Offset = "0x4A79B0", VA = "0x1804A89B0")]
|
|
public static HeartbeatExtension GetHeartbeatExtension(IDictionary extensions)
|
|
{
|
|
byte[] extensionData = TlsUtilities.GetExtensionData(extensions, 15);
|
|
if (extensionData == 0)
|
|
{
|
|
}
|
|
int num;
|
|
MemoryStream memoryStream = new MemoryStream(extensionData, num != 0);
|
|
num = 0;
|
|
byte b = TlsUtilities.ReadUint8(memoryStream);
|
|
HeartbeatExtension heartbeatExtension;
|
|
heartbeatExtension.mMode = b;
|
|
TlsProtocol.AssertEmpty(memoryStream);
|
|
return heartbeatExtension;
|
|
}
|
|
|
|
// Token: 0x0600B2C1 RID: 45761 RVA: 0x0026A1B8 File Offset: 0x002683B8
|
|
[Token(Token = "0x600B2C1")]
|
|
[Address(RVA = "0x4A8B70", Offset = "0x4A7B70", VA = "0x1804A8B70")]
|
|
public static short GetMaxFragmentLengthExtension(IDictionary extensions)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B2C1)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int16 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsExtensionsUtilities::GetMaxFragmentLengthExtension(System.Collections.IDictionary)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_0C:
|
|
stloc:uint8(var_1_12, call:uint8(TlsUtilities::DecodeUint8, ldloc:uint8[](var_0_07)))
|
|
}
|
|
|
|
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: 0x0600B2C2 RID: 45762 RVA: 0x0026A1D8 File Offset: 0x002683D8
|
|
[Token(Token = "0x600B2C2")]
|
|
[Address(RVA = "0x4A8C20", Offset = "0x4A7C20", VA = "0x1804A8C20")]
|
|
public static int GetPaddingExtension(IDictionary extensions)
|
|
{
|
|
byte[] extensionData = TlsUtilities.GetExtensionData(extensions, 21);
|
|
if (extensionData == 0)
|
|
{
|
|
}
|
|
int length = extensionData.Length;
|
|
int num = 0;
|
|
if (num < length)
|
|
{
|
|
num++;
|
|
}
|
|
return length;
|
|
}
|
|
|
|
// Token: 0x0600B2C3 RID: 45763 RVA: 0x0026A204 File Offset: 0x00268404
|
|
[Token(Token = "0x600B2C3")]
|
|
[Address(RVA = "0x4A8D00", Offset = "0x4A7D00", VA = "0x1804A8D00")]
|
|
public static byte[] GetServerCertificateTypeExtensionClient(IDictionary extensions)
|
|
{
|
|
byte[] extensionData = TlsUtilities.GetExtensionData(extensions, 20);
|
|
if (extensionData == 0)
|
|
{
|
|
return extensionData;
|
|
}
|
|
return TlsExtensionsUtilities.ReadCertificateTypeExtensionClient(extensionData);
|
|
}
|
|
|
|
// Token: 0x0600B2C4 RID: 45764 RVA: 0x0026A228 File Offset: 0x00268428
|
|
[Token(Token = "0x600B2C4")]
|
|
[Address(RVA = "0x4A8D70", Offset = "0x4A7D70", VA = "0x1804A8D70")]
|
|
public static short GetServerCertificateTypeExtensionServer(IDictionary extensions)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B2C4)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int16 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsExtensionsUtilities::GetServerCertificateTypeExtensionServer(System.Collections.IDictionary)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_0D:
|
|
stloc:uint8(var_1_13, call:uint8(TlsUtilities::DecodeUint8, ldloc:uint8[](var_0_08)))
|
|
}
|
|
|
|
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: 0x0600B2C5 RID: 45765 RVA: 0x0026A248 File Offset: 0x00268448
|
|
[Token(Token = "0x600B2C5")]
|
|
[Address(RVA = "0x4A8E20", Offset = "0x4A7E20", VA = "0x1804A8E20")]
|
|
public static ServerNameList GetServerNameExtension(IDictionary extensions)
|
|
{
|
|
int num = 0;
|
|
byte[] extensionData = TlsUtilities.GetExtensionData(extensions, num);
|
|
if (extensionData == 0)
|
|
{
|
|
}
|
|
int num2;
|
|
MemoryStream memoryStream = new MemoryStream(extensionData, num2 != 0);
|
|
num2 = 0;
|
|
ServerNameList serverNameList = ServerNameList.Parse(memoryStream);
|
|
TlsProtocol.AssertEmpty(memoryStream);
|
|
return serverNameList;
|
|
}
|
|
|
|
// Token: 0x0600B2C6 RID: 45766 RVA: 0x0026A280 File Offset: 0x00268480
|
|
[Token(Token = "0x600B2C6")]
|
|
[Address(RVA = "0x4A8EF0", Offset = "0x4A7EF0", VA = "0x1804A8EF0")]
|
|
public static CertificateStatusRequest GetStatusRequestExtension(IDictionary extensions)
|
|
{
|
|
byte[] extensionData = TlsUtilities.GetExtensionData(extensions, 5);
|
|
if (extensionData == 0)
|
|
{
|
|
}
|
|
int num;
|
|
MemoryStream memoryStream = new MemoryStream(extensionData, num != 0);
|
|
num = 0;
|
|
CertificateStatusRequest certificateStatusRequest = CertificateStatusRequest.Parse(memoryStream);
|
|
TlsProtocol.AssertEmpty(memoryStream);
|
|
return certificateStatusRequest;
|
|
}
|
|
|
|
// Token: 0x0600B2C7 RID: 45767 RVA: 0x0026A2B4 File Offset: 0x002684B4
|
|
[Token(Token = "0x600B2C7")]
|
|
[Address(RVA = "0x4A8FC0", Offset = "0x4A7FC0", VA = "0x1804A8FC0")]
|
|
public static bool HasEncryptThenMacExtension(IDictionary extensions)
|
|
{
|
|
byte[] extensionData = TlsUtilities.GetExtensionData(extensions, 22);
|
|
if (extensionData == 0)
|
|
{
|
|
}
|
|
return TlsExtensionsUtilities.ReadEmptyExtensionData(extensionData);
|
|
}
|
|
|
|
// Token: 0x0600B2C8 RID: 45768 RVA: 0x0026A2D4 File Offset: 0x002684D4
|
|
[Token(Token = "0x600B2C8")]
|
|
[Address(RVA = "0x4A9030", Offset = "0x4A8030", VA = "0x1804A9030")]
|
|
public static bool HasExtendedMasterSecretExtension(IDictionary extensions)
|
|
{
|
|
byte[] extensionData = TlsUtilities.GetExtensionData(extensions, 23);
|
|
if (extensionData == 0)
|
|
{
|
|
}
|
|
return TlsExtensionsUtilities.ReadEmptyExtensionData(extensionData);
|
|
}
|
|
|
|
// Token: 0x0600B2C9 RID: 45769 RVA: 0x0026A2F4 File Offset: 0x002684F4
|
|
[Token(Token = "0x600B2C9")]
|
|
[Address(RVA = "0x4A90A0", Offset = "0x4A80A0", VA = "0x1804A90A0")]
|
|
public static bool HasTruncatedHMacExtension(IDictionary extensions)
|
|
{
|
|
byte[] extensionData = TlsUtilities.GetExtensionData(extensions, 4);
|
|
if (extensionData == 0)
|
|
{
|
|
}
|
|
return TlsExtensionsUtilities.ReadEmptyExtensionData(extensionData);
|
|
}
|
|
|
|
// Token: 0x0600B2CA RID: 45770 RVA: 0x0026A314 File Offset: 0x00268514
|
|
[Token(Token = "0x600B2CA")]
|
|
[Address(RVA = "0x4A8380", Offset = "0x4A7380", VA = "0x1804A8380")]
|
|
public static byte[] CreateCertificateTypeExtensionClient(byte[] certificateTypes)
|
|
{
|
|
while (certificateTypes == 0 || certificateTypes.Length > 254)
|
|
{
|
|
}
|
|
return TlsUtilities.EncodeUint8ArrayWithUint8Length(certificateTypes);
|
|
}
|
|
|
|
// Token: 0x0600B2CB RID: 45771 RVA: 0x0026A338 File Offset: 0x00268538
|
|
[Token(Token = "0x600B2CB")]
|
|
[Address(RVA = "0x4A8410", Offset = "0x4A7410", VA = "0x1804A8410")]
|
|
public static byte[] CreateCertificateTypeExtensionServer(byte certificateType)
|
|
{
|
|
return TlsUtilities.EncodeUint8(certificateType);
|
|
}
|
|
|
|
// Token: 0x0600B2CC RID: 45772 RVA: 0x0026A34C File Offset: 0x0026854C
|
|
[Token(Token = "0x600B2CC")]
|
|
[Address(RVA = "0x4A8470", Offset = "0x4A7470", VA = "0x1804A8470")]
|
|
public static byte[] CreateEmptyExtensionData()
|
|
{
|
|
return TlsUtilities.EmptyBytes;
|
|
}
|
|
|
|
// Token: 0x0600B2CD RID: 45773 RVA: 0x0026A360 File Offset: 0x00268560
|
|
[Token(Token = "0x600B2CD")]
|
|
[Address(RVA = "0x4A84D0", Offset = "0x4A74D0", VA = "0x1804A84D0")]
|
|
public static byte[] CreateEncryptThenMacExtension()
|
|
{
|
|
return TlsUtilities.EmptyBytes;
|
|
}
|
|
|
|
// Token: 0x0600B2CE RID: 45774 RVA: 0x0026A374 File Offset: 0x00268574
|
|
[Token(Token = "0x600B2CE")]
|
|
[Address(RVA = "0x4A84D0", Offset = "0x4A74D0", VA = "0x1804A84D0")]
|
|
public static byte[] CreateExtendedMasterSecretExtension()
|
|
{
|
|
return TlsUtilities.EmptyBytes;
|
|
}
|
|
|
|
// Token: 0x0600B2CF RID: 45775 RVA: 0x0026A388 File Offset: 0x00268588
|
|
[Token(Token = "0x600B2CF")]
|
|
[Address(RVA = "0x4A8530", Offset = "0x4A7530", VA = "0x1804A8530")]
|
|
public static byte[] CreateHeartbeatExtension(HeartbeatExtension heartbeatExtension)
|
|
{
|
|
while (heartbeatExtension == 0)
|
|
{
|
|
}
|
|
MemoryStream memoryStream = new MemoryStream();
|
|
byte mode = heartbeatExtension.Mode;
|
|
((IDisposable)memoryStream).Dispose();
|
|
return mode;
|
|
}
|
|
|
|
// Token: 0x0600B2D0 RID: 45776 RVA: 0x0026A3B0 File Offset: 0x002685B0
|
|
[Token(Token = "0x600B2D0")]
|
|
[Address(RVA = "0x4A85F0", Offset = "0x4A75F0", VA = "0x1804A85F0")]
|
|
public static byte[] CreateMaxFragmentLengthExtension(byte maxFragmentLength)
|
|
{
|
|
return TlsUtilities.EncodeUint8(maxFragmentLength);
|
|
}
|
|
|
|
// Token: 0x0600B2D1 RID: 45777 RVA: 0x0026A3C4 File Offset: 0x002685C4
|
|
[Token(Token = "0x600B2D1")]
|
|
[Address(RVA = "0x4A8650", Offset = "0x4A7650", VA = "0x1804A8650")]
|
|
public static byte[] CreatePaddingExtension(int dataLength)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B2D1)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Byte[] BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsExtensionsUtilities::CreatePaddingExtension(System.Int32)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
Block_0:
|
|
call:void(TlsUtilities::CheckUint16, ldloc:int32(dataLength))
|
|
}
|
|
|
|
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: 0x0600B2D2 RID: 45778 RVA: 0x0026A3D8 File Offset: 0x002685D8
|
|
[Token(Token = "0x600B2D2")]
|
|
[Address(RVA = "0x4A86B0", Offset = "0x4A76B0", VA = "0x1804A86B0")]
|
|
public static byte[] CreateServerNameExtension(ServerNameList serverNameList)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B2D2)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Byte[] BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsExtensionsUtilities::CreateServerNameExtension(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.ServerNameList)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
Block_0:
|
|
stloc:MemoryStream(var_0_09, newobj:MemoryStream(MemoryStream::.ctor))
|
|
stloc:IList(var_1_10, callvirtgetter:IList(ServerNameList::get_ServerNames, ldloc:ServerNameList(serverNameList)))
|
|
call:void(IDisposable::Dispose, ldloc:MemoryStream[exp:IDisposable](var_0_09))
|
|
}
|
|
|
|
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: 0x0600B2D3 RID: 45779 RVA: 0x0026A3FC File Offset: 0x002685FC
|
|
[Token(Token = "0x600B2D3")]
|
|
[Address(RVA = "0x4A8770", Offset = "0x4A7770", VA = "0x1804A8770")]
|
|
public static byte[] CreateStatusRequestExtension(CertificateStatusRequest statusRequest)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B2D3)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Byte[] BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsExtensionsUtilities::CreateStatusRequestExtension(BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.CertificateStatusRequest)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
Block_0:
|
|
stloc:MemoryStream(var_0_09, newobj:MemoryStream(MemoryStream::.ctor))
|
|
stloc:OcspStatusRequest(var_1_10, callvirt:OcspStatusRequest(CertificateStatusRequest::GetOcspStatusRequest, ldloc:CertificateStatusRequest(statusRequest)))
|
|
call:void(IDisposable::Dispose, ldloc:MemoryStream[exp:IDisposable](var_0_09))
|
|
}
|
|
|
|
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: 0x0600B2D4 RID: 45780 RVA: 0x0026A420 File Offset: 0x00268620
|
|
[Token(Token = "0x600B2D4")]
|
|
[Address(RVA = "0x4A84D0", Offset = "0x4A74D0", VA = "0x1804A84D0")]
|
|
public static byte[] CreateTruncatedHMacExtension()
|
|
{
|
|
return TlsUtilities.EmptyBytes;
|
|
}
|
|
|
|
// Token: 0x0600B2D5 RID: 45781 RVA: 0x0026A434 File Offset: 0x00268634
|
|
[Token(Token = "0x600B2D5")]
|
|
[Address(RVA = "0x4A9200", Offset = "0x4A8200", VA = "0x1804A9200")]
|
|
private static bool ReadEmptyExtensionData(byte[] extensionData)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B2D5)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Boolean BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsExtensionsUtilities::ReadEmptyExtensionData(System.Byte[])
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_0F:
|
|
stloc:ArgumentNullException(var_0_19, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("extensionData")))
|
|
}
|
|
|
|
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: 0x0600B2D6 RID: 45782 RVA: 0x0026A45C File Offset: 0x0026865C
|
|
[Token(Token = "0x600B2D6")]
|
|
[Address(RVA = "0x4A9110", Offset = "0x4A8110", VA = "0x1804A9110")]
|
|
public static byte[] ReadCertificateTypeExtensionClient(byte[] extensionData)
|
|
{
|
|
return TlsUtilities.DecodeUint8ArrayWithUint8Length(extensionData);
|
|
}
|
|
|
|
// Token: 0x0600B2D7 RID: 45783 RVA: 0x0026A470 File Offset: 0x00268670
|
|
[Token(Token = "0x600B2D7")]
|
|
[Address(RVA = "0x4A91A0", Offset = "0x4A81A0", VA = "0x1804A91A0")]
|
|
public static byte ReadCertificateTypeExtensionServer(byte[] extensionData)
|
|
{
|
|
return TlsUtilities.DecodeUint8(extensionData);
|
|
}
|
|
|
|
// Token: 0x0600B2D8 RID: 45784 RVA: 0x0026A484 File Offset: 0x00268684
|
|
[Token(Token = "0x600B2D8")]
|
|
[Address(RVA = "0x4A92A0", Offset = "0x4A82A0", VA = "0x1804A92A0")]
|
|
public static bool ReadEncryptThenMacExtension(byte[] extensionData)
|
|
{
|
|
return TlsExtensionsUtilities.ReadEmptyExtensionData(extensionData);
|
|
}
|
|
|
|
// Token: 0x0600B2D9 RID: 45785 RVA: 0x0026A498 File Offset: 0x00268698
|
|
[Token(Token = "0x600B2D9")]
|
|
[Address(RVA = "0x4A92A0", Offset = "0x4A82A0", VA = "0x1804A92A0")]
|
|
public static bool ReadExtendedMasterSecretExtension(byte[] extensionData)
|
|
{
|
|
return TlsExtensionsUtilities.ReadEmptyExtensionData(extensionData);
|
|
}
|
|
|
|
// Token: 0x0600B2DA RID: 45786 RVA: 0x0026A4AC File Offset: 0x002686AC
|
|
[Token(Token = "0x600B2DA")]
|
|
[Address(RVA = "0x4A92B0", Offset = "0x4A82B0", VA = "0x1804A92B0")]
|
|
public static HeartbeatExtension ReadHeartbeatExtension(byte[] extensionData)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B2DA)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.HeartbeatExtension BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsExtensionsUtilities::ReadHeartbeatExtension(System.Byte[])
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_24:
|
|
stloc:ArgumentNullException(var_4_2E, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("extensionData")))
|
|
stloc:ArgumentException(var_5_3F, newobj:ArgumentException(ArgumentException::.ctor, ldstr:string("not a valid HeartbeatMode value"), ldstr:string("mode")))
|
|
}
|
|
|
|
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: 0x0600B2DB RID: 45787 RVA: 0x0026A4FC File Offset: 0x002686FC
|
|
[Token(Token = "0x600B2DB")]
|
|
[Address(RVA = "0x4A9460", Offset = "0x4A8460", VA = "0x1804A9460")]
|
|
public static byte ReadMaxFragmentLengthExtension(byte[] extensionData)
|
|
{
|
|
return TlsUtilities.DecodeUint8(extensionData);
|
|
}
|
|
|
|
// Token: 0x0600B2DC RID: 45788 RVA: 0x0026A510 File Offset: 0x00268710
|
|
[Token(Token = "0x600B2DC")]
|
|
[Address(RVA = "0x4A94C0", Offset = "0x4A84C0", VA = "0x1804A94C0")]
|
|
public static int ReadPaddingExtension(byte[] extensionData)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B2DC)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Int32 BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsExtensionsUtilities::ReadPaddingExtension(System.Byte[])
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_17:
|
|
stloc:ArgumentNullException(var_2_21, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("extensionData")))
|
|
}
|
|
|
|
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: 0x0600B2DD RID: 45789 RVA: 0x0026A540 File Offset: 0x00268740
|
|
[Token(Token = "0x600B2DD")]
|
|
[Address(RVA = "0x4A9580", Offset = "0x4A8580", VA = "0x1804A9580")]
|
|
public static ServerNameList ReadServerNameExtension(byte[] extensionData)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B2DD)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.ServerNameList BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsExtensionsUtilities::ReadServerNameExtension(System.Byte[])
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_1D:
|
|
stloc:ArgumentNullException(var_3_27, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("extensionData")))
|
|
}
|
|
|
|
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: 0x0600B2DE RID: 45790 RVA: 0x0026A574 File Offset: 0x00268774
|
|
[Token(Token = "0x600B2DE")]
|
|
[Address(RVA = "0x4A9630", Offset = "0x4A8630", VA = "0x1804A9630")]
|
|
public static CertificateStatusRequest ReadStatusRequestExtension(byte[] extensionData)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (0600B2DE)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.CertificateStatusRequest BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Tls.TlsExtensionsUtilities::ReadStatusRequestExtension(System.Byte[])
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
IL_1D:
|
|
stloc:ArgumentNullException(var_3_27, newobj:ArgumentNullException(ArgumentNullException::.ctor, ldstr:string("extensionData")))
|
|
}
|
|
|
|
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: 0x0600B2DF RID: 45791 RVA: 0x0026A5A8 File Offset: 0x002687A8
|
|
[Token(Token = "0x600B2DF")]
|
|
[Address(RVA = "0x4A92A0", Offset = "0x4A82A0", VA = "0x1804A92A0")]
|
|
public static bool ReadTruncatedHMacExtension(byte[] extensionData)
|
|
{
|
|
return TlsExtensionsUtilities.ReadEmptyExtensionData(extensionData);
|
|
}
|
|
|
|
// Token: 0x0600B2E0 RID: 45792 RVA: 0x0026A5BC File Offset: 0x002687BC
|
|
[Token(Token = "0x600B2E0")]
|
|
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
|
|
protected TlsExtensionsUtilities()
|
|
{
|
|
}
|
|
}
|
|
}
|