xref: /titanic_54/usr/src/cmd/nscd/nscd_initf.c (revision 07925104db56e5c3eacc4865b918bd16af5cec59)
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  */
21cb5caa98Sdjl /*
22*07925104Sgww  * Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
23cb5caa98Sdjl  */
24cb5caa98Sdjl 
25cb5caa98Sdjl #include <nss_common.h>
26cb5caa98Sdjl #include <nss_dbdefs.h>
27cb5caa98Sdjl #include "nscd_common.h"
28cb5caa98Sdjl #include "nscd_switch.h"
29cb5caa98Sdjl 
30cb5caa98Sdjl void
31cb5caa98Sdjl _nss_initf_passwd(nss_db_params_t *p)
32cb5caa98Sdjl {
33cb5caa98Sdjl 	p->name	= NSS_DBNAM_PASSWD;
34cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PASSWD;
35cb5caa98Sdjl }
36cb5caa98Sdjl 
37cb5caa98Sdjl void
38cb5caa98Sdjl _nss_initf_hosts(nss_db_params_t *p)
39cb5caa98Sdjl {
40cb5caa98Sdjl 	p->name	= NSS_DBNAM_HOSTS;
41cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_HOSTS;
42cb5caa98Sdjl }
43cb5caa98Sdjl 
44cb5caa98Sdjl void
45cb5caa98Sdjl _nss_initf_group(nss_db_params_t *p)
46cb5caa98Sdjl {
47cb5caa98Sdjl 	p->name	= NSS_DBNAM_GROUP;
48cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_GROUP;
49cb5caa98Sdjl }
50cb5caa98Sdjl 
51cb5caa98Sdjl void
52cb5caa98Sdjl _nss_initf_ipnodes(nss_db_params_t *p)
53cb5caa98Sdjl {
54cb5caa98Sdjl 	p->name	= NSS_DBNAM_IPNODES;
55cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_IPNODES;
56cb5caa98Sdjl }
57cb5caa98Sdjl 
58cb5caa98Sdjl void
59cb5caa98Sdjl _nss_initf_net(nss_db_params_t *p)
60cb5caa98Sdjl {
61cb5caa98Sdjl 	p->name	= NSS_DBNAM_NETWORKS;
62cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_NETWORKS;
63cb5caa98Sdjl }
64cb5caa98Sdjl 
65cb5caa98Sdjl void
66cb5caa98Sdjl _nss_initf_proto(nss_db_params_t *p)
67cb5caa98Sdjl {
68cb5caa98Sdjl 	p->name	= NSS_DBNAM_PROTOCOLS;
69cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PROTOCOLS;
70cb5caa98Sdjl }
71cb5caa98Sdjl 
72cb5caa98Sdjl void
73cb5caa98Sdjl _nss_initf_rpc(p)
74cb5caa98Sdjl 	nss_db_params_t	*p;
75cb5caa98Sdjl {
76cb5caa98Sdjl 	p->name	= NSS_DBNAM_RPC;
77cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_RPC;
78cb5caa98Sdjl }
79cb5caa98Sdjl 
80cb5caa98Sdjl void
81cb5caa98Sdjl _nss_initf_ethers(nss_db_params_t *p)
82cb5caa98Sdjl {
83cb5caa98Sdjl 	p->name	= NSS_DBNAM_ETHERS;
84cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_ETHERS;
85cb5caa98Sdjl }
86cb5caa98Sdjl 
87cb5caa98Sdjl void
88cb5caa98Sdjl _nss_initf_netmasks(nss_db_params_t *p)
89cb5caa98Sdjl {
90cb5caa98Sdjl 	p->name	= NSS_DBNAM_NETMASKS;
91cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_NETMASKS;
92cb5caa98Sdjl }
93cb5caa98Sdjl 
94cb5caa98Sdjl void
95cb5caa98Sdjl _nss_initf_bootparams(nss_db_params_t *p)
96cb5caa98Sdjl {
97cb5caa98Sdjl 	p->name	= NSS_DBNAM_BOOTPARAMS;
98cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_BOOTPARAMS;
99cb5caa98Sdjl }
100cb5caa98Sdjl 
101cb5caa98Sdjl void
102cb5caa98Sdjl _nss_initf_publickey(nss_db_params_t *p)
103cb5caa98Sdjl {
104cb5caa98Sdjl 	p->name	= NSS_DBNAM_PUBLICKEY;
105cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PUBLICKEY;
106cb5caa98Sdjl }
107cb5caa98Sdjl 
108cb5caa98Sdjl void
109cb5caa98Sdjl _nss_initf_netgroup(nss_db_params_t *p)
110cb5caa98Sdjl {
111cb5caa98Sdjl 	p->name	= NSS_DBNAM_NETGROUP;
112cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_NETGROUP;
113cb5caa98Sdjl }
114cb5caa98Sdjl 
115cb5caa98Sdjl void
116cb5caa98Sdjl _nss_initf_services(nss_db_params_t *p)
117cb5caa98Sdjl {
118cb5caa98Sdjl 	p->name	= NSS_DBNAM_SERVICES;
119cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_SERVICES;
120cb5caa98Sdjl }
121cb5caa98Sdjl 
122cb5caa98Sdjl void
123cb5caa98Sdjl _nss_initf_printers(nss_db_params_t *p)
124cb5caa98Sdjl {
125cb5caa98Sdjl 	p->name	= NSS_DBNAM_PRINTERS;
126cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PRINTERS;
127cb5caa98Sdjl }
128cb5caa98Sdjl 
129cb5caa98Sdjl void
130cb5caa98Sdjl _nss_initf_authattr(nss_db_params_t *p)
131cb5caa98Sdjl {
132cb5caa98Sdjl 	p->name	= NSS_DBNAM_AUTHATTR;
133cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_AUTHATTR;
134cb5caa98Sdjl }
135cb5caa98Sdjl 
136cb5caa98Sdjl void
137cb5caa98Sdjl _nss_initf_profattr(nss_db_params_t *p)
138cb5caa98Sdjl {
139cb5caa98Sdjl 	p->name	= NSS_DBNAM_PROFATTR;
140cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PROFATTR;
141cb5caa98Sdjl }
142cb5caa98Sdjl 
143cb5caa98Sdjl void
144cb5caa98Sdjl _nss_initf_execattr(nss_db_params_t *p)
145cb5caa98Sdjl {
146cb5caa98Sdjl 	p->name	= NSS_DBNAM_EXECATTR;
147cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PROFATTR;
148cb5caa98Sdjl 	p->config_name    = NSS_DBNAM_PROFATTR; /* use config for "prof_attr" */
149cb5caa98Sdjl }
150cb5caa98Sdjl 
151cb5caa98Sdjl void
152cb5caa98Sdjl _nss_initf_userattr(nss_db_params_t *p)
153cb5caa98Sdjl {
154cb5caa98Sdjl 	p->name	= NSS_DBNAM_USERATTR;
155cb5caa98Sdjl 	p->config_name = NSS_DBNAM_PASSWD;
156cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_USERATTR;
157cb5caa98Sdjl }
158cb5caa98Sdjl 
159cb5caa98Sdjl void
160cb5caa98Sdjl _nss_initf_project(nss_db_params_t *p)
161cb5caa98Sdjl {
162cb5caa98Sdjl 	p->name	= NSS_DBNAM_PROJECT;
163cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PROJECT;
164cb5caa98Sdjl }
165cb5caa98Sdjl 
166cb5caa98Sdjl void
167cb5caa98Sdjl _nss_initf_auuser(nss_db_params_t *p)
168cb5caa98Sdjl {
169cb5caa98Sdjl 	p->name	= NSS_DBNAM_AUDITUSER;
170cb5caa98Sdjl 	p->config_name	= NSS_DBNAM_PASSWD;
171cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_AUDITUSER;
172cb5caa98Sdjl }
173cb5caa98Sdjl 
174cb5caa98Sdjl void
175cb5caa98Sdjl _nss_initf_shadow(nss_db_params_t *p)
176cb5caa98Sdjl {
177cb5caa98Sdjl 	p->name	= NSS_DBNAM_SHADOW;
178cb5caa98Sdjl 	p->config_name	= NSS_DBNAM_PASSWD;
179cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PASSWD;
180cb5caa98Sdjl }
181cb5caa98Sdjl 
182cb5caa98Sdjl void
183cb5caa98Sdjl _nss_initf_passwd_compat(nss_db_params_t *p)
184cb5caa98Sdjl {
185cb5caa98Sdjl 	p->name	= NSS_DBNAM_PASSWD;
186cb5caa98Sdjl 	p->config_name	= NSS_DBNAM_PASSWD_COMPAT;
187cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_PASSWD_COMPAT;
188cb5caa98Sdjl }
189cb5caa98Sdjl 
190cb5caa98Sdjl void
191cb5caa98Sdjl _nss_initf_group_compat(nss_db_params_t *p)
192cb5caa98Sdjl {
193cb5caa98Sdjl 	p->name	= NSS_DBNAM_GROUP;
194cb5caa98Sdjl 	p->config_name	= NSS_DBNAM_GROUP_COMPAT;
195cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_GROUP_COMPAT;
196cb5caa98Sdjl }
197cb5caa98Sdjl 
198cb5caa98Sdjl void
199cb5caa98Sdjl _nss_initf_tsol_rh(nss_db_params_t *p)
200cb5caa98Sdjl {
201cb5caa98Sdjl 	p->name = NSS_DBNAM_TSOL_RH;
202cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_TSOL_RH;
203cb5caa98Sdjl }
204cb5caa98Sdjl 
205cb5caa98Sdjl void
206cb5caa98Sdjl _nss_initf_tsol_tp(nss_db_params_t *p)
207cb5caa98Sdjl {
208cb5caa98Sdjl 	p->name = NSS_DBNAM_TSOL_TP;
209cb5caa98Sdjl 	p->default_config = NSS_DEFCONF_TSOL_TP;
210cb5caa98Sdjl }
211cb5caa98Sdjl 
212cb5caa98Sdjl nss_db_initf_t	nscd_nss_db_initf[] = {
213cb5caa98Sdjl 	_nss_initf_passwd,
214cb5caa98Sdjl 	_nss_initf_hosts,
215cb5caa98Sdjl 	_nss_initf_group,
216cb5caa98Sdjl 	_nss_initf_ipnodes,
217cb5caa98Sdjl 	_nss_initf_net,
218cb5caa98Sdjl 	_nss_initf_proto,
219cb5caa98Sdjl 	_nss_initf_rpc,
220cb5caa98Sdjl 	_nss_initf_ethers,
221cb5caa98Sdjl 	_nss_initf_netmasks,
222cb5caa98Sdjl 	_nss_initf_bootparams,
223cb5caa98Sdjl 	_nss_initf_publickey,
224cb5caa98Sdjl 	_nss_initf_netgroup,
225cb5caa98Sdjl 	_nss_initf_services,
226cb5caa98Sdjl 	_nss_initf_printers,
227cb5caa98Sdjl 	_nss_initf_authattr,
228cb5caa98Sdjl 	_nss_initf_profattr,
229cb5caa98Sdjl 	_nss_initf_execattr,
230cb5caa98Sdjl 	_nss_initf_userattr,
231cb5caa98Sdjl 	_nss_initf_project,
232cb5caa98Sdjl 	_nss_initf_shadow,
233cb5caa98Sdjl 	_nss_initf_auuser,
234cb5caa98Sdjl 	_nss_initf_tsol_rh,
235cb5caa98Sdjl 	_nss_initf_tsol_tp,
236cb5caa98Sdjl 	_nss_initf_passwd_compat,
237cb5caa98Sdjl 	_nss_initf_group_compat,
238cb5caa98Sdjl 	/*
239*07925104Sgww 	 * no initf() for pseudo-databases: passwd, shadow, user_attr,
240*07925104Sgww 	 * and group (when called from the compat backend)
241cb5caa98Sdjl 	 */
242cb5caa98Sdjl 	NULL,
243cb5caa98Sdjl 	NULL,
244cb5caa98Sdjl 	NULL,
245cb5caa98Sdjl 	NULL};
246