diff options
author | Tim Prouty <tprouty@samba.org> | 2008-12-06 16:08:35 -0800 |
---|---|---|
committer | Tim Prouty <tprouty@samba.org> | 2008-12-09 18:06:49 -0800 |
commit | 7b9f6dda131f471ae61c12e7eb06d67b8f02b1cf (patch) | |
tree | 7e948a71bc8d910f439d3d429eb9d31ccf334ade /source3/locking | |
parent | 4a9b092eb43603bae6190b8a5fdee20c9ebae26c (diff) | |
download | samba-7b9f6dda131f471ae61c12e7eb06d67b8f02b1cf.tar.gz samba-7b9f6dda131f471ae61c12e7eb06d67b8f02b1cf.tar.bz2 samba-7b9f6dda131f471ae61c12e7eb06d67b8f02b1cf.zip |
s3: [3/3]: Fix a delete on close divergence from windows and the associated torture test
This third patch cleans up by removing all of the code that is made
obsolete by the first patch. It should cause no functional changes.
Diffstat (limited to 'source3/locking')
-rw-r--r-- | source3/locking/locking.c | 46 |
1 files changed, 1 insertions, 45 deletions
diff --git a/source3/locking/locking.c b/source3/locking/locking.c index 33717f1bb9..a70f9d20fe 100644 --- a/source3/locking/locking.c +++ b/source3/locking/locking.c @@ -1067,13 +1067,10 @@ static void add_share_mode_entry(struct share_mode_lock *lck, } void set_share_mode(struct share_mode_lock *lck, files_struct *fsp, - uid_t uid, uint16 mid, uint16 op_type, bool initial_delete_on_close_allowed) + uid_t uid, uint16 mid, uint16 op_type) { struct share_mode_entry entry; fill_share_mode_entry(&entry, fsp, uid, mid, op_type); - if (initial_delete_on_close_allowed) { - entry.flags |= SHARE_MODE_ALLOW_INITIAL_DELETE_ON_CLOSE; - } add_share_mode_entry(lck, &entry); } @@ -1271,22 +1268,6 @@ NTSTATUS can_set_delete_on_close(files_struct *fsp, bool delete_on_close, return NT_STATUS_OK; } -/**************************************************************************** - Do we have an open file handle that created this entry ? -****************************************************************************/ - -bool can_set_initial_delete_on_close(const struct share_mode_lock *lck) -{ - int i; - - for (i=0; i<lck->num_share_modes; i++) { - if (lck->share_modes[i].flags & SHARE_MODE_ALLOW_INITIAL_DELETE_ON_CLOSE) { - return True; - } - } - return False; -} - /************************************************************************* Return a talloced copy of a UNIX_USER_TOKEN. NULL on fail. (Should this be in locking.c.... ?). @@ -1380,31 +1361,6 @@ bool set_delete_on_close(files_struct *fsp, bool delete_on_close, UNIX_USER_TOKE return True; } -/**************************************************************************** - Sets the allow initial delete on close flag for this share mode. -****************************************************************************/ - -bool set_allow_initial_delete_on_close(struct share_mode_lock *lck, files_struct *fsp, bool delete_on_close) -{ - struct share_mode_entry entry, *e; - - /* Don't care about the pid owner being correct here - just a search. */ - fill_share_mode_entry(&entry, fsp, (uid_t)-1, 0, NO_OPLOCK); - - e = find_share_mode_entry(lck, &entry); - if (e == NULL) { - return False; - } - - if (delete_on_close) { - e->flags |= SHARE_MODE_ALLOW_INITIAL_DELETE_ON_CLOSE; - } else { - e->flags &= ~SHARE_MODE_ALLOW_INITIAL_DELETE_ON_CLOSE; - } - lck->modified = True; - return True; -} - bool set_sticky_write_time(struct file_id fileid, struct timespec write_time) { struct share_mode_lock *lck; |