Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ initgroups(3c) — NEWS-os 5.0.1

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

setgroups(2)

getgrent(3C)



initgroups(3C)          LIBRARY FUNCTIONS          initgroups(3C)



NAME
     initgroups - initialize the supplementary group access list

SYNOPSIS
     #include <grp.h>
     #include <sys/types.h>
     int initgroups (const char *name, gidt basegid)

DESCRIPTION
     initgroups reads the group file, using getgrent, to get  the
     group  membership  for  the  user specified by name and then
     initializes the supplementary group access list of the  cal-
     ling  process using setgroups.  The basegid group ID is also
     included in the supplementary group access  list.   This  is
     typically the real group ID from the password file.

     While scanning the group file,  if  the  number  of  groups,
     including  the  basegid entry, exceeds {NGROUPS_MAX}, subse-
     quent group entries are ignored.

     initgroups will fail and not change the supplementary  group
     access list if:

     EPERM          The effective user ID is not super-user.

SEE ALSO
     setgroups(2), getgrent(3C)

DIAGNOSTICS
     Upon successful completion, a value of 0 is returned.   Oth-
     erwise,  a value of -1 is returned and errno is set to indi-
     cate the error.























                                                                1



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026