From c10ed730d481e3d5b6710999b11b8e6969e1c16e Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Wed, 4 Apr 2012 14:54:02 -0700 Subject: Second part of bugfix for bug #8837 - smbd crashes when deleting directory and veto files are enabled. Store the 'struct security_token' as well as the 'struct security_unix_token' inside the locking db when setting a delete on close. --- source3/locking/proto.h | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'source3/locking/proto.h') diff --git a/source3/locking/proto.h b/source3/locking/proto.h index 3a6df37e93..54badd9149 100644 --- a/source3/locking/proto.h +++ b/source3/locking/proto.h @@ -178,12 +178,18 @@ void del_deferred_open_entry(struct share_mode_lock *lck, uint64_t mid, struct server_id pid); bool remove_share_oplock(struct share_mode_lock *lck, files_struct *fsp); bool downgrade_share_oplock(struct share_mode_lock *lck, files_struct *fsp); -const struct security_unix_token *get_delete_on_close_token(struct share_mode_lock *lck, uint32_t name_hash); +bool get_delete_on_close_token(struct share_mode_lock *lck, + uint32_t name_hash, + const struct security_token **pp_nt_tok, + const struct security_unix_token **pp_tok); void set_delete_on_close_lck(files_struct *fsp, struct share_mode_lock *lck, bool delete_on_close, + const struct security_token *nt_tok, + const struct security_unix_token *tok); +bool set_delete_on_close(files_struct *fsp, bool delete_on_close, + const struct security_token *nt_tok, const struct security_unix_token *tok); -bool set_delete_on_close(files_struct *fsp, bool delete_on_close, const struct security_unix_token *tok); bool is_delete_on_close_set(struct share_mode_lock *lck, uint32_t name_hash); bool set_sticky_write_time(struct file_id fileid, struct timespec write_time); bool set_write_time(struct file_id fileid, struct timespec write_time); -- cgit