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