Unix::Groups(3)

NAME
Unix::Groups - Perl to support "getgroups" and "setgroups" syscalls

SYNOPSIS
 use Unix::Groups qw/:all/;

 $ngroups_max=NGROUPS_MAX;
 @gids=getgroups;
 $success=setgroups(@gids);

DESCRIPTION
This module implements a very thin layer around the getgroups(2) and setgroups(2) syscalls. See your system manual for more information.

Note, the module is written and tested on Linux. For other UNIX-like systems there are good chances that it will work at least if it compiles properly.

  Functions
$n=NGROUPS_MAX

returns the max. number of arguments that "setgroups" will accept.

@gids=getgroups

returns the list of supplementary group IDs of the current process. It is very similar to the $( variable. But $( is a string and its first element is the current effective GID.

$success=setgroups @gids

sets the list of supplementary group IDs of the current process. On most systems this is a privileged operation. On Linux "CAP_SETGID" is required.

  EXPORT
None by default.

On demand all functions are exported.

Export tags

:all
    export all functions.

SEE ALSO
Linux manual.

AUTHOR
Torsten Förtsch, <torsten.foertsch@gmx.net>

COPYRIGHT AND LICENSE
Copyright (C) 2011 by Torsten Foertsch

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.12.3 or, at your option, any later version of Perl 5 you may have available.