usr/src/cmd/sh/sh_policy.h
changeset 12273 63678502e95e
parent 12272 400aca678a81
child 12274 8a6217ddb91a
equal deleted inserted replaced
12272:400aca678a81 12273:63678502e95e
     1 /*
       
     2  * CDDL HEADER START
       
     3  *
       
     4  * The contents of this file are subject to the terms of the
       
     5  * Common Development and Distribution License, Version 1.0 only
       
     6  * (the "License").  You may not use this file except in compliance
       
     7  * with the License.
       
     8  *
       
     9  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
       
    10  * or http://www.opensolaris.org/os/licensing.
       
    11  * See the License for the specific language governing permissions
       
    12  * and limitations under the License.
       
    13  *
       
    14  * When distributing Covered Code, include this CDDL HEADER in each
       
    15  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
       
    16  * If applicable, add the following below this CDDL HEADER, with the
       
    17  * fields enclosed by brackets "[]" replaced with your own identifying
       
    18  * information: Portions Copyright [yyyy] [name of copyright owner]
       
    19  *
       
    20  * CDDL HEADER END
       
    21  */
       
    22 /*
       
    23  * Copyright (c) 1999 by Sun Microsystems, Inc.
       
    24  * All rights reserved.
       
    25  */
       
    26 
       
    27 #ifndef	_SH_POLICY_H
       
    28 #define	_SH_POLICY_H
       
    29 
       
    30 #pragma ident	"%Z%%M%	%I%	%E% SMI"
       
    31 
       
    32 #ifdef	__cplusplus
       
    33 extern "C" {
       
    34 #endif
       
    35 
       
    36 #include <exec_attr.h>
       
    37 
       
    38 #define	PFEXEC		"/usr/bin/pfexec"
       
    39 #define	ALL_PROFILE	"All"
       
    40 
       
    41 #define	ERR_PASSWD	"can't get passwd entry"
       
    42 #define	ERR_MEM		"can't allocate memory"
       
    43 #define	ERR_CWD		"can't get current working directory"
       
    44 #define	ERR_PATH	"resolved pathname too large"
       
    45 #define	ERR_PROFILE	"not in profile"
       
    46 #define	ERR_REALPATH	"can't get real path"
       
    47 
       
    48 #define	NOATTRS	0	/* command in profile but w'out attributes */
       
    49 
       
    50 #define	SECPOLICY_WARN	1
       
    51 #define	SECPOLICY_ERROR	2
       
    52 
       
    53 /*
       
    54  * Shell Policy Interface Functions
       
    55  */
       
    56 extern void secpolicy_init(void);
       
    57 extern int secpolicy_pfexec(const char *, char **, const char **);
       
    58 extern void secpolicy_print(int, const char *);
       
    59 
       
    60 
       
    61 #ifdef	__cplusplus
       
    62 }
       
    63 #endif
       
    64 
       
    65 #endif	/* _SH_POLICY_H */