summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/nifm
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hle/service/nifm')
-rw-r--r--src/core/hle/service/nifm/nifm.cpp15
-rw-r--r--src/core/hle/service/nifm/nifm.h7
2 files changed, 12 insertions, 10 deletions
diff --git a/src/core/hle/service/nifm/nifm.cpp b/src/core/hle/service/nifm/nifm.cpp
index 5d32adf64..3d176b3c2 100644
--- a/src/core/hle/service/nifm/nifm.cpp
+++ b/src/core/hle/service/nifm/nifm.cpp
@@ -6,6 +6,7 @@
#include "core/hle/kernel/k_event.h"
#include "core/hle/service/kernel_helpers.h"
#include "core/hle/service/nifm/nifm.h"
+#include "core/hle/service/server_manager.h"
namespace {
@@ -626,10 +627,16 @@ private:
}
};
-void InstallInterfaces(SM::ServiceManager& service_manager, Core::System& system) {
- std::make_shared<NetworkInterface>("nifm:a", system)->InstallAsService(service_manager);
- std::make_shared<NetworkInterface>("nifm:s", system)->InstallAsService(service_manager);
- std::make_shared<NetworkInterface>("nifm:u", system)->InstallAsService(service_manager);
+void LoopProcess(Core::System& system) {
+ auto server_manager = std::make_unique<ServerManager>(system);
+
+ server_manager->RegisterNamedService("nifm:a",
+ std::make_shared<NetworkInterface>("nifm:a", system));
+ server_manager->RegisterNamedService("nifm:s",
+ std::make_shared<NetworkInterface>("nifm:s", system));
+ server_manager->RegisterNamedService("nifm:u",
+ std::make_shared<NetworkInterface>("nifm:u", system));
+ ServerManager::RunServer(std::move(server_manager));
}
} // namespace Service::NIFM
diff --git a/src/core/hle/service/nifm/nifm.h b/src/core/hle/service/nifm/nifm.h
index 48161be28..b5da7ae12 100644
--- a/src/core/hle/service/nifm/nifm.h
+++ b/src/core/hle/service/nifm/nifm.h
@@ -12,14 +12,9 @@ namespace Core {
class System;
}
-namespace Service::SM {
-class ServiceManager;
-}
-
namespace Service::NIFM {
-/// Registers all NIFM services with the specified service manager.
-void InstallInterfaces(SM::ServiceManager& service_manager, Core::System& system);
+void LoopProcess(Core::System& system);
class IGeneralService final : public ServiceFramework<IGeneralService> {
public: