From ff9b85970b825cfa4bc46b5debaa1a52b896568c Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Wed, 6 Nov 2024 16:18:54 -0800 Subject: [PATCH] chroot: expand heap a bit less aggressively * src/chroot.c (parse_additional_groups, main): Prefer idx_t to size_t for sizes. (parse_additional_groups): Use xpalloc instead of x2nrealloc. --- src/chroot.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/chroot.c b/src/chroot.c index 1797a16d40..f7354ccdbf 100644 --- a/src/chroot.c +++ b/src/chroot.c @@ -93,11 +93,11 @@ setgroups (size_t size, MAYBE_UNUSED gid_t const *list) static int parse_additional_groups (char const *groups, GETGROUPS_T **pgids, - size_t *pn_gids, bool show_errors) + idx_t *pn_gids, bool show_errors) { GETGROUPS_T *gids = nullptr; - size_t n_gids_allocated = 0; - size_t n_gids = 0; + idx_t n_gids_allocated = 0; + idx_t n_gids = 0; char *buffer = xstrdup (groups); char const *tmp; int ret = 0; @@ -143,7 +143,7 @@ parse_additional_groups (char const *groups, GETGROUPS_T **pgids, } if (n_gids == n_gids_allocated) - gids = X2NREALLOC (gids, &n_gids_allocated); + gids = xpalloc (gids, &n_gids_allocated, 1, -1, sizeof *gids); gids[n_gids++] = value; } @@ -230,7 +230,7 @@ main (int argc, char **argv) uid_t uid = -1; gid_t gid = -1; GETGROUPS_T *out_gids = nullptr; - size_t n_gids = 0; + idx_t n_gids = 0; initialize_main (&argc, &argv); set_program_name (argv[0]); @@ -251,7 +251,7 @@ main (int argc, char **argv) /* Treat 'user:' just like 'user' as we lookup the primary group by default (and support doing so for UIDs as well as names. */ - size_t userlen = strlen (userspec); + idx_t userlen = strlen (userspec); if (userlen && userspec[userlen - 1] == ':') userspec[userlen - 1] = '\0'; break; -- 2.47.2