3 * Utilities not worth librarifying
5 * (c) 2008 Mark Wooding
8 /*----- Licensing notice --------------------------------------------------*
10 * This file is part of chkpath.
12 * chkpath is free software; you can redistribute it and/or modify
13 * it under the terms of the GNU General Public License as published by
14 * the Free Software Foundation; either version 2 of the License, or
15 * (at your option) any later version.
17 * chkpath is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 * GNU General Public License for more details.
22 * You should have received a copy of the GNU General Public License
23 * along with chkpath; if not, write to the Free Software Foundation,
24 * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
34 /*----- Header files ------------------------------------------------------*/
36 #include "checkpath.h"
38 /*----- Functions provided ------------------------------------------------*/
40 /* --- @allowgroup@ --- *
42 * Arguments: @struct checkpath *cp@ = pointer to structure to mess with
43 * @const char *gname@ = trust group @gname@
48 * Use: Adds the gid corresponding to @gname@ (which may be a number)
49 * to the list of things we trust.
52 extern void allowgroup(struct checkpath */*cp*/, const char */*gname*/);
54 /* --- @private_group@ --- *
56 * Arguments: @gid_t *gid_out@ = where to put the group id
57 * @int verbose@ = verbosity level
59 * Returns: Zero on success, %$-1$% if the user's group is not private.
61 * Use: If the user's primary group has no other configured members,
62 * then set @*gid_out@ to its gid and return zero. Otherwise,
63 * report a message if the verbosity level is sufficiently high,
67 extern int private_group(gid_t */*gid_out*/, int /*verbose*/);
69 /*----- That's all, folks -------------------------------------------------*/