From fa7eaefe7c5acf0110431e43dc6980e8f0e9ae04 Mon Sep 17 00:00:00 2001 From: cptpcrd Date: Mon, 31 Jul 2023 19:33:33 -0400 Subject: [PATCH] dbus-sysdeps-unix: Check socklen_t is unsigned when getting group list After the change to handle an empty list properly, the function now assumes that is true. (cherry picked from commit 49dd4aba42280c438b1207963f7071bfd7707775) --- dbus/dbus-sysdeps-unix.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dbus/dbus-sysdeps-unix.c b/dbus/dbus-sysdeps-unix.c index 2ce425d0..099637cb 100644 --- a/dbus/dbus-sysdeps-unix.c +++ b/dbus/dbus-sysdeps-unix.c @@ -1932,6 +1932,8 @@ add_groups_to_credentials (int client_fd, { #if defined(__linux__) && defined(SO_PEERGROUPS) _DBUS_STATIC_ASSERT (sizeof (gid_t) <= sizeof (dbus_gid_t)); + /* This function assumes socklen_t is unsigned, which is true on Linux */ + _DBUS_STATIC_ASSERT (((socklen_t) -1) > 0); gid_t *buf = NULL; socklen_t len = 1024; dbus_bool_t oom = FALSE;