User::grent
use User::grent;
$gr = getgrgid(0) or die "No group zero";
if ($gr->name eq "wheel" && @{$gr->members} > 1) {
print "gid zero name wheel, with other members";
}
$gr = getgr($whoever); # Accepts both string or number.
use User::grent ':FIELDS';
getgrgid(0) or die "No group zero";
if ($gr_name eq "wheel" && @gr_members > 1) {
print "gid zero name wheel, with other members";
}This module's default exports override the core
getgrent, getgruid, and
getgrnam functions, replacing them with versions
that return a User::grent object (or
undef on failure). This object has methods that
access the like-named structure fields from the C library's
struct group out of grp.h;
namely name, passwd,
gid, and members (not
mem as in C!). The first three return scalars, the
last an array reference. You may also import the structure fields into
your own namespace as regular variables using the
":FIELDS" import tag, although this still overrides
your core functions. The variables (three scalars and an array) are
named with a preceding "gr_". The
getgr function is a simple frontend switch that
forwards any numeric argument to getgrgid and any
string argument to getgrnam.