260 lines
9.7 KiB
C#
260 lines
9.7 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using System.Security.Authentication;
|
|
using System.Security.Cryptography.X509Certificates;
|
|
using Cpp2IlInjected;
|
|
using Mono.Net.Security;
|
|
using Mono.Security.Interface;
|
|
using Mono.Util;
|
|
|
|
namespace Mono.Unity
|
|
{
|
|
// Token: 0x0200003A RID: 58
|
|
[Token(Token = "0x200003A")]
|
|
internal class UnityTlsContext : MobileTlsContext
|
|
{
|
|
// Token: 0x060000A1 RID: 161 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60000A1")]
|
|
[Address(RVA = "0x930D40", Offset = "0x92FD40", VA = "0x180930D40")]
|
|
public UnityTlsContext(MobileAuthenticatedStream parent, bool serverMode, string targetHost, SslProtocols enabledProtocols, X509Certificate serverCertificate, X509CertificateCollection clientCertificates, bool askForClientCert)
|
|
{
|
|
}
|
|
|
|
// Token: 0x060000A2 RID: 162 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60000A2")]
|
|
[Address(RVA = "0x92F530", Offset = "0x92E530", VA = "0x18092F530")]
|
|
private unsafe static void ExtractNativeKeyAndChainFromManagedCertificate(X509Certificate cert, UnityTls.unitytls_errorstate* errorState, out UnityTls.unitytls_x509list* nativeCertChain, out UnityTls.unitytls_key* nativeKey)
|
|
{
|
|
}
|
|
|
|
// Token: 0x17000003 RID: 3
|
|
// (get) Token: 0x060000A3 RID: 163 RVA: 0x00002088 File Offset: 0x00000288
|
|
[Token(Token = "0x17000003")]
|
|
public override bool IsAuthenticated
|
|
{
|
|
[Token(Token = "0x60000A3")]
|
|
[Address(RVA = "0x78C660", Offset = "0x78B660", VA = "0x18078C660", Slot = "5")]
|
|
get
|
|
{
|
|
return default(bool);
|
|
}
|
|
}
|
|
|
|
// Token: 0x17000004 RID: 4
|
|
// (get) Token: 0x060000A4 RID: 164 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x17000004")]
|
|
internal override X509Certificate LocalClientCertificate
|
|
{
|
|
[Token(Token = "0x60000A4")]
|
|
[Address(RVA = "0x54F060", Offset = "0x54E060", VA = "0x18054F060", Slot = "9")]
|
|
get
|
|
{
|
|
return null;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060000A5 RID: 165 RVA: 0x000020A0 File Offset: 0x000002A0
|
|
[Token(Token = "0x60000A5")]
|
|
[Address(RVA = "0x930010", Offset = "0x92F010", VA = "0x180930010", Slot = "10")]
|
|
public override ValueTuple<int, bool> Read(byte[] buffer, int offset, int count)
|
|
{
|
|
return default(ValueTuple<int, bool>);
|
|
}
|
|
|
|
// Token: 0x060000A6 RID: 166 RVA: 0x000020B8 File Offset: 0x000002B8
|
|
[Token(Token = "0x60000A6")]
|
|
[Address(RVA = "0x930B60", Offset = "0x92FB60", VA = "0x180930B60", Slot = "11")]
|
|
public override ValueTuple<int, bool> Write(byte[] buffer, int offset, int count)
|
|
{
|
|
return default(ValueTuple<int, bool>);
|
|
}
|
|
|
|
// Token: 0x060000A7 RID: 167 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60000A7")]
|
|
[Address(RVA = "0x9301F0", Offset = "0x92F1F0", VA = "0x1809301F0", Slot = "12")]
|
|
public override void Shutdown()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060000A8 RID: 168 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60000A8")]
|
|
[Address(RVA = "0x92F490", Offset = "0x92E490", VA = "0x18092F490", Slot = "13")]
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
}
|
|
|
|
// Token: 0x060000A9 RID: 169 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60000A9")]
|
|
[Address(RVA = "0x930320", Offset = "0x92F320", VA = "0x180930320", Slot = "6")]
|
|
public override void StartHandshake()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060000AA RID: 170 RVA: 0x000020D0 File Offset: 0x000002D0
|
|
[Token(Token = "0x60000AA")]
|
|
[Address(RVA = "0x92F920", Offset = "0x92E920", VA = "0x18092F920", Slot = "7")]
|
|
public override bool ProcessHandshake()
|
|
{
|
|
return default(bool);
|
|
}
|
|
|
|
// Token: 0x060000AB RID: 171 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60000AB")]
|
|
[Address(RVA = "0x92F7F0", Offset = "0x92E7F0", VA = "0x18092F7F0", Slot = "8")]
|
|
public override void FinishHandshake()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060000AC RID: 172 RVA: 0x000020E8 File Offset: 0x000002E8
|
|
[Token(Token = "0x60000AC")]
|
|
[Address(RVA = "0x930850", Offset = "0x92F850", VA = "0x180930850")]
|
|
[MonoPInvokeCallback(typeof(UnityTls.unitytls_tlsctx_write_callback))]
|
|
private unsafe static IntPtr WriteCallback(void* userData, byte* data, IntPtr bufferLen, UnityTls.unitytls_errorstate* errorState)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
// Token: 0x060000AD RID: 173 RVA: 0x00002100 File Offset: 0x00000300
|
|
[Token(Token = "0x60000AD")]
|
|
[Address(RVA = "0x930970", Offset = "0x92F970", VA = "0x180930970")]
|
|
private unsafe IntPtr WriteCallback(byte* data, IntPtr bufferLen, UnityTls.unitytls_errorstate* errorState)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
// Token: 0x060000AE RID: 174 RVA: 0x00002118 File Offset: 0x00000318
|
|
[Token(Token = "0x60000AE")]
|
|
[Address(RVA = "0x92FC70", Offset = "0x92EC70", VA = "0x18092FC70")]
|
|
[MonoPInvokeCallback(typeof(UnityTls.unitytls_tlsctx_read_callback))]
|
|
private unsafe static IntPtr ReadCallback(void* userData, byte* buffer, IntPtr bufferLen, UnityTls.unitytls_errorstate* errorState)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
// Token: 0x060000AF RID: 175 RVA: 0x00002130 File Offset: 0x00000330
|
|
[Token(Token = "0x60000AF")]
|
|
[Address(RVA = "0x92FD90", Offset = "0x92ED90", VA = "0x18092FD90")]
|
|
private unsafe IntPtr ReadCallback(byte* buffer, IntPtr bufferLen, UnityTls.unitytls_errorstate* errorState)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
// Token: 0x060000B0 RID: 176 RVA: 0x00002148 File Offset: 0x00000348
|
|
[Token(Token = "0x60000B0")]
|
|
[Address(RVA = "0x930590", Offset = "0x92F590", VA = "0x180930590")]
|
|
[MonoPInvokeCallback(typeof(UnityTls.unitytls_tlsctx_x509verify_callback))]
|
|
private unsafe static UnityTls.unitytls_x509verify_result VerifyCallback(void* userData, UnityTls.unitytls_x509list_ref chain, UnityTls.unitytls_errorstate* errorState)
|
|
{
|
|
return UnityTls.unitytls_x509verify_result.UNITYTLS_X509VERIFY_SUCCESS;
|
|
}
|
|
|
|
// Token: 0x060000B1 RID: 177 RVA: 0x00002160 File Offset: 0x00000360
|
|
[Token(Token = "0x60000B1")]
|
|
[Address(RVA = "0x9306B0", Offset = "0x92F6B0", VA = "0x1809306B0")]
|
|
private unsafe UnityTls.unitytls_x509verify_result VerifyCallback(UnityTls.unitytls_x509list_ref chain, UnityTls.unitytls_errorstate* errorState)
|
|
{
|
|
return UnityTls.unitytls_x509verify_result.UNITYTLS_X509VERIFY_SUCCESS;
|
|
}
|
|
|
|
// Token: 0x060000B2 RID: 178 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60000B2")]
|
|
[Address(RVA = "0x92EF40", Offset = "0x92DF40", VA = "0x18092EF40")]
|
|
[MonoPInvokeCallback(typeof(UnityTls.unitytls_tlsctx_certificate_callback))]
|
|
private unsafe static void CertificateCallback(void* userData, UnityTls.unitytls_tlsctx* ctx, byte* cn, IntPtr cnLen, UnityTls.unitytls_x509name* caList, IntPtr caListLen, UnityTls.unitytls_x509list_ref* chain, UnityTls.unitytls_key_ref* key, UnityTls.unitytls_errorstate* errorState)
|
|
{
|
|
}
|
|
|
|
// Token: 0x060000B3 RID: 179 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60000B3")]
|
|
[Address(RVA = "0x92F0B0", Offset = "0x92E0B0", VA = "0x18092F0B0")]
|
|
private unsafe void CertificateCallback(UnityTls.unitytls_tlsctx* ctx, byte* cn, IntPtr cnLen, UnityTls.unitytls_x509name* caList, IntPtr caListLen, UnityTls.unitytls_x509list_ref* chain, UnityTls.unitytls_key_ref* key, UnityTls.unitytls_errorstate* errorState)
|
|
{
|
|
}
|
|
|
|
// Token: 0x04000058 RID: 88
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x4000058")]
|
|
private unsafe UnityTls.unitytls_tlsctx* tlsContext;
|
|
|
|
// Token: 0x04000059 RID: 89
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x4000059")]
|
|
private unsafe UnityTls.unitytls_x509list* requestedClientCertChain;
|
|
|
|
// Token: 0x0400005A RID: 90
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x400005A")]
|
|
private unsafe UnityTls.unitytls_key* requestedClientKey;
|
|
|
|
// Token: 0x0400005B RID: 91
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x70")]
|
|
[Token(Token = "0x400005B")]
|
|
private UnityTls.unitytls_tlsctx_read_callback readCallback;
|
|
|
|
// Token: 0x0400005C RID: 92
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x78")]
|
|
[Token(Token = "0x400005C")]
|
|
private UnityTls.unitytls_tlsctx_write_callback writeCallback;
|
|
|
|
// Token: 0x0400005D RID: 93
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x80")]
|
|
[Token(Token = "0x400005D")]
|
|
private UnityTls.unitytls_tlsctx_certificate_callback certificateCallback;
|
|
|
|
// Token: 0x0400005E RID: 94
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x88")]
|
|
[Token(Token = "0x400005E")]
|
|
private UnityTls.unitytls_tlsctx_x509verify_callback verifyCallback;
|
|
|
|
// Token: 0x0400005F RID: 95
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x90")]
|
|
[Token(Token = "0x400005F")]
|
|
private X509Certificate localClientCertificate;
|
|
|
|
// Token: 0x04000060 RID: 96
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x98")]
|
|
[Token(Token = "0x4000060")]
|
|
private X509Certificate remoteCertificate;
|
|
|
|
// Token: 0x04000061 RID: 97
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0xA0")]
|
|
[Token(Token = "0x4000061")]
|
|
private MonoTlsConnectionInfo connectioninfo;
|
|
|
|
// Token: 0x04000062 RID: 98
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0xA8")]
|
|
[Token(Token = "0x4000062")]
|
|
private bool isAuthenticated;
|
|
|
|
// Token: 0x04000063 RID: 99
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0xA9")]
|
|
[Token(Token = "0x4000063")]
|
|
private bool hasContext;
|
|
|
|
// Token: 0x04000064 RID: 100
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0xAA")]
|
|
[Token(Token = "0x4000064")]
|
|
private bool closedGraceful;
|
|
|
|
// Token: 0x04000065 RID: 101
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0xB0")]
|
|
[Token(Token = "0x4000065")]
|
|
private byte[] writeBuffer;
|
|
|
|
// Token: 0x04000066 RID: 102
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0xB8")]
|
|
[Token(Token = "0x4000066")]
|
|
private byte[] readBuffer;
|
|
|
|
// Token: 0x04000067 RID: 103
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0xC0")]
|
|
[Token(Token = "0x4000067")]
|
|
private GCHandle handle;
|
|
|
|
// Token: 0x04000068 RID: 104
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0xC8")]
|
|
[Token(Token = "0x4000068")]
|
|
private Exception lastException;
|
|
}
|
|
}
|