2
Unix SMB/CIFS implementation.
3
idMap nss template plugin
5
Copyright (C) Gerald Carter 2006
7
This library is free software; you can redistribute it and/or
8
modify it under the terms of the GNU Lesser General Public
9
License as published by the Free Software Foundation; either
10
version 3 of the License, or (at your option) any later version.
12
This library is distributed in the hope that it will be useful,
13
but WITHOUT ANY WARRANTY; without even the implied warranty of
14
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
Library General Public License for more details.
17
You should have received a copy of the GNU Lesser General Public License
18
along with this program. If not, see <http://www.gnu.org/licenses/>.
24
/************************************************************************
25
***********************************************************************/
27
static NTSTATUS nss_template_init( struct nss_domain_entry *e )
32
/************************************************************************
33
***********************************************************************/
35
static NTSTATUS nss_template_get_info( struct nss_domain_entry *e,
45
if ( !homedir || !shell || !gecos )
46
return NT_STATUS_INVALID_PARAMETER;
48
/* protect against home directories using whitespace in the
50
*homedir = talloc_strdup( ctx, lp_template_homedir() );
51
*shell = talloc_strdup( ctx, lp_template_shell() );
54
if ( !*homedir || !*shell ) {
55
return NT_STATUS_NO_MEMORY;
61
/**********************************************************************
62
*********************************************************************/
64
static NTSTATUS nss_template_map_to_alias( TALLOC_CTX *mem_ctx,
65
struct nss_domain_entry *e,
69
return NT_STATUS_NOT_IMPLEMENTED;
72
/**********************************************************************
73
*********************************************************************/
75
static NTSTATUS nss_template_map_from_alias( TALLOC_CTX *mem_ctx,
76
struct nss_domain_entry *e,
80
return NT_STATUS_NOT_IMPLEMENTED;
83
/************************************************************************
84
***********************************************************************/
86
static NTSTATUS nss_template_close( void )
92
/************************************************************************
93
***********************************************************************/
95
static struct nss_info_methods nss_template_methods = {
96
.init = nss_template_init,
97
.get_nss_info = nss_template_get_info,
98
.map_to_alias = nss_template_map_to_alias,
99
.map_from_alias = nss_template_map_from_alias,
100
.close_fn = nss_template_close
103
NTSTATUS nss_info_template_init( void )
105
return smb_register_idmap_nss(SMB_NSS_INFO_INTERFACE_VERSION,
107
&nss_template_methods);