1/*
2 * config.h - This file is part of the libc-8086/grp package for ELKS,
3 * Copyright (C) 1995, 1996 Nat Friedman <ndf@linux.mit.edu>.
4 *
5 *  This library is free software; you can redistribute it and/or
6 *  modify it under the terms of the GNU Library General Public
7 *  License as published by the Free Software Foundation; either
8 *  version 2 of the License, or (at your option) any later version.
9 *
10 *  This library is distributed in the hope that it will be useful,
11 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
12 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13 *  Library General Public License for more details.
14 *
15 *  You should have received a copy of the GNU Library General Public
16 *  License along with this library; if not, write to the Free
17 *  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18 *
19 */
20
21
22#ifndef _CONFIG_GRP_H
23#define _CONFIG_GRP_H
24
25/*
26 * Define GR_SCALE_DYNAMIC if you want grp to dynamically scale its read buffer
27 * so that lines of any length can be used.  On very very small systems,
28 * you may want to leave this undefined becasue it will make the grp functions
29 * somewhat larger (because of the inclusion of malloc and the code necessary).
30 * On larger systems, you will want to define this, because grp will _not_
31 * deal with long lines gracefully (they will be skipped).
32 */
33#undef GR_SCALE_DYNAMIC
34
35#ifndef GR_SCALE_DYNAMIC
36/*
37 * If scaling is not dynamic, the buffers will be statically allocated, and
38 * maximums must be chosen.  GR_MAX_LINE_LEN is the maximum number of
39 * characters per line in the group file.  GR_MAX_MEMBERS is the maximum
40 * number of members of any given group.
41 */
42#define GR_MAX_LINE_LEN 128
43/* GR_MAX_MEMBERS = (GR_MAX_LINE_LEN-(24+3+6))/9 */
44#define GR_MAX_MEMBERS 11
45
46#endif /* !GR_SCALE_DYNAMIC */
47
48
49/*
50 * Define GR_DYNAMIC_GROUP_LIST to make initgroups() dynamically allocate
51 * space for it's GID array before calling setgroups().  This is probably
52 * unnecessary scalage, so it's undefined by default.
53 */
54#undef GR_DYNAMIC_GROUP_LIST
55
56#ifndef GR_DYNAMIC_GROUP_LIST
57/*
58 * GR_MAX_GROUPS is the size of the static array initgroups() uses for
59 * its static GID array if GR_DYNAMIC_GROUP_LIST isn't defined.
60 */
61#define GR_MAX_GROUPS 64
62
63#endif /* !GR_DYNAMIC_GROUP_LIST */
64
65#endif /* !_CONFIG_GRP_H */
66