From a7a7c56ad69770c6862d0fa98eba0fcb291fb4ce Mon Sep 17 00:00:00 2001 From: Christian Helmuth Date: Mon, 25 Sep 2023 16:51:06 +0200 Subject: [PATCH] libc: silence "Warning: missing sysctl for [0][3] The warning results from sysctlnametomib() that uses an undocumented FreeBSD kernel interface we do not support. Fixes #4673 --- repos/libports/src/lib/libc/sysctl.cc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/repos/libports/src/lib/libc/sysctl.cc b/repos/libports/src/lib/libc/sysctl.cc index 4297727047..8014b0d823 100644 --- a/repos/libports/src/lib/libc/sysctl.cc +++ b/repos/libports/src/lib/libc/sysctl.cc @@ -73,7 +73,12 @@ extern "C" int __sysctl(const int *name, u_int namelen, if (!oldp) /* check for write attempt */ return Errno(newp ? EPERM : EINVAL); - if (namelen != 2) return Errno(ENOENT); + if (namelen != 2) + return Errno(ENOENT); + + /* reject special interface for sysctlnametomib() */ + if (name[0] == 0 && name[1] == 3) + return Errno(ENOENT); char *buf = (char*)oldp; int index_a = name[0];