summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authormjl <mjl@NetBSD.org>2000-01-12 05:02:10 +0000
committermjl <mjl@NetBSD.org>2000-01-12 05:02:10 +0000
commit142f369443ea01931a0e5ec4fcd3a9e7f13bd951 (patch)
treedde9d36f3bed128d35df56afe0d9463bf8bc58e7 /include
parentd16fa2828e8de48e0ba114254dc68f2eadb833df (diff)
Add necessary support routines for login.conf.
Diffstat (limited to 'include')
-rw-r--r--include/Makefile5
-rw-r--r--include/login_cap.h79
-rw-r--r--include/util.h3
3 files changed, 84 insertions, 3 deletions
diff --git a/include/Makefile b/include/Makefile
index 0ae65e0f8e6..fe2569d9c22 100644
--- a/include/Makefile
+++ b/include/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.81 2000/01/10 16:58:37 kleink Exp $
+# $NetBSD: Makefile,v 1.82 2000/01/12 05:02:11 mjl Exp $
# @(#)Makefile 8.2 (Berkeley) 1/4/94
SRCTOP= ..
@@ -11,7 +11,8 @@ SRCTOP= ..
INCS= a.out.h ar.h assert.h bitstring.h bm.h cpio.h ctype.h db.h dirent.h \
disktab.h dlfcn.h err.h errno.h fmtmsg.h fnmatch.h fstab.h fts.h \
glob.h grp.h hesiod.h ieeefp.h iso646.h kvm.h langinfo.h libgen.h \
- limits.h link.h link_aout.h link_elf.h locale.h malloc.h math.h md4.h \
+ limits.h link.h link_aout.h link_elf.h locale.h \
+ login_cap.h malloc.h math.h md4.h \
memory.h mpool.h ndbm.h netdb.h netgroup.h nlist.h nl_types.h \
nsswitch.h paths.h pwd.h ranlib.h re_comp.h regex.h regexp.h \
resolv.h rmt.h search.h setjmp.h sgtty.h signal.h stab.h stddef.h \
diff --git a/include/login_cap.h b/include/login_cap.h
new file mode 100644
index 00000000000..00b7da36e5e
--- /dev/null
+++ b/include/login_cap.h
@@ -0,0 +1,79 @@
+/* $NetBSD: login_cap.h,v 1.1 2000/01/12 05:02:11 mjl Exp $ */
+
+/*-
+ * Copyright (c) 1995,1997 Berkeley Software Design, Inc. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ * must display the following acknowledgement:
+ * This product includes software developed by Berkeley Software Design,
+ * Inc.
+ * 4. The name of Berkeley Software Design, Inc. may not be used to endorse
+ * or promote products derived from this software without specific prior
+ * written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY BERKELEY SOFTWARE DESIGN, INC. ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED. IN NO EVENT SHALL BERKELEY SOFTWARE DESIGN, INC. BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
+ *
+ * BSDI login_cap.h,v 2.10 1997/08/07 21:35:19 prb Exp
+ */
+
+#ifndef _LOGIN_CAP_H_
+#define _LOGIN_CAP_H_
+
+#define LOGIN_DEFCLASS "default"
+#define LOGIN_DEFSERVICE "login"
+#define LOGIN_DEFUMASK 022
+#define _PATH_LOGIN_CONF "/etc/login.conf"
+
+#define LOGIN_SETGROUP 0x0001 /* Set group */
+#define LOGIN_SETLOGIN 0x0002 /* Set login */
+#define LOGIN_SETPATH 0x0004 /* Set path */
+#define LOGIN_SETPRIORITY 0x0008 /* Set priority */
+#define LOGIN_SETRESOURCES 0x0010 /* Set resource limits */
+#define LOGIN_SETUMASK 0x0020 /* Set umask */
+#define LOGIN_SETUSER 0x0040 /* Set user */
+#define LOGIN_SETALL 0x007f /* Set all. */
+
+typedef struct {
+ char *lc_class;
+ char *lc_cap;
+ char *lc_style;
+} login_cap_t;
+
+#include <sys/cdefs.h>
+__BEGIN_DECLS
+struct passwd;
+
+login_cap_t *login_getclass __P((char *));
+void login_close __P((login_cap_t *));
+int login_getcapbool __P((login_cap_t *, char *, u_int));
+quad_t login_getcapnum __P((login_cap_t *, char *, quad_t, quad_t));
+quad_t login_getcapsize __P((login_cap_t *, char *, quad_t, quad_t));
+char *login_getcapstr __P((login_cap_t *, char *, char *, char *));
+quad_t login_getcaptime __P((login_cap_t *, char *, quad_t, quad_t));
+
+int secure_path __P((char *));
+int setclasscontext __P((char *, u_int));
+int setusercontext __P((login_cap_t *, struct passwd *, uid_t, u_int));
+
+__END_DECLS
+
+#endif
+
diff --git a/include/util.h b/include/util.h
index 7fc6d07c351..7e48eaf7ed1 100644
--- a/include/util.h
+++ b/include/util.h
@@ -1,4 +1,4 @@
-/* $NetBSD: util.h,v 1.14 1999/06/12 18:06:19 christos Exp $ */
+/* $NetBSD: util.h,v 1.15 2000/01/12 05:02:11 mjl Exp $ */
/*-
* Copyright (c) 1995
@@ -86,6 +86,7 @@ int ttylock __P((const char *, int, pid_t *));
int ttyunlock __P((const char *));
int ttyaction __P((const char *, const char *, const char *));
char *ttymsg __P((struct iovec *, int, const char *, int));
+int secure_path __P((char *));
__END_DECLS
#endif /* !_UTIL_H_ */