Skip to content

Commit 0fdbb6e

Browse files
committed
Check for sysconf() negative return value instead of -1
Quiets a coverity warning.
1 parent 405070d commit 0fdbb6e

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

lib/util/setgroups.c

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/*
22
* SPDX-License-Identifier: ISC
33
*
4-
* Copyright (c) 2011-2012, 2014-2016 Todd C. Miller <[email protected]>
4+
* Copyright (c) 2011-2012, 2014-2025 Todd C. Miller <[email protected]>
55
*
66
* Permission to use, copy, modify, and distribute this software for any
77
* purpose with or without fee is hereby granted, provided that the above
@@ -43,11 +43,12 @@ sudo_setgroups_v1(int ngids, const GETGROUPS_T *gids)
4343
if (ngids < 0)
4444
debug_return_int(-1);
4545

46+
/* Linux uses size_t for ngids, BSD uses int. */
4647
ret = setgroups(ngids, (GETGROUPS_T *)gids);
4748
if (ret == -1 && errno == EINVAL) {
4849
/* Too many groups, try again with fewer. */
4950
maxgids = sysconf(_SC_NGROUPS_MAX);
50-
if (maxgids == -1)
51+
if (maxgids < 0)
5152
maxgids = NGROUPS_MAX;
5253
if (ngids > maxgids)
5354
ret = setgroups((int)maxgids, (GETGROUPS_T *)gids);

0 commit comments

Comments
 (0)