initgroups(3)



NAME

   initgroups - initialize the supplementary group access list

SYNOPSIS

   #include <sys/types.h>
   #include <grp.h>

   int initgroups(const char *user, gid_t group);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

   initgroups():
       Since glibc 2.19:
           _DEFAULT_SOURCE
       Glibc 2.19 and earlier:
           _BSD_SOURCE

DESCRIPTION

   The  initgroups() function initializes the group access list by reading
   the group database /etc/group and using all groups of which user  is  a
   member.  The additional group group is also added to the list.

   The user argument must be non-NULL.

RETURN VALUE

   The  initgroups()  function  returns  0  on  success.   On error, -1 is
   returned, and errno is set appropriately.

ERRORS

   ENOMEM Insufficient memory to allocate group information structure.

   EPERM  The  calling  process  has  insufficient  privilege.   See   the
          underlying system call setgroups(2).

FILES

   /etc/group          group database file

ATTRIBUTES

   For   an   explanation   of   the  terms  used  in  this  section,  see
   attributes(7).

   
   Interface     Attribute      Value          
   
   initgroups()  Thread safety  MT-Safe locale 
   

CONFORMING TO

   SVr4, 4.3BSD.

SEE ALSO

   getgroups(2), setgroups(2), credentials(7)

COLOPHON

   This page is part of release 4.09 of the Linux  man-pages  project.   A
   description  of  the project, information about reporting bugs, and the
   latest    version    of    this    page,    can     be     found     at
   https://www.kernel.org/doc/man-pages/.




Free and Open Source Software


Free Software Video

Useful Programs

Free Online Courses

Open Opportunity

Open Business