--- ../samba_2_2.orig/smbd/service.c 2003-09-12 11:46:49.000000000 +1000 +++ smbd/service.c 2003-11-06 22:52:01.000000000 +1100 @@ -230,6 +230,7 @@ #endif uid_t euid; int ret; + user_struct *user_ctx; /* This must ONLY BE CALLED AS ROOT. As it exits this function as root. */ @@ -240,6 +241,11 @@ strlower(service); + user_ctx = get_valid_user_struct(vuid); + if (user_ctx) { + sub_set_smb_name(user_ctx->user.smb_name); + } + snum = find_service(service); if (snum < 0) { if (strequal(service,"IPC$") || strequal(service,"ADMIN$")) {