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
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.
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]
23 * Copyright 2001-2003 Sun Microsystems, Inc. All rights reserved.
24 * Use is subject to license terms.
27 #pragma ident "%Z%%M% %I% %E% SMI"
36 #include <rpcsvc/nis.h>
38 #include "ldap_parse.h"
44 /* Types supporting rpc.nisd configuration attributes */
46 /* nisplusLDAPinitialUpdate */
50 from_ldap_update_only
,
53 } __nis_initial_update_t
;
55 /* nisplusLDAPretrieveError */
63 } __nis_retrieve_error_t
;
65 /* nisplusLDAPstoreError */
71 } __nis_store_error_t
;
73 /* nisplusLDAPstoreErrorDisp */
77 } __nis_store_error_disp_t
;
79 /* nisplusLDAPrefreshError */
86 } __nis_refresh_error_t
;
88 /* nisplusLDAPthreadCreationError */
92 } __nis_thread_creation_error_t
;
94 /* nisplusLDAPdumpError */
101 /* nisplusLDAPresyncService */
106 } __nis_resync_service_t
;
108 /* nisplusLDAPupdateBatching */
113 } __nis_update_batching_t
;
115 /* nisplusLDAPexclusiveWaitMode */
119 } __nis_exclusive_wait_mode_t
;
121 /* nisplusLDAPmatchFetch */
126 } __nis_match_fetch_t
;
128 /* Keep track of desired number of attempts and timeout */
134 /* Table mapping (and related) information */
136 time_t initTtlLo
; /* Initial lo TTL for table */
137 time_t initTtlHi
; /* Initial hi TTL for table */
138 time_t ttl
; /* TTL for table entries */
139 time_t *expire
; /* Expire times for entries */
140 time_t enumExpire
; /* Enumeration expiration */
141 bool_t fromLDAP
; /* Get data from LDAP ? */
142 bool_t toLDAP
; /* Write data to LDAP ? */
143 bool_t isMaster
; /* Are we master for this ? */
144 __nis_retrieve_error_t retrieveError
;
145 __nisdb_retry_t retrieveErrorRetry
;
146 __nis_store_error_t storeError
;
147 __nisdb_retry_t storeErrorRetry
;
148 __nis_store_error_disp_t
150 __nis_refresh_error_t refreshError
;
151 __nisdb_retry_t refreshErrorRetry
;
152 __nis_match_fetch_t matchFetch
;
153 __nis_table_mapping_t
*tm
;
157 bool_t isDeferredTable
;
163 ulong_t enumTime
; /* Microseconds */
164 } __nisdb_table_mapping_t
;
167 * Configuration data used by the rpc.nisd proper, but not in libnisdb.
170 __nis_initial_update_t initialUpdate
;
171 __nis_thread_creation_error_t threadCreationError
;
172 __nisdb_retry_t threadCreationErrorTimeout
;
173 __nis_dump_error_t dumpError
;
174 __nisdb_retry_t dumpErrorTimeout
;
175 __nis_resync_service_t resyncService
;
176 __nis_update_batching_t updateBatching
;
177 __nisdb_retry_t updateBatchingTimeout
;
178 __nis_exclusive_wait_mode_t exclusiveWaitMode
;
179 int numberOfServiceThreads
;
181 int maxRPCRecordSize
;
184 extern __nisdb_table_mapping_t ldapDBTableMapping
;
185 extern __nis_config_t ldapConfig
;
189 #endif /* __cplusplus */
191 #endif /* _NISDB_LDAP_H */