[PATCH] change SAM DB (files,tdb,ldap,nisplus) in smb.conf

Stefan (metze) Metzmacher metze at metzemix.de
Tue Jan 8 23:40:02 GMT 2002

Hi Jerry,

I have found your definition of struct passdb_ops in passdb.h in 3.0alpha12 :

I think using a struct of function pointers is great.
My question is: should we use only one struct or a list of structs?

If we use a list we maybe let only the first module call it's 
*_add_sam_account function, this is our main passdb and if it failed (e.g. 
the LDAP-server is down) the account is add to an passdb. We can point the 
add_sam_account pointer of the second and upper backends to a dummy 
function witch returns always false.

To use shared libraries is nice for modules witch not in samba now and 
should be add without recompiling the rest of samba.
But I would use ldap,tdb,file,(nisplus) as builtin passdb backends and let 
only other backends load via shared libs, with are searched in passdb 
module(s) path
as path/pdb_*.so and * is the modules name called in smb.conf.

in smb.conf
passdb module path = /etc/samba/modules
(maybe changed in : passdb modules path )
passdb backends = ldap mysql radius file

e.g 	the mysql module must be found at /etc/samba/modules/pdb_mysql.so
	the radius module must be found at /etc/samba/modules/pdb_radius.so

Have somebody else an opinion on that?

More information about the samba-technical mailing list