| Click this button to go to the index for this section. |
setgid(2)
NAME
setgid - Sets the group IDSYNOPSIS
#include <unistd.h> int setgid ( gid_t group_id ); Application developers may want to specify an #include statement for <sys/types.h> before the one for <unistd.h> if programs are being developed for multiple platforms. The additional #include statement is not required on DIGITAL UNIX systems or by ISO or X/Open standards, but may be required on other vendors' systems that conform to these standards.STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: setgid(): POSIX.1, XPG4, XPG4-UNIX Refer to the standards(5) reference page for more information about industry standards and associated tags.PARAMETERS
group_id Specifies the new group ID.DESCRIPTION
The setgid() function sets the real group ID, effective group ID, and the saved set group ID to the value specified by the group_id parameter. If the process does not have superuser privilege, but the group_id parameter is equal to the real group ID or the saved set group ID, the setgid() function sets the effective group ID to group_id. The real group ID and saved set group ID remain unchanged. Any supplementary group IDs of the calling process remain unchanged.RETURN VALUES
Upon successful completion, the setgid() function returns 0 (zero). Otherwise, the function returns -1 and sets errno to indicate the error.ERRORS
The setgid() function sets errno to the specified values for the following conditions: [EINVAL] The value of the group_id parameter is invalid. [EPERM] The process does not have superuser privilege and the group_id parameter does not match the real group ID or the saved set group ID.RELATED INFORMATION
Functions: exec(2), getgid(2), setuid(2) Standards: standards(5)