Annotation of src/include/grp.h, Revision 1.9
1.9 ! sthen 1: /* $OpenBSD: grp.h,v 1.8 2005/12/13 00:35:22 millert Exp $ */
1.1 deraadt 2: /* $NetBSD: grp.h,v 1.7 1995/04/29 05:30:40 cgd Exp $ */
3:
4: /*-
5: * Copyright (c) 1989, 1993
6: * The Regents of the University of California. All rights reserved.
7: * (c) UNIX System Laboratories, Inc.
8: * All or some portions of this file are derived from material licensed
9: * to the University of California by American Telephone and Telegraph
10: * Co. or Unix System Laboratories, Inc. and are reproduced herein with
11: * the permission of UNIX System Laboratories, Inc.
12: *
13: * Redistribution and use in source and binary forms, with or without
14: * modification, are permitted provided that the following conditions
15: * are met:
16: * 1. Redistributions of source code must retain the above copyright
17: * notice, this list of conditions and the following disclaimer.
18: * 2. Redistributions in binary form must reproduce the above copyright
19: * notice, this list of conditions and the following disclaimer in the
20: * documentation and/or other materials provided with the distribution.
1.6 millert 21: * 3. Neither the name of the University nor the names of its contributors
1.1 deraadt 22: * may be used to endorse or promote products derived from this software
23: * without specific prior written permission.
24: *
25: * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
26: * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27: * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28: * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
29: * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30: * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
31: * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
32: * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33: * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
34: * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
35: * SUCH DAMAGE.
36: *
37: * @(#)grp.h 8.2 (Berkeley) 1/21/94
38: */
39:
40: #ifndef _GRP_H_
41: #define _GRP_H_
42:
1.2 deraadt 43: #include <sys/cdefs.h>
44: #include <sys/types.h>
45:
1.8 millert 46: #if __BSD_VISIBLE
1.1 deraadt 47: #define _PATH_GROUP "/etc/group"
1.9 ! sthen 48: #define _GR_BUF_LEN (1024+200*sizeof(char*))
1.1 deraadt 49: #endif
50:
51: struct group {
52: char *gr_name; /* group name */
53: char *gr_passwd; /* group password */
1.5 millert 54: gid_t gr_gid; /* group id */
1.1 deraadt 55: char **gr_mem; /* group members */
56: };
57:
58: __BEGIN_DECLS
1.4 millert 59: struct group *getgrgid(gid_t);
60: struct group *getgrnam(const char *);
1.8 millert 61: #if __BSD_VISIBLE || __POSIX_VISIBLE >= 200112 || __XPG_VISIBLE
1.4 millert 62: struct group *getgrent(void);
63: void setgrent(void);
64: void endgrent(void);
1.8 millert 65: int getgrgid_r(gid_t, struct group *, char *,
66: size_t, struct group **);
67: int getgrnam_r(const char *, struct group *, char *,
68: size_t, struct group **);
69: #endif
70: #if __BSD_VISIBLE
1.4 millert 71: void setgrfile(const char *);
1.8 millert 72: int setgroupent(int);
1.4 millert 73: char *group_from_gid(gid_t, int);
1.8 millert 74: #endif
1.1 deraadt 75: __END_DECLS
76:
77: #endif /* !_GRP_H_ */