diff options
author | Jim Meyering <jim@meyering.net> | 2007-07-05 17:42:29 +0200 |
---|---|---|
committer | Jim Meyering <jim@meyering.net> | 2007-07-06 07:44:39 +0200 |
commit | e0066f36c22dce02f9d6327cb881ee7eec6e7539 (patch) | |
tree | 39c5d9c47df892a1ab845e11fc89b93b8e9b6a1a /gl/lib/mgetgroups.h | |
parent | b8031ff7c74b153f1e929c059e42532a9771eb74 (diff) | |
download | coreutils-e0066f36c22dce02f9d6327cb881ee7eec6e7539.tar.xz |
setuidgid: set all groups, not just the primary one; mgetgroups: new module
I wanted to use the xgetgroups function from id.c, so factored it out
and made it into a non-exiting function (hence the "m" prefix rather than "x").
* src/setuidgid.c (main): Use mgetgroups. Include "mgetgroups.h".
* src/id.c (xgetgroups): Remove function.
Include "mgetgroups.h".
(print_group_list): Use mgetgroups, not xgetgroups.
* gl/modules/mgetgroups: New module.
* gl/lib/mgetgroups.c: New file. mgetgroups is derived from
id.c's xgetgroups function.
* bootstrap.conf (gnulib_modules): Add mgetgroups.
* gl/m4/mgetgroups.m4: New file.
* gl/lib/mgetgroups.h: New file.
Diffstat (limited to 'gl/lib/mgetgroups.h')
-rw-r--r-- | gl/lib/mgetgroups.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/gl/lib/mgetgroups.h b/gl/lib/mgetgroups.h new file mode 100644 index 000000000..23f04e189 --- /dev/null +++ b/gl/lib/mgetgroups.h @@ -0,0 +1,21 @@ +/* Get a list of all group IDs associated with a specified user ID. + Copyright (C) 2007 Free Software Foundation, Inc. + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; see the file COPYING. + If not, write to the Free Software Foundation, + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ + +#include <sys/types.h> + +int mgetgroups (const char *username, gid_t gid, GETGROUPS_T **groups); |