r16945: Sync trunk -> 3.0 for 3.0.24 code. Still need
[samba.git] / source3 / smbd / password.c
index 73b0ebb4b32f1b3e300bf69ac3287fbefa78d338..389086e9bf7a840b1bc87fa884a0edb449abf266 100644 (file)
@@ -29,9 +29,6 @@ static user_struct *validated_users;
 static int next_vuid = VUID_OFFSET;
 static int num_validated_vuids;
 
-extern userdom_struct current_user_info;
-
-
 /****************************************************************************
  Check if a uid has been validated, and return an pointer to the user_struct
  if it has. NULL if not. vuid is biased by an offset. This allows us to
@@ -550,9 +547,11 @@ static BOOL user_ok(const char *user, int snum)
                str_list_copy(&invalid, lp_invalid_users(snum));
                if (invalid &&
                    str_list_substitute(invalid, "%S", lp_servicename(snum))) {
-                       if ( invalid &&
-                            str_list_sub_basic(invalid,
-                                               current_user_info.smb_name) ) {
+
+                       /* This is used in sec=share only, so no current user
+                        * around to pass to str_list_sub_basic() */
+
+                       if ( invalid && str_list_sub_basic(invalid, "", "") ) {
                                ret = !user_in_list(user,
                                                    (const char **)invalid);
                        }
@@ -565,9 +564,11 @@ static BOOL user_ok(const char *user, int snum)
                str_list_copy(&valid, lp_valid_users(snum));
                if ( valid &&
                     str_list_substitute(valid, "%S", lp_servicename(snum)) ) {
-                       if ( valid &&
-                            str_list_sub_basic(valid,
-                                               current_user_info.smb_name) ) {
+
+                       /* This is used in sec=share only, so no current user
+                        * around to pass to str_list_sub_basic() */
+
+                       if ( valid && str_list_sub_basic(valid, "", "") ) {
                                ret = user_in_list(user, (const char **)valid);
                        }
                }