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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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