weekend work. user / group database API.
authorLuke Leighton <lkcl@samba.org>
Sun, 29 Nov 1998 20:03:33 +0000 (20:03 +0000)
committerLuke Leighton <lkcl@samba.org>
Sun, 29 Nov 1998 20:03:33 +0000 (20:03 +0000)
commit5d5d7e4de7d1514ab87b07ede629de8aa00519a1
tree3af0a65e50bd318a27e595e4f086debfc14f4ffd
parent21d779bf7def71d5d9c899eabbb6a110860bd8e2
weekend work.  user / group database API.

- split sam_passwd and smb_passwd into separate higher-order function tables

- renamed struct smb_passwd's "smb_user" to "unix_user".  added "nt_user"
plus user_rid, and added a "wrap" function in both sam_passwd and smb_passwd
password databases to fill in the blank entries that are not obtained
from whatever password database API instance is being used.

NOTE: whenever a struct smb_passwd or struct sam_passwd is used, it MUST
be initialised with pwdb_sam_init() or pwd_smb_init(), see chgpasswd.c
for the only example outside of the password database APIs i could find.

- added query_useraliases code to rpcclient.

- dealt with some nasty interdependencies involving non-smbd programs
and the password database API.  this is still not satisfactorily
resolved completelely, but it's the best i can do for now.

- #ifdef'd out some password database options so that people don't
mistakenly set them unless they recompile to _use_ those options.

lots of debugging done, it's still not finished.  the unix/NT uid/gid
and user-rid/group-rid issues are better, but not perfect.  the "BUILTIN"
domain is still missing: users cannot be added to "BUILTIN" groups yet,
as we only have an "alias" db API and a "group" db API but not "builtin-alias"
db API...
40 files changed:
source/groupdb/aliasdb.c
source/groupdb/aliasfile.c
source/groupdb/aliasunix.c
source/groupdb/groupdb.c
source/groupdb/groupfile.c
source/groupdb/groupunix.c
source/include/ntdomain.h
source/include/proto.h
source/include/rpc_misc.h
source/include/rpc_samr.h
source/include/smb.h
source/lib/util.c
source/lib/util_sid.c
source/nmbd/nmbd.c
source/param/loadparm.c
source/passdb/ldap.c
source/passdb/nispass.c
source/passdb/passdb.c
source/passdb/passgrp.c
source/passdb/smbpass.c
source/passdb/smbpasschange.c
source/passdb/smbpassgroup.c
source/passdb/smbpassgroupunix.c
source/rpc_client/cli_login.c
source/rpc_client/cli_lsarpc.c
source/rpc_client/cli_samr.c
source/rpc_parse/parse_misc.c
source/rpc_parse/parse_samr.c
source/rpc_server/srv_lookup.c
source/rpc_server/srv_netlog.c
source/rpc_server/srv_samr.c
source/rpcclient/cmd_lsarpc.c
source/rpcclient/cmd_samr.c
source/rpcclient/display.c
source/smbd/chgpasswd.c
source/smbd/password.c
source/smbd/server.c
source/smbwrapper/smbw_dir.c
source/utils/smbpasswd.c
source/web/swat.c