diff options
Diffstat (limited to 'source3/smbd/close.c')
-rw-r--r-- | source3/smbd/close.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/source3/smbd/close.c b/source3/smbd/close.c index ca1ac47fa0..1530b96797 100644 --- a/source3/smbd/close.c +++ b/source3/smbd/close.c @@ -21,8 +21,6 @@ #include "includes.h" -extern struct current_user current_user; - /**************************************************************************** Run a file if it is a magic script. ****************************************************************************/ @@ -332,12 +330,12 @@ static NTSTATUS close_remove_share_mode(files_struct *fsp, /* Initial delete on close was set and no one else * wrote a real delete on close. */ - if (current_user.vuid != fsp->vuid) { + if (get_current_vuid(conn) != fsp->vuid) { become_user(conn, fsp->vuid); became_user = True; } fsp->delete_on_close = true; - set_delete_on_close_lck(lck, True, ¤t_user.ut); + set_delete_on_close_lck(lck, True, get_current_utok(fsp->conn)); if (became_user) { unbecome_user(); } @@ -389,7 +387,7 @@ static NTSTATUS close_remove_share_mode(files_struct *fsp, */ fsp->update_write_time_on_close = false; - if (!unix_token_equal(lck->delete_token, ¤t_user.ut)) { + if (!unix_token_equal(lck->delete_token, get_current_utok(conn))) { /* Become the user who requested the delete. */ DEBUG(5,("close_remove_share_mode: file %s. " @@ -955,12 +953,12 @@ static NTSTATUS close_directory(struct smb_request *req, files_struct *fsp, * directories we don't care if anyone else * wrote a real delete on close. */ - if (current_user.vuid != fsp->vuid) { + if (get_current_vuid(fsp->conn) != fsp->vuid) { become_user(fsp->conn, fsp->vuid); became_user = True; } send_stat_cache_delete_message(fsp->fsp_name->base_name); - set_delete_on_close_lck(lck, True, ¤t_user.ut); + set_delete_on_close_lck(lck, True, get_current_utok(fsp->conn)); fsp->delete_on_close = true; if (became_user) { unbecome_user(); |