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