diff options
| author | mjl <mjl@NetBSD.org> | 2000-01-12 05:02:10 +0000 |
|---|---|---|
| committer | mjl <mjl@NetBSD.org> | 2000-01-12 05:02:10 +0000 |
| commit | 142f369443ea01931a0e5ec4fcd3a9e7f13bd951 (patch) | |
| tree | dde9d36f3bed128d35df56afe0d9463bf8bc58e7 /include | |
| parent | d16fa2828e8de48e0ba114254dc68f2eadb833df (diff) | |
Add necessary support routines for login.conf.
Diffstat (limited to 'include')
| -rw-r--r-- | include/Makefile | 5 | ||||
| -rw-r--r-- | include/login_cap.h | 79 | ||||
| -rw-r--r-- | include/util.h | 3 |
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_ */ |
