Index Index for
Section 3
Index Alphabetical
listing for I
Index Bottom of
page

initgroups(3)

NAME

initgroups - Initializes concurrent group set

LIBRARY

Standard C Library (libc.a)

SYNOPSIS

int initgroups ( char *user, gid_t base_gid );

PARAMETERS

user Specifies the user whose groups are to be used to initialize the group set. base_gid Specifies an additional group to include in the group set.

DESCRIPTION

The initgroups() function reads the defined group membership of the specified user and sets the concurrent group set of the current process to that value. The base_gid parameter is always included in the concurrent group set, and is normally the principal user's group. If the user is in more than NGROUPS_MAX groups, only NGROUPS_MAX groups are set, including the base_gid group.

CAUTION

The initgroups() function uses the sia_get_groups() function to set up the group array. If the program that invokes initgroups() uses any of these functions, then calling initgroups() overwrites the static group structure.

RETURN VALUES

Upon successful completion, the initgroups() function returns 0 (zero). If the initgroups() function fails, 1 is returned and errno is set to indicate the error.

ERRORS

If the initgroups() function fails, errno may be set to the following value: [EPERM] The calling process does not have the appropriate privilege in its current effective privilege set.

RELATED INFORMATION

Functions: getgroups(2), setgroups(2), getgid(2) sia_get_groups(3) Commands: groups(1)

Index Index for
Section 3
Index Alphabetical
listing for I
Index Top of
page