xref: /titanic_53/usr/src/cmd/ldapcachemgr/cachemgr.h (revision 7ddae043d774fb34a5d9f3b11a0e7bcaba3e85ae)
17c478bd9Sstevel@tonic-gate /*
27c478bd9Sstevel@tonic-gate  * CDDL HEADER START
37c478bd9Sstevel@tonic-gate  *
47c478bd9Sstevel@tonic-gate  * The contents of this file are subject to the terms of the
5*7ddae043Siz202018  * Common Development and Distribution License (the "License").
6*7ddae043Siz202018  * You may not use this file except in compliance with the License.
77c478bd9Sstevel@tonic-gate  *
87c478bd9Sstevel@tonic-gate  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
97c478bd9Sstevel@tonic-gate  * or http://www.opensolaris.org/os/licensing.
107c478bd9Sstevel@tonic-gate  * See the License for the specific language governing permissions
117c478bd9Sstevel@tonic-gate  * and limitations under the License.
127c478bd9Sstevel@tonic-gate  *
137c478bd9Sstevel@tonic-gate  * When distributing Covered Code, include this CDDL HEADER in each
147c478bd9Sstevel@tonic-gate  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
157c478bd9Sstevel@tonic-gate  * If applicable, add the following below this CDDL HEADER, with the
167c478bd9Sstevel@tonic-gate  * fields enclosed by brackets "[]" replaced with your own identifying
177c478bd9Sstevel@tonic-gate  * information: Portions Copyright [yyyy] [name of copyright owner]
187c478bd9Sstevel@tonic-gate  *
197c478bd9Sstevel@tonic-gate  * CDDL HEADER END
207c478bd9Sstevel@tonic-gate  */
217c478bd9Sstevel@tonic-gate /*
22*7ddae043Siz202018  * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
237c478bd9Sstevel@tonic-gate  * Use is subject to license terms.
247c478bd9Sstevel@tonic-gate  */
257c478bd9Sstevel@tonic-gate 
267c478bd9Sstevel@tonic-gate #ifndef	_CACHEMGR_H
277c478bd9Sstevel@tonic-gate #define	_CACHEMGR_H
287c478bd9Sstevel@tonic-gate 
297c478bd9Sstevel@tonic-gate #pragma ident	"%Z%%M%	%I%	%E% SMI"
307c478bd9Sstevel@tonic-gate 
317c478bd9Sstevel@tonic-gate #ifdef __cplusplus
327c478bd9Sstevel@tonic-gate extern "C" {
337c478bd9Sstevel@tonic-gate #endif
347c478bd9Sstevel@tonic-gate 
357c478bd9Sstevel@tonic-gate #include "ns_sldap.h"
367c478bd9Sstevel@tonic-gate #include "ns_internal.h"
377c478bd9Sstevel@tonic-gate #include "ns_cache_door.h"
387c478bd9Sstevel@tonic-gate #include "cachemgr_door.h"
397c478bd9Sstevel@tonic-gate 
407c478bd9Sstevel@tonic-gate #define	LOGFILE		"/var/ldap/cachemgr.log"
417c478bd9Sstevel@tonic-gate #define	KILLCACHEMGR	"/var/lib/ldap/ldap_cachemgr -K"
427c478bd9Sstevel@tonic-gate #define	MAXBITSIZE	30
437c478bd9Sstevel@tonic-gate #define	MAXDEBUG	DBG_ALL
447c478bd9Sstevel@tonic-gate #define	DEFAULTTTL	3600		/* 1 hour */
457c478bd9Sstevel@tonic-gate 
467c478bd9Sstevel@tonic-gate typedef	union {
477c478bd9Sstevel@tonic-gate 	ldap_data_t	data;
487c478bd9Sstevel@tonic-gate 	char		space[BUFFERSIZE];
497c478bd9Sstevel@tonic-gate } dataunion;
507c478bd9Sstevel@tonic-gate 
517c478bd9Sstevel@tonic-gate extern char *getcacheopt(char *s);
527c478bd9Sstevel@tonic-gate extern void logit(char *format, ...);
537c478bd9Sstevel@tonic-gate extern int load_admin_defaults(admin_t *ptr, int will_become_server);
547c478bd9Sstevel@tonic-gate extern int getldap_init(void);
557c478bd9Sstevel@tonic-gate extern void getldap_revalidate(void);
567c478bd9Sstevel@tonic-gate extern int getldap_uidkeepalive(int keep, int interval);
577c478bd9Sstevel@tonic-gate extern int getldap_invalidate(void);
58*7ddae043Siz202018 extern void getldap_lookup(LineBuf *config_info, ldap_call_t *in);
597c478bd9Sstevel@tonic-gate extern void getldap_refresh(void);
607c478bd9Sstevel@tonic-gate extern int cachemgr_set_dl(admin_t *ptr, int value);
617c478bd9Sstevel@tonic-gate extern int cachemgr_set_ttl(ldap_stat_t *cache, char *name, int value);
627c478bd9Sstevel@tonic-gate extern int get_clearance(int callnumber);
637c478bd9Sstevel@tonic-gate extern int release_clearance(int callnumber);
647c478bd9Sstevel@tonic-gate #ifdef SLP
657c478bd9Sstevel@tonic-gate extern void discover();
66a506a34cSth160488 #endif /* SLP */
677c478bd9Sstevel@tonic-gate extern void getldap_serverInfo_refresh(void);
68*7ddae043Siz202018 extern void getldap_getserver(LineBuf *config_info, ldap_call_t *in);
69*7ddae043Siz202018 extern void getldap_get_cacheData(LineBuf *config_info, ldap_call_t *in);
70*7ddae043Siz202018 extern int getldap_set_cacheData(ldap_call_t *in);
71*7ddae043Siz202018 extern void getldap_get_cacheStat(LineBuf *stat_info);
727c478bd9Sstevel@tonic-gate #ifdef __cplusplus
737c478bd9Sstevel@tonic-gate }
747c478bd9Sstevel@tonic-gate #endif
757c478bd9Sstevel@tonic-gate 
767c478bd9Sstevel@tonic-gate #endif /* _CACHEMGR_H */
77