diff options
author | Gerald Carter <jerry@samba.org> | 2003-07-01 04:11:42 +0000 |
---|---|---|
committer | Gerald Carter <jerry@samba.org> | 2003-07-01 04:11:42 +0000 |
commit | 90470366ea4bdb8021a3453c4bbeb29f009668c1 (patch) | |
tree | 4c6ca8edd6262c1bf240826d5f87f4b4b2336527 /source | |
parent | 7bc4b65b91f98271089335cc301146d5f0c76c3a (diff) | |
download | samba-90470366ea4bdb8021a3453c4bbeb29f009668c1.tar.gz samba-90470366ea4bdb8021a3453c4bbeb29f009668c1.tar.xz samba-90470366ea4bdb8021a3453c4bbeb29f009668c1.zip |
* revert change to get_global_sam_name()
* add get_default_sam_name() to be used by make_user_info_map()
* add comments describing get_*_sam_name()
Diffstat (limited to 'source')
-rw-r--r-- | source/auth/auth_util.c | 14 | ||||
-rw-r--r-- | source/passdb/passdb.c | 25 |
2 files changed, 28 insertions, 11 deletions
diff --git a/source/auth/auth_util.c b/source/auth/auth_util.c index 5185f876c6e..ab08a28ff65 100644 --- a/source/auth/auth_util.c +++ b/source/auth/auth_util.c @@ -214,20 +214,16 @@ NTSTATUS make_user_info_map(auth_usersupplied_info **user_info, domain = lp_workgroup(); /* do what win2k does. Always map unknown domains to our own - and let the "passdb backend" handle unknown users */ + and let the "passdb backend" handle unknown users. */ if ( !is_trusted_domain(domain) ) - domain = get_global_sam_name(); + domain = get_default_sam_name(); /* we know that it is a trusted domain (and we are allowing them) or it is our domain */ - return make_user_info(user_info, - smb_name, internal_username, - client_domain, domain, - wksta_name, - lm_pwd, nt_pwd, - plaintext, - ntlmssp_flags, encrypted); + return make_user_info(user_info, smb_name, internal_username, + client_domain, domain, wksta_name, lm_pwd, nt_pwd, + plaintext, ntlmssp_flags, encrypted); } /**************************************************************************** diff --git a/source/passdb/passdb.c b/source/passdb/passdb.c index ee8ce64cf53..ece4a1e057a 100644 --- a/source/passdb/passdb.c +++ b/source/passdb/passdb.c @@ -27,17 +27,38 @@ #undef DBGC_CLASS #define DBGC_CLASS DBGC_PASSDB -const char *get_global_sam_name(void) +/****************************************************************** + get the default domain/netbios name to be used when + testing authentication. For example, if you connect + to a Windows member server using a bogus domain name, the + Windows box will map the BOGUS\user to DOMAIN\user. A + standalone box will map to WKS\user. +******************************************************************/ + +const char *get_default_sam_name(void) { /* standalone servers can only use the local netbios name */ if ( lp_server_role() == ROLE_STANDALONE ) return global_myname(); - /* Windows domain members default to the DOMAIN + /* Windows domain members default to the DOMAIN name when not specified */ return lp_workgroup(); } +/****************************************************************** + get the default domain/netbios name to be used when dealing + with our passdb list of accounts +******************************************************************/ + +const char *get_global_sam_name(void) +{ + if ((lp_server_role() == ROLE_DOMAIN_PDC) || (lp_server_role() == ROLE_DOMAIN_BDC)) { + return lp_workgroup(); + } + return global_myname(); +} + /************************************************************ Fill the SAM_ACCOUNT with default values. ***********************************************************/ |