mirror of
https://git.eden-emu.dev/archive/citron
synced 2026-03-28 20:39:33 -04:00
core/sockets: Add missing socket services and functions from switchbrew
- Add Unknown39 and Unknown40 functions to BSD service for [20.0.0+] - Implement bsd:nu service with ISfUserService and ISfAssignedNetworkInterfaceService - Add dns:priv and ethc:c/ethc:i service stubs - Update CMakeLists.txt to include new socket service files - All new functions include basic stub implementations following existing patterns This completes the socket services implementation based on switchbrew.org documentation. Signed-off-by: Zephyron <zephyron@citron-emu.org>
This commit is contained in:
@@ -1018,6 +1018,8 @@ BSD::BSD(Core::System& system_, const char* name)
|
||||
{33, &BSD::RegisterClientShared, "RegisterClientShared"},
|
||||
{34, &BSD::GetSocketStatistics, "GetSocketStatistics"},
|
||||
{35, &BSD::NifIoctl, "NifIoctl"},
|
||||
{39, &BSD::Unknown39, "[20.0.0+] Unknown39"},
|
||||
{40, &BSD::Unknown40, "[20.0.0+] Unknown40"},
|
||||
{200, &BSD::SetThreadCoreMask, "SetThreadCoreMask"},
|
||||
{201, &BSD::GetThreadCoreMask, "GetThreadCoreMask"},
|
||||
};
|
||||
@@ -1297,6 +1299,22 @@ void BSD::SocketExempt(HLERequestContext& ctx) {
|
||||
rb.PushEnum(static_cast<Errno>(EOPNOTSUPP));
|
||||
}
|
||||
|
||||
void BSD::Unknown39(HLERequestContext& ctx) {
|
||||
LOG_WARNING(Service, "(STUBBED) called Unknown39 [20.0.0+]");
|
||||
IPC::ResponseBuilder rb{ctx, 4};
|
||||
rb.Push(ResultSuccess);
|
||||
rb.Push<s32>(-1);
|
||||
rb.PushEnum(static_cast<Errno>(EOPNOTSUPP));
|
||||
}
|
||||
|
||||
void BSD::Unknown40(HLERequestContext& ctx) {
|
||||
LOG_WARNING(Service, "(STUBBED) called Unknown40 [20.0.0+]");
|
||||
IPC::ResponseBuilder rb{ctx, 4};
|
||||
rb.Push(ResultSuccess);
|
||||
rb.Push<s32>(-1);
|
||||
rb.PushEnum(static_cast<Errno>(EOPNOTSUPP));
|
||||
}
|
||||
|
||||
void BSD::Sysctl(HLERequestContext& ctx) {
|
||||
LOG_WARNING(Service, "(STUBBED) called Sysctl");
|
||||
IPC::ResponseBuilder rb{ctx, 4};
|
||||
|
||||
Reference in New Issue
Block a user