mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-25 17:10:23 +00:00
Kernel: Stub out the SO_DEBUG SOL_SOCKET-level option
This commit is contained in:
parent
e521ffd156
commit
a0e2fedc20
Notes:
sideshowbarker
2024-07-17 23:10:40 +09:00
Author: https://github.com/IdanHo Commit: https://github.com/SerenityOS/serenity/commit/a0e2fedc20d Pull-request: https://github.com/SerenityOS/serenity/pull/11152 Reviewed-by: https://github.com/awesomekling
3 changed files with 14 additions and 0 deletions
|
@ -101,6 +101,7 @@ enum {
|
|||
SO_PEERCRED,
|
||||
SO_RCVBUF,
|
||||
SO_SNDBUF,
|
||||
SO_DEBUG,
|
||||
SO_REUSEADDR,
|
||||
SO_BINDTODEVICE,
|
||||
SO_KEEPALIVE,
|
||||
|
@ -113,6 +114,7 @@ enum {
|
|||
#define SO_TYPE SO_TYPE
|
||||
#define SO_ERROR SO_ERROR
|
||||
#define SO_PEERCRED SO_PEERCRED
|
||||
#define SO_DEBUG SO_DEBUG
|
||||
#define SO_REUSEADDR SO_REUSEADDR
|
||||
#define SO_BINDTODEVICE SO_BINDTODEVICE
|
||||
#define SO_KEEPALIVE SO_KEEPALIVE
|
||||
|
|
|
@ -103,6 +103,9 @@ ErrorOr<void> Socket::setsockopt(int level, int option, Userspace<const void*> u
|
|||
m_bound_interface = move(device);
|
||||
return {};
|
||||
}
|
||||
case SO_DEBUG:
|
||||
// NOTE: This is supposed to toggle collection of debugging information on/off, we don't have any right now, so this is a no-op.
|
||||
return {};
|
||||
case SO_KEEPALIVE:
|
||||
// FIXME: Obviously, this is not a real keepalive.
|
||||
return {};
|
||||
|
@ -198,6 +201,13 @@ ErrorOr<void> Socket::getsockopt(OpenFileDescription&, int level, int option, Us
|
|||
TRY(copy_to_user(static_ptr_cast<int*>(value), &m_type));
|
||||
size = sizeof(int);
|
||||
return copy_to_user(value_size, &size);
|
||||
case SO_DEBUG:
|
||||
// NOTE: This is supposed to toggle collection of debugging information on/off, we don't have any right now, so we just claim it's always off.
|
||||
if (size < sizeof(int))
|
||||
return EINVAL;
|
||||
TRY(memset_user(value.unsafe_userspace_ptr(), 0, sizeof(int)));
|
||||
size = sizeof(int);
|
||||
return copy_to_user(value_size, &size);
|
||||
default:
|
||||
dbgln("setsockopt({}) at SOL_SOCKET not implemented.", option);
|
||||
return ENOPROTOOPT;
|
||||
|
|
|
@ -231,3 +231,5 @@ set(WSSCREEN_DEBUG ON)
|
|||
# set(BOCHS_DEBUG_PORT)
|
||||
# False positive: IFF_DEBUG is an ioctl flag
|
||||
# set(IFF_DEBUG)
|
||||
# False positive: SO_DEBUG is a socket option
|
||||
# set(SO_DEBUG)
|
||||
|
|
Loading…
Reference in a new issue