xref: /titanic_53/usr/src/cmd/nscd/nscd_initf.c (revision 6a634c9dca3093f3922e4b7ab826d7bdf17bf78e)
1cb5caa98Sdjl /*
2cb5caa98Sdjl  * CDDL HEADER START
3cb5caa98Sdjl  *
4cb5caa98Sdjl  * The contents of this file are subject to the terms of the
5cb5caa98Sdjl  * Common Development and Distribution License (the "License").
6cb5caa98Sdjl  * You may not use this file except in compliance with the License.
7cb5caa98Sdjl  *
8cb5caa98Sdjl  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9cb5caa98Sdjl  * or http://www.opensolaris.org/os/licensing.
10cb5caa98Sdjl  * See the License for the specific language governing permissions
11cb5caa98Sdjl  * and limitations under the License.
12cb5caa98Sdjl  *
13cb5caa98Sdjl  * When distributing Covered Code, include this CDDL HEADER in each
14cb5caa98Sdjl  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15cb5caa98Sdjl  * If applicable, add the following below this CDDL HEADER, with the
16cb5caa98Sdjl  * fields enclosed by brackets "[]" replaced with your own identifying
17cb5caa98Sdjl  * information: Portions Copyright [yyyy] [name of copyright owner]
18cb5caa98Sdjl  *
19cb5caa98Sdjl  * CDDL HEADER END
20cb5caa98Sdjl  */
21*23a1cceaSRoger A. Faulkner 
22cb5caa98Sdjl /*
2307925104Sgww  * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
24cb5caa98Sdjl  */
25cb5caa98Sdjl 
26cb5caa98Sdjl #include <nss_common.h>
27cb5caa98Sdjl #include <nss_dbdefs.h>
28cb5caa98Sdjl #include "nscd_common.h"
29cb5caa98Sdjl #include "nscd_switch.h"
30cb5caa98Sdjl 
31cb5caa98Sdjl void
_nss_initf_passwd(nss_db_params_t * p)32cb5caa98Sdjl _nss_initf_passwd(nss_db_params_t *p)
33cb5caa98Sdjl {
34cb5caa98Sdjl 	p->name	= NSS_DBNAM_PASSWD;
35cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PASSWD;
36cb5caa98Sdjl }
37cb5caa98Sdjl 
38cb5caa98Sdjl void
_nss_initf_hosts(nss_db_params_t * p)39cb5caa98Sdjl _nss_initf_hosts(nss_db_params_t *p)
40cb5caa98Sdjl {
41cb5caa98Sdjl 	p->name	= NSS_DBNAM_HOSTS;
42cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_HOSTS;
43cb5caa98Sdjl }
44cb5caa98Sdjl 
45cb5caa98Sdjl void
_nss_initf_group(nss_db_params_t * p)46cb5caa98Sdjl _nss_initf_group(nss_db_params_t *p)
47cb5caa98Sdjl {
48cb5caa98Sdjl 	p->name	= NSS_DBNAM_GROUP;
49cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_GROUP;
50cb5caa98Sdjl }
51cb5caa98Sdjl 
52cb5caa98Sdjl void
_nss_initf_ipnodes(nss_db_params_t * p)53cb5caa98Sdjl _nss_initf_ipnodes(nss_db_params_t *p)
54cb5caa98Sdjl {
55cb5caa98Sdjl 	p->name	= NSS_DBNAM_IPNODES;
56cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_IPNODES;
57cb5caa98Sdjl }
58cb5caa98Sdjl 
59cb5caa98Sdjl void
_nss_initf_net(nss_db_params_t * p)60cb5caa98Sdjl _nss_initf_net(nss_db_params_t *p)
61cb5caa98Sdjl {
62cb5caa98Sdjl 	p->name	= NSS_DBNAM_NETWORKS;
63cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_NETWORKS;
64cb5caa98Sdjl }
65cb5caa98Sdjl 
66cb5caa98Sdjl void
_nss_initf_proto(nss_db_params_t * p)67cb5caa98Sdjl _nss_initf_proto(nss_db_params_t *p)
68cb5caa98Sdjl {
69cb5caa98Sdjl 	p->name	= NSS_DBNAM_PROTOCOLS;
70cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PROTOCOLS;
71cb5caa98Sdjl }
72cb5caa98Sdjl 
73cb5caa98Sdjl void
_nss_initf_rpc(p)74cb5caa98Sdjl _nss_initf_rpc(p)
75cb5caa98Sdjl 	nss_db_params_t	*p;
76cb5caa98Sdjl {
77cb5caa98Sdjl 	p->name	= NSS_DBNAM_RPC;
78cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_RPC;
79cb5caa98Sdjl }
80cb5caa98Sdjl 
81cb5caa98Sdjl void
_nss_initf_ethers(nss_db_params_t * p)82cb5caa98Sdjl _nss_initf_ethers(nss_db_params_t *p)
83cb5caa98Sdjl {
84cb5caa98Sdjl 	p->name	= NSS_DBNAM_ETHERS;
85cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_ETHERS;
86cb5caa98Sdjl }
87cb5caa98Sdjl 
88cb5caa98Sdjl void
_nss_initf_netmasks(nss_db_params_t * p)89cb5caa98Sdjl _nss_initf_netmasks(nss_db_params_t *p)
90cb5caa98Sdjl {
91cb5caa98Sdjl 	p->name	= NSS_DBNAM_NETMASKS;
92cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_NETMASKS;
93cb5caa98Sdjl }
94cb5caa98Sdjl 
95cb5caa98Sdjl void
_nss_initf_bootparams(nss_db_params_t * p)96cb5caa98Sdjl _nss_initf_bootparams(nss_db_params_t *p)
97cb5caa98Sdjl {
98cb5caa98Sdjl 	p->name	= NSS_DBNAM_BOOTPARAMS;
99cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_BOOTPARAMS;
100cb5caa98Sdjl }
101cb5caa98Sdjl 
102cb5caa98Sdjl void
_nss_initf_publickey(nss_db_params_t * p)103cb5caa98Sdjl _nss_initf_publickey(nss_db_params_t *p)
104cb5caa98Sdjl {
105cb5caa98Sdjl 	p->name	= NSS_DBNAM_PUBLICKEY;
106cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PUBLICKEY;
107cb5caa98Sdjl }
108cb5caa98Sdjl 
109cb5caa98Sdjl void
_nss_initf_netgroup(nss_db_params_t * p)110cb5caa98Sdjl _nss_initf_netgroup(nss_db_params_t *p)
111cb5caa98Sdjl {
112cb5caa98Sdjl 	p->name	= NSS_DBNAM_NETGROUP;
113cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_NETGROUP;
114cb5caa98Sdjl }
115cb5caa98Sdjl 
116cb5caa98Sdjl void
_nss_initf_services(nss_db_params_t * p)117cb5caa98Sdjl _nss_initf_services(nss_db_params_t *p)
118cb5caa98Sdjl {
119cb5caa98Sdjl 	p->name	= NSS_DBNAM_SERVICES;
120cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_SERVICES;
121cb5caa98Sdjl }
122cb5caa98Sdjl 
123cb5caa98Sdjl void
_nss_initf_printers(nss_db_params_t * p)124cb5caa98Sdjl _nss_initf_printers(nss_db_params_t *p)
125cb5caa98Sdjl {
126cb5caa98Sdjl 	p->name	= NSS_DBNAM_PRINTERS;
127cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PRINTERS;
128cb5caa98Sdjl }
129cb5caa98Sdjl 
130cb5caa98Sdjl void
_nss_initf_authattr(nss_db_params_t * p)131cb5caa98Sdjl _nss_initf_authattr(nss_db_params_t *p)
132cb5caa98Sdjl {
133cb5caa98Sdjl 	p->name	= NSS_DBNAM_AUTHATTR;
134cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_AUTHATTR;
135cb5caa98Sdjl }
136cb5caa98Sdjl 
137cb5caa98Sdjl void
_nss_initf_profattr(nss_db_params_t * p)138cb5caa98Sdjl _nss_initf_profattr(nss_db_params_t *p)
139cb5caa98Sdjl {
140cb5caa98Sdjl 	p->name	= NSS_DBNAM_PROFATTR;
141cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PROFATTR;
142cb5caa98Sdjl }
143cb5caa98Sdjl 
144cb5caa98Sdjl void
_nss_initf_execattr(nss_db_params_t * p)145cb5caa98Sdjl _nss_initf_execattr(nss_db_params_t *p)
146cb5caa98Sdjl {
147cb5caa98Sdjl 	p->name	= NSS_DBNAM_EXECATTR;
148cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PROFATTR;
149cb5caa98Sdjl 	p->config_name    = NSS_DBNAM_PROFATTR; /* use config for "prof_attr" */
150cb5caa98Sdjl }
151cb5caa98Sdjl 
152cb5caa98Sdjl void
_nss_initf_userattr(nss_db_params_t * p)153cb5caa98Sdjl _nss_initf_userattr(nss_db_params_t *p)
154cb5caa98Sdjl {
155cb5caa98Sdjl 	p->name	= NSS_DBNAM_USERATTR;
156cb5caa98Sdjl 	p->config_name = NSS_DBNAM_PASSWD;
157cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_USERATTR;
158cb5caa98Sdjl }
159cb5caa98Sdjl 
160cb5caa98Sdjl void
_nss_initf_project(nss_db_params_t * p)161cb5caa98Sdjl _nss_initf_project(nss_db_params_t *p)
162cb5caa98Sdjl {
163cb5caa98Sdjl 	p->name	= NSS_DBNAM_PROJECT;
164cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PROJECT;
165cb5caa98Sdjl }
166cb5caa98Sdjl 
167cb5caa98Sdjl void
_nss_initf_auuser(nss_db_params_t * p)168cb5caa98Sdjl _nss_initf_auuser(nss_db_params_t *p)
169cb5caa98Sdjl {
170cb5caa98Sdjl 	p->name	= NSS_DBNAM_AUDITUSER;
171cb5caa98Sdjl 	p->config_name	= NSS_DBNAM_PASSWD;
172cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_AUDITUSER;
173cb5caa98Sdjl }
174cb5caa98Sdjl 
175cb5caa98Sdjl void
_nss_initf_shadow(nss_db_params_t * p)176cb5caa98Sdjl _nss_initf_shadow(nss_db_params_t *p)
177cb5caa98Sdjl {
178cb5caa98Sdjl 	p->name	= NSS_DBNAM_SHADOW;
179cb5caa98Sdjl 	p->config_name	= NSS_DBNAM_PASSWD;
180cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PASSWD;
181cb5caa98Sdjl }
182cb5caa98Sdjl 
183cb5caa98Sdjl void
_nss_initf_passwd_compat(nss_db_params_t * p)184cb5caa98Sdjl _nss_initf_passwd_compat(nss_db_params_t *p)
185cb5caa98Sdjl {
186cb5caa98Sdjl 	p->name	= NSS_DBNAM_PASSWD;
187cb5caa98Sdjl 	p->config_name	= NSS_DBNAM_PASSWD_COMPAT;
188cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PASSWD_COMPAT;
189cb5caa98Sdjl }
190cb5caa98Sdjl 
191cb5caa98Sdjl void
_nss_initf_group_compat(nss_db_params_t * p)192cb5caa98Sdjl _nss_initf_group_compat(nss_db_params_t *p)
193cb5caa98Sdjl {
194cb5caa98Sdjl 	p->name	= NSS_DBNAM_GROUP;
195cb5caa98Sdjl 	p->config_name	= NSS_DBNAM_GROUP_COMPAT;
196cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_GROUP_COMPAT;
197cb5caa98Sdjl }
198cb5caa98Sdjl 
199cb5caa98Sdjl void
_nss_initf_tsol_rh(nss_db_params_t * p)200cb5caa98Sdjl _nss_initf_tsol_rh(nss_db_params_t *p)
201cb5caa98Sdjl {
202cb5caa98Sdjl 	p->name = NSS_DBNAM_TSOL_RH;
203cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_TSOL_RH;
204cb5caa98Sdjl }
205cb5caa98Sdjl 
206cb5caa98Sdjl void
_nss_initf_tsol_tp(nss_db_params_t * p)207cb5caa98Sdjl _nss_initf_tsol_tp(nss_db_params_t *p)
208cb5caa98Sdjl {
209cb5caa98Sdjl 	p->name = NSS_DBNAM_TSOL_TP;
210cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_TSOL_TP;
211cb5caa98Sdjl }
212cb5caa98Sdjl 
213cb5caa98Sdjl nss_db_initf_t	nscd_nss_db_initf[] = {
214cb5caa98Sdjl 	_nss_initf_passwd,
215cb5caa98Sdjl 	_nss_initf_hosts,
216cb5caa98Sdjl 	_nss_initf_group,
217cb5caa98Sdjl 	_nss_initf_ipnodes,
218cb5caa98Sdjl 	_nss_initf_net,
219cb5caa98Sdjl 	_nss_initf_proto,
220cb5caa98Sdjl 	_nss_initf_rpc,
221cb5caa98Sdjl 	_nss_initf_ethers,
222cb5caa98Sdjl 	_nss_initf_netmasks,
223cb5caa98Sdjl 	_nss_initf_bootparams,
224cb5caa98Sdjl 	_nss_initf_publickey,
225cb5caa98Sdjl 	_nss_initf_netgroup,
226cb5caa98Sdjl 	_nss_initf_services,
227cb5caa98Sdjl 	_nss_initf_printers,
228cb5caa98Sdjl 	_nss_initf_authattr,
229cb5caa98Sdjl 	_nss_initf_profattr,
230cb5caa98Sdjl 	_nss_initf_execattr,
231cb5caa98Sdjl 	_nss_initf_userattr,
232cb5caa98Sdjl 	_nss_initf_project,
233cb5caa98Sdjl 	_nss_initf_shadow,
234cb5caa98Sdjl 	_nss_initf_auuser,
235cb5caa98Sdjl 	_nss_initf_tsol_rh,
236cb5caa98Sdjl 	_nss_initf_tsol_tp,
237cb5caa98Sdjl 	_nss_initf_passwd_compat,
238cb5caa98Sdjl 	_nss_initf_group_compat,
239cb5caa98Sdjl 	/*
240*23a1cceaSRoger A. Faulkner 	 * no initf() for pseudo-databases: passwd, shadow, audit_user,
241*23a1cceaSRoger A. Faulkner 	 * user_attr, and group (when called from the compat backend)
242cb5caa98Sdjl 	 */
243cb5caa98Sdjl 	NULL,
244cb5caa98Sdjl 	NULL,
245cb5caa98Sdjl 	NULL,
246*23a1cceaSRoger A. Faulkner 	NULL,
247cb5caa98Sdjl 	NULL};
248