version 1.33, 2015/01/16 06:40:10 |
version 1.34, 2015/01/17 17:22:07 |
|
|
/* |
/* |
* Disk quota reporting program. |
* Disk quota reporting program. |
*/ |
*/ |
#include <sys/param.h> /* DEV_BSIZE */ |
#include <sys/param.h> /* DEV_BSIZE dbtob */ |
#include <sys/types.h> |
#include <sys/types.h> |
#include <sys/file.h> |
#include <sys/file.h> |
#include <sys/stat.h> |
#include <sys/stat.h> |
|
|
main(int argc, char *argv[]) |
main(int argc, char *argv[]) |
{ |
{ |
int ngroups; |
int ngroups; |
gid_t mygid, gidset[NGROUPS]; |
gid_t mygid, gidset[NGROUPS_MAX]; |
int i, gflag = 0, uflag = 0; |
int i, gflag = 0, uflag = 0; |
int ch; |
int ch; |
extern char *optarg; |
extern char *optarg; |
|
|
showuid(getuid()); |
showuid(getuid()); |
if (gflag) { |
if (gflag) { |
mygid = getgid(); |
mygid = getgid(); |
ngroups = getgroups(NGROUPS, gidset); |
ngroups = getgroups(NGROUPS_MAX, gidset); |
if (ngroups < 0) |
if (ngroups < 0) |
err(1, "getgroups"); |
err(1, "getgroups"); |
showgid(mygid); |
showgid(mygid); |
|
|
{ |
{ |
struct group *grp = getgrgid(gid); |
struct group *grp = getgrgid(gid); |
int ngroups; |
int ngroups; |
gid_t mygid, gidset[NGROUPS]; |
gid_t mygid, gidset[NGROUPS_MAX]; |
int i; |
int i; |
const char *name; |
const char *name; |
|
|
|
|
else |
else |
name = grp->gr_name; |
name = grp->gr_name; |
mygid = getgid(); |
mygid = getgid(); |
ngroups = getgroups(NGROUPS, gidset); |
ngroups = getgroups(NGROUPS_MAX, gidset); |
if (ngroups < 0) { |
if (ngroups < 0) { |
warn("getgroups"); |
warn("getgroups"); |
return; |
return; |
|
|
{ |
{ |
struct group *grp = getgrnam(name); |
struct group *grp = getgrnam(name); |
int ngroups; |
int ngroups; |
gid_t mygid, gidset[NGROUPS]; |
gid_t mygid, gidset[NGROUPS_MAX]; |
int i; |
int i; |
|
|
if (grp == NULL) { |
if (grp == NULL) { |
|
|
return; |
return; |
} |
} |
mygid = getgid(); |
mygid = getgid(); |
ngroups = getgroups(NGROUPS, gidset); |
ngroups = getgroups(NGROUPS_MAX, gidset); |
if (ngroups < 0) { |
if (ngroups < 0) { |
warn("getgroups"); |
warn("getgroups"); |
return; |
return; |