If the process has appropriate privilege,
the setgroups
function shall set
the supplementary group IDs for
the current process. list shall reference
an array of size group IDs. A process
may have at most NGROUPS_MAX
supplementary
group IDs.
On successful completion, 0 is returned. On error, -1 is returned and the errno is set to indicate the error.