From 3f5dfc4d96ceb58747957ea32b95970093b9f5ac Mon Sep 17 00:00:00 2001 From: Lioncash Date: Thu, 26 Jul 2018 01:00:51 -0400 Subject: service/sockets: Add ethc:c and ethc:i services --- src/core/CMakeLists.txt | 2 ++ src/core/hle/service/sockets/ethc.cpp | 38 ++++++++++++++++++++++++++++++++ src/core/hle/service/sockets/ethc.h | 21 ++++++++++++++++++ src/core/hle/service/sockets/sockets.cpp | 5 +++++ 4 files changed, 66 insertions(+) create mode 100644 src/core/hle/service/sockets/ethc.cpp create mode 100644 src/core/hle/service/sockets/ethc.h (limited to 'src/core') diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt index 2e2de59b1..7a67439fd 100644 --- a/src/core/CMakeLists.txt +++ b/src/core/CMakeLists.txt @@ -225,6 +225,8 @@ add_library(core STATIC hle/service/sm/sm.h hle/service/sockets/bsd.cpp hle/service/sockets/bsd.h + hle/service/sockets/ethc.cpp + hle/service/sockets/ethc.h hle/service/sockets/nsd.cpp hle/service/sockets/nsd.h hle/service/sockets/sfdnsres.cpp diff --git a/src/core/hle/service/sockets/ethc.cpp b/src/core/hle/service/sockets/ethc.cpp new file mode 100644 index 000000000..d53c25eec --- /dev/null +++ b/src/core/hle/service/sockets/ethc.cpp @@ -0,0 +1,38 @@ +// Copyright 2018 yuzu emulator team +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#include "core/hle/service/sockets/ethc.h" + +namespace Service::Sockets { + +ETHC_C::ETHC_C() : ServiceFramework{"ethc:c"} { + // clang-format off + static const FunctionInfo functions[] = { + {0, nullptr, "Initialize"}, + {1, nullptr, "Cancel"}, + {2, nullptr, "GetResult"}, + {3, nullptr, "GetMediaList"}, + {4, nullptr, "SetMediaType"}, + {5, nullptr, "GetMediaType"}, + }; + // clang-format on + + RegisterHandlers(functions); +} + +ETHC_I::ETHC_I() : ServiceFramework{"ethc:i"} { + // clang-format off + static const FunctionInfo functions[] = { + {0, nullptr, "GetReadableHandle"}, + {1, nullptr, "Cancel"}, + {2, nullptr, "GetResult"}, + {3, nullptr, "GetInterfaceList"}, + {4, nullptr, "GetInterfaceCount"}, + }; + // clang-format on + + RegisterHandlers(functions); +} + +} // namespace Service::Sockets diff --git a/src/core/hle/service/sockets/ethc.h b/src/core/hle/service/sockets/ethc.h new file mode 100644 index 000000000..9a3c88100 --- /dev/null +++ b/src/core/hle/service/sockets/ethc.h @@ -0,0 +1,21 @@ +// Copyright 2018 yuzu emulator team +// Licensed under GPLv2 or any later version +// Refer to the license.txt file included. + +#pragma once + +#include "core/hle/service/service.h" + +namespace Service::Sockets { + +class ETHC_C final : public ServiceFramework { +public: + explicit ETHC_C(); +}; + +class ETHC_I final : public ServiceFramework { +public: + explicit ETHC_I(); +}; + +} // namespace Service::Sockets diff --git a/src/core/hle/service/sockets/sockets.cpp b/src/core/hle/service/sockets/sockets.cpp index 96196bb75..08d2d306a 100644 --- a/src/core/hle/service/sockets/sockets.cpp +++ b/src/core/hle/service/sockets/sockets.cpp @@ -3,6 +3,7 @@ // Refer to the license.txt file included. #include "core/hle/service/sockets/bsd.h" +#include "core/hle/service/sockets/ethc.h" #include "core/hle/service/sockets/nsd.h" #include "core/hle/service/sockets/sfdnsres.h" #include "core/hle/service/sockets/sockets.h" @@ -14,8 +15,12 @@ void InstallInterfaces(SM::ServiceManager& service_manager) { std::make_shared("bsd:u")->InstallAsService(service_manager); std::make_shared()->InstallAsService(service_manager); + std::make_shared()->InstallAsService(service_manager); + std::make_shared()->InstallAsService(service_manager); + std::make_shared("nsd:a")->InstallAsService(service_manager); std::make_shared("nsd:u")->InstallAsService(service_manager); + std::make_shared()->InstallAsService(service_manager); } -- cgit v1.2.3