2014-10-30 01:38:33 +00:00
|
|
|
// Copyright 2014 Citra Emulator Project
|
2014-12-17 05:38:14 +00:00
|
|
|
// Licensed under GPLv2 or any later version
|
2014-10-30 01:38:33 +00:00
|
|
|
// Refer to the license.txt file included.
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
2018-06-22 15:52:24 +00:00
|
|
|
#include <random>
|
2014-10-30 01:38:33 +00:00
|
|
|
#include "core/hle/service/service.h"
|
|
|
|
|
2018-10-05 14:59:43 +00:00
|
|
|
namespace Core {
|
|
|
|
class System;
|
|
|
|
}
|
|
|
|
|
2018-09-22 12:23:08 +00:00
|
|
|
namespace Service::SSL {
|
2014-10-30 01:38:33 +00:00
|
|
|
|
2018-06-22 15:52:24 +00:00
|
|
|
class SSL_C final : public ServiceFramework<SSL_C> {
|
2014-10-30 01:38:33 +00:00
|
|
|
public:
|
2016-12-10 12:51:50 +00:00
|
|
|
SSL_C();
|
2014-12-21 19:52:10 +00:00
|
|
|
|
2018-06-22 15:52:24 +00:00
|
|
|
private:
|
|
|
|
void Initialize(Kernel::HLERequestContext& ctx);
|
|
|
|
void GenerateRandomData(Kernel::HLERequestContext& ctx);
|
|
|
|
|
|
|
|
// TODO: Implement a proper CSPRNG in the future when actual security is needed
|
|
|
|
std::mt19937 rand_gen;
|
2014-10-30 01:38:33 +00:00
|
|
|
};
|
|
|
|
|
2018-10-05 14:59:43 +00:00
|
|
|
void InstallInterfaces(Core::System& system);
|
2018-06-22 15:52:24 +00:00
|
|
|
|
2018-09-22 12:23:08 +00:00
|
|
|
} // namespace Service::SSL
|