Index: auth/auth_util.c =================================================================== RCS file: /data/cvs/samba/source/auth/auth_util.c,v retrieving revision 1.39.2.46 diff -u -r1.39.2.46 auth_util.c --- auth/auth_util.c 20 Oct 2003 16:49:45 -0000 1.39.2.46 +++ auth/auth_util.c 4 Nov 2003 19:47:10 -0000 @@ -952,14 +952,16 @@ } /**************************************************************************** - Wrapper to allow the getpwnam() call to styrip the domain name and - try again in case a local UNIX user is already there. + Wrapper to allow the getpwnam() call to strip the domain name and + try again in case a local UNIX user is already there. Also run through + the username if we fallback to the username only. ****************************************************************************/ struct passwd *smb_getpwnam( char *domuser ) { struct passwd *pw; char *p; + fstring mapped_username; pw = Get_Pwnam( domuser ); if ( pw ) @@ -969,8 +971,11 @@ p = strchr( domuser, *lp_winbind_separator() ); - if ( p ) - return Get_Pwnam(p+1); + if ( p ) { + fstrcpy( mapped_username, p ); + map_username( mapped_username ); + return Get_Pwnam(mapped_username); + } return NULL; }