static void report(unsigned what, int verbose,
const char *p, const char *msg,
void *arg)
static void report(unsigned what, int verbose,
const char *p, const char *msg,
void *arg)
-s, --sticky Consider sticky directories secure against\n\
modification by world and group (not recommended).\n\
-t, --trust-group Consider other members of your group trustworthy.\n\
-s, --sticky Consider sticky directories secure against\n\
modification by world and group (not recommended).\n\
-t, --trust-group Consider other members of your group trustworthy.\n\
- int i = mdwopt(argc, argv, "hVu" "vqstp", opts, 0, 0, 0);
+ int i = mdwopt(argc, argv, "hVu" "vqstpg:", opts, 0, 0, 0);
- cp.cp_what = (cp.cp_what & ~CP_WRGRP) | CP_WROTHGRP;
+ if (checkpath_setgid(&cp) || checkpath_setgroups(&cp))
+ die(1, "too many groups");
+ break;
+ case 'g':
+ allowgroup(&cp, optarg);