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 (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 * or http://www.opensolaris.org/os/licensing. 10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 */ 21 /* 22 * Copyright 2006 Sun Microsystems, Inc. All rights reserved. 23 * Use is subject to license terms. 24 */ 25 26 #ifndef _NSCD_SELFCRED_H 27 #define _NSCD_SELFCRED_H 28 29 #ifdef __cplusplus 30 extern "C" { 31 #endif 32 33 #include <unistd.h> 34 #include <door.h> 35 #include "nscd_door.h" 36 37 /* 38 * structure used for door call NSCD_IMHERE 39 */ 40 typedef struct nscd_imhere { 41 int slot; 42 } nscd_imhere_t; 43 44 /* 45 * structure used for door call NSCD_FORK 46 */ 47 typedef struct nscd_fork { 48 int slot; 49 uid_t uid; 50 gid_t gid; 51 } nscd_fork_t; 52 53 /* 54 * prototypes 55 */ 56 int _nscd_is_self_cred_on(int recheck, char **dblist); 57 void _nscd_set_forker_pid(pid_t pid); 58 void _nscd_free_cslots(); 59 void _nscd_kill_forker(); 60 void _nscd_kill_all_children(); 61 void _nscd_proc_iamhere(void *buf, door_desc_t *dp, 62 uint_t n_desc, int iam); 63 void _nscd_proc_pulse(void *buf, int iam); 64 void _nscd_proc_fork(void *buf, int iam); 65 void _nscd_proc_alt_get(void *buf, int *door); 66 void _nscd_start_forker(char *path, int argc, char **argv); 67 void _nscd_peruser_getadmin(void *buf, int buf_size); 68 69 #ifdef __cplusplus 70 } 71 #endif 72 73 #endif /* _NSCD_SELFCRED_H */ 74