Merge pull request #5837 from german77/socketstub
sockets: Stub GetSockOpt
This commit is contained in:
commit
df41e78205
2 changed files with 17 additions and 1 deletions
|
@ -255,6 +255,21 @@ void BSD::GetSockName(Kernel::HLERequestContext& ctx) {
|
||||||
rb.Push<u32>(static_cast<u32>(write_buffer.size()));
|
rb.Push<u32>(static_cast<u32>(write_buffer.size()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void BSD::GetSockOpt(Kernel::HLERequestContext& ctx) {
|
||||||
|
IPC::RequestParser rp{ctx};
|
||||||
|
const s32 fd = rp.Pop<s32>();
|
||||||
|
const u32 level = rp.Pop<u32>();
|
||||||
|
const auto optname = static_cast<OptName>(rp.Pop<u32>());
|
||||||
|
|
||||||
|
LOG_WARNING(Service, "(STUBBED) called. fd={} level={} optname=0x{:x}", fd, level, optname);
|
||||||
|
|
||||||
|
IPC::ResponseBuilder rb{ctx, 5};
|
||||||
|
rb.Push(RESULT_SUCCESS);
|
||||||
|
rb.Push<s32>(-1);
|
||||||
|
rb.PushEnum(Errno::NOTCONN);
|
||||||
|
rb.Push<u32>(0);
|
||||||
|
}
|
||||||
|
|
||||||
void BSD::Listen(Kernel::HLERequestContext& ctx) {
|
void BSD::Listen(Kernel::HLERequestContext& ctx) {
|
||||||
IPC::RequestParser rp{ctx};
|
IPC::RequestParser rp{ctx};
|
||||||
const s32 fd = rp.Pop<s32>();
|
const s32 fd = rp.Pop<s32>();
|
||||||
|
@ -812,7 +827,7 @@ BSD::BSD(Core::System& system_, const char* name) : ServiceFramework{system_, na
|
||||||
{14, &BSD::Connect, "Connect"},
|
{14, &BSD::Connect, "Connect"},
|
||||||
{15, &BSD::GetPeerName, "GetPeerName"},
|
{15, &BSD::GetPeerName, "GetPeerName"},
|
||||||
{16, &BSD::GetSockName, "GetSockName"},
|
{16, &BSD::GetSockName, "GetSockName"},
|
||||||
{17, nullptr, "GetSockOpt"},
|
{17, &BSD::GetSockOpt, "GetSockOpt"},
|
||||||
{18, &BSD::Listen, "Listen"},
|
{18, &BSD::Listen, "Listen"},
|
||||||
{19, nullptr, "Ioctl"},
|
{19, nullptr, "Ioctl"},
|
||||||
{20, &BSD::Fcntl, "Fcntl"},
|
{20, &BSD::Fcntl, "Fcntl"},
|
||||||
|
|
|
@ -125,6 +125,7 @@ private:
|
||||||
void Connect(Kernel::HLERequestContext& ctx);
|
void Connect(Kernel::HLERequestContext& ctx);
|
||||||
void GetPeerName(Kernel::HLERequestContext& ctx);
|
void GetPeerName(Kernel::HLERequestContext& ctx);
|
||||||
void GetSockName(Kernel::HLERequestContext& ctx);
|
void GetSockName(Kernel::HLERequestContext& ctx);
|
||||||
|
void GetSockOpt(Kernel::HLERequestContext& ctx);
|
||||||
void Listen(Kernel::HLERequestContext& ctx);
|
void Listen(Kernel::HLERequestContext& ctx);
|
||||||
void Fcntl(Kernel::HLERequestContext& ctx);
|
void Fcntl(Kernel::HLERequestContext& ctx);
|
||||||
void SetSockOpt(Kernel::HLERequestContext& ctx);
|
void SetSockOpt(Kernel::HLERequestContext& ctx);
|
||||||
|
|
Loading…
Reference in a new issue