logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

explain_getgroups_or_die - get supplementary group IDs and report errors

Description

       The  explain_getgroups_or_die  function  is  used  to  call  the  getgroups(2) system call. On failure an
       explanation will be printed to stderr, obtained from the  explain_getgroups(3)  function,  and  then  the
       process terminates by calling exit(EXIT_FAILURE).

       The  explain_getgroups_on_error  function  is  used  to  call the getgroups(2) system call. On failure an
       explanation will be printed to stderr, obtained from the explain_getgroups(3) function, but still returns
       to the caller.

       data_size
               The data_size, exactly as to be passed to the getgroups(2) system call.

       data    The data, exactly as to be passed to the getgroups(2) system call.

Example

       The explain_getgroups_or_die function is intended to be used  in  a  fashion  similar  to  the  following
       example:
              explain_getgroups_or_die(data_size, data);

Name

       explain_getgroups_or_die - get supplementary group IDs and report errors

Return Value

       The explain_getgroups_or_die function only returns on success, see getgroups(2) for more information.  On
       failure, prints an explanation and exits, it does not return.

       The  explain_getgroups_on_error  function  always  returns  the  value return by the wrapped getgroups(2)
       system call.

See Also

getgroups(2)
               get/set list of supplementary group IDs

       explain_getgroups(3)
               explain getgroups(2) errors

       exit(2) terminate the calling process

Synopsis

       #include <libexplain/getgroups.h>
       void explain_getgroups_or_die(int data_size, gid_t *data);
       int explain_getgroups_on_error(int data_size, gid_t *data);

See Also