mirror of
https://git.eden-emu.dev/eden-emu/eden.git
synced 2026-09-27 03:12:02 +00:00
@@ -84,44 +84,7 @@ public:
|
||||
}
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key,
|
||||
FunctionInfo{0, D<&ISslConnection::SetSocketDescriptor>, "SetSocketDescriptor"},
|
||||
FunctionInfo{1, D<&ISslConnection::SetHostName>, "SetHostName"},
|
||||
FunctionInfo{2, D<&ISslConnection::SetVerifyOption>, "SetVerifyOption"},
|
||||
FunctionInfo{3, D<&ISslConnection::SetIoMode>, "SetIoMode"},
|
||||
FunctionInfo{4, D<&ISslConnection::GetSocketDescriptor>, "GetSocketDescriptor"},
|
||||
FunctionInfo{5, D<&ISslConnection::GetHostName>, "GetHostName"},
|
||||
FunctionInfo{6, nullptr, "GetVerifyOption"},
|
||||
FunctionInfo{7, D<&ISslConnection::GetIoMode>, "GetIoMode"},
|
||||
FunctionInfo{8, D<&ISslConnection::DoHandshake>, "DoHandshake"},
|
||||
FunctionInfo{9, &ISslConnection::DoHandshakeGetServerCert, "DoHandshakeGetServerCert"},
|
||||
FunctionInfo{10, D<&ISslConnection::Read>, "Read"},
|
||||
FunctionInfo{11, D<&ISslConnection::Write>, "Write"},
|
||||
FunctionInfo{12, D<&ISslConnection::Pending>, "Pending"},
|
||||
FunctionInfo{13, D<&ISslConnection::Peek>, "Peek"},
|
||||
FunctionInfo{14, D<&ISslConnection::Poll>, "Poll"},
|
||||
FunctionInfo{15, D<&ISslConnection::GetVerifyCertError>, "GetVerifyCertError"},
|
||||
FunctionInfo{16, D<&ISslConnection::GetNeededServerCertBufferSize>, "GetNeededServerCertBufferSize"},
|
||||
FunctionInfo{17, D<&ISslConnection::SetSessionCacheMode>, "SetSessionCacheMode"},
|
||||
FunctionInfo{18, D<&ISslConnection::GetSessionCacheMode>, "GetSessionCacheMode"},
|
||||
FunctionInfo{19, D<&ISslConnection::FlushSessionCache>, "FlushSessionCache"},
|
||||
FunctionInfo{20, D<&ISslConnection::SetRenegotiationMode>, "SetRenegotiationMode"},
|
||||
FunctionInfo{21, D<&ISslConnection::GetRenegotiationMode>, "GetRenegotiationMode"},
|
||||
FunctionInfo{22, D<&ISslConnection::SetOption>, "SetOption"},
|
||||
FunctionInfo{23, D<&ISslConnection::GetOption>, "GetOption"},
|
||||
FunctionInfo{24, nullptr, "GetVerifyCertErrors"},
|
||||
FunctionInfo{25, nullptr, "GetCipherInfo"},
|
||||
FunctionInfo{26, D<&ISslConnection::SetNextAlpnProto>, "SetNextAlpnProto"},
|
||||
FunctionInfo{27, D<&ISslConnection::GetNextAlpnProto>, "GetNextAlpnProto"},
|
||||
FunctionInfo{28, nullptr, "SetDtlsSocketDescriptor"},
|
||||
FunctionInfo{29, nullptr, "GetDtlsHandshakeTimeout"},
|
||||
FunctionInfo{30, nullptr, "SetPrivateOption"},
|
||||
FunctionInfo{31, nullptr, "SetSrtpCiphers"},
|
||||
FunctionInfo{32, nullptr, "GetSrtpCipher"},
|
||||
FunctionInfo{33, nullptr, "ExportKeyingMaterial"},
|
||||
FunctionInfo{34, nullptr, "SetIoTimeout"},
|
||||
FunctionInfo{35, nullptr, "GetIoTimeout"}
|
||||
);
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
|
||||
~ISslConnection() {
|
||||
@@ -429,6 +392,44 @@ private:
|
||||
R_SUCCEED();
|
||||
}
|
||||
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, D<&ISslConnection::SetSocketDescriptor>, "SetSocketDescriptor"},
|
||||
FunctionInfo{1, D<&ISslConnection::SetHostName>, "SetHostName"},
|
||||
FunctionInfo{2, D<&ISslConnection::SetVerifyOption>, "SetVerifyOption"},
|
||||
FunctionInfo{3, D<&ISslConnection::SetIoMode>, "SetIoMode"},
|
||||
FunctionInfo{4, D<&ISslConnection::GetSocketDescriptor>, "GetSocketDescriptor"},
|
||||
FunctionInfo{5, D<&ISslConnection::GetHostName>, "GetHostName"},
|
||||
FunctionInfo{6, nullptr, "GetVerifyOption"},
|
||||
FunctionInfo{7, D<&ISslConnection::GetIoMode>, "GetIoMode"},
|
||||
FunctionInfo{8, D<&ISslConnection::DoHandshake>, "DoHandshake"},
|
||||
FunctionInfo{9, &ISslConnection::DoHandshakeGetServerCert, "DoHandshakeGetServerCert"},
|
||||
FunctionInfo{10, D<&ISslConnection::Read>, "Read"},
|
||||
FunctionInfo{11, D<&ISslConnection::Write>, "Write"},
|
||||
FunctionInfo{12, D<&ISslConnection::Pending>, "Pending"},
|
||||
FunctionInfo{13, D<&ISslConnection::Peek>, "Peek"},
|
||||
FunctionInfo{14, D<&ISslConnection::Poll>, "Poll"},
|
||||
FunctionInfo{15, D<&ISslConnection::GetVerifyCertError>, "GetVerifyCertError"},
|
||||
FunctionInfo{16, D<&ISslConnection::GetNeededServerCertBufferSize>, "GetNeededServerCertBufferSize"},
|
||||
FunctionInfo{17, D<&ISslConnection::SetSessionCacheMode>, "SetSessionCacheMode"},
|
||||
FunctionInfo{18, D<&ISslConnection::GetSessionCacheMode>, "GetSessionCacheMode"},
|
||||
FunctionInfo{19, D<&ISslConnection::FlushSessionCache>, "FlushSessionCache"},
|
||||
FunctionInfo{20, D<&ISslConnection::SetRenegotiationMode>, "SetRenegotiationMode"},
|
||||
FunctionInfo{21, D<&ISslConnection::GetRenegotiationMode>, "GetRenegotiationMode"},
|
||||
FunctionInfo{22, D<&ISslConnection::SetOption>, "SetOption"},
|
||||
FunctionInfo{23, D<&ISslConnection::GetOption>, "GetOption"},
|
||||
FunctionInfo{24, nullptr, "GetVerifyCertErrors"},
|
||||
FunctionInfo{25, nullptr, "GetCipherInfo"},
|
||||
FunctionInfo{26, D<&ISslConnection::SetNextAlpnProto>, "SetNextAlpnProto"},
|
||||
FunctionInfo{27, D<&ISslConnection::GetNextAlpnProto>, "GetNextAlpnProto"},
|
||||
FunctionInfo{28, nullptr, "SetDtlsSocketDescriptor"},
|
||||
FunctionInfo{29, nullptr, "GetDtlsHandshakeTimeout"},
|
||||
FunctionInfo{30, nullptr, "SetPrivateOption"},
|
||||
FunctionInfo{31, nullptr, "SetSrtpCiphers"},
|
||||
FunctionInfo{32, nullptr, "GetSrtpCipher"},
|
||||
FunctionInfo{33, nullptr, "ExportKeyingMaterial"},
|
||||
FunctionInfo{34, nullptr, "SetIoTimeout"},
|
||||
FunctionInfo{35, nullptr, "GetIoTimeout"}
|
||||
);
|
||||
SslVersion ssl_version;
|
||||
std::shared_ptr<SslContextSharedData> shared_data;
|
||||
std::unique_ptr<SSLConnectionBackend> backend;
|
||||
@@ -562,22 +563,10 @@ private:
|
||||
|
||||
class ISslService final : public ServiceFramework<ISslService> {
|
||||
public:
|
||||
explicit ISslService(Core::System& system_)
|
||||
: ServiceFramework{system_, "ssl"}, cert_store{system} {}
|
||||
explicit ISslService(Core::System& system_) : ServiceFramework{system_, "ssl"}, cert_store{system} {}
|
||||
|
||||
FunctionInfoBase const* FindRequest(u32 key) override {
|
||||
return HandlerTableGenerateWithFind(key,
|
||||
FunctionInfo{0, &ISslService::CreateContext, "CreateContext"},
|
||||
FunctionInfo{1, nullptr, "GetContextCount"},
|
||||
FunctionInfo{2, D<&ISslService::GetCertificates>, "GetCertificates"},
|
||||
FunctionInfo{3, D<&ISslService::GetCertificateBufSize>, "GetCertificateBufSize"},
|
||||
FunctionInfo{4, nullptr, "DebugIoctl"},
|
||||
FunctionInfo{5, &ISslService::SetInterfaceVersion, "SetInterfaceVersion"},
|
||||
FunctionInfo{6, nullptr, "FlushSessionCache"},
|
||||
FunctionInfo{7, nullptr, "SetDebugOption"},
|
||||
FunctionInfo{8, nullptr, "GetDebugOption"},
|
||||
FunctionInfo{8, nullptr, "ClearTls12FallbackFlag"}
|
||||
);
|
||||
return HandlerTableGenerateWithFind(key, functions);
|
||||
}
|
||||
|
||||
private:
|
||||
@@ -623,6 +612,18 @@ private:
|
||||
}
|
||||
|
||||
private:
|
||||
static constexpr auto functions = CreateStaticMap(
|
||||
FunctionInfo{0, &ISslService::CreateContext, "CreateContext"},
|
||||
FunctionInfo{1, nullptr, "GetContextCount"},
|
||||
FunctionInfo{2, D<&ISslService::GetCertificates>, "GetCertificates"},
|
||||
FunctionInfo{3, D<&ISslService::GetCertificateBufSize>, "GetCertificateBufSize"},
|
||||
FunctionInfo{4, nullptr, "DebugIoctl"},
|
||||
FunctionInfo{5, &ISslService::SetInterfaceVersion, "SetInterfaceVersion"},
|
||||
FunctionInfo{6, nullptr, "FlushSessionCache"},
|
||||
FunctionInfo{7, nullptr, "SetDebugOption"},
|
||||
FunctionInfo{8, nullptr, "GetDebugOption"},
|
||||
FunctionInfo{8, nullptr, "ClearTls12FallbackFlag"}
|
||||
);
|
||||
CertStore cert_store;
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user