diff options
author | Jeremy Allison <jra@samba.org> | 2012-04-04 14:54:02 -0700 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2012-04-04 14:58:42 -0700 |
commit | c10ed730d481e3d5b6710999b11b8e6969e1c16e (patch) | |
tree | 21c815c14da2fdd2bf7e7da2315cdc49ff94b9e4 /source3/locking/proto.h | |
parent | f042de2f346c98a852957cdbb09a7f8ac871b69c (diff) | |
download | samba-c10ed730d481e3d5b6710999b11b8e6969e1c16e.tar.gz samba-c10ed730d481e3d5b6710999b11b8e6969e1c16e.tar.bz2 samba-c10ed730d481e3d5b6710999b11b8e6969e1c16e.zip |
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.
Diffstat (limited to 'source3/locking/proto.h')
-rw-r--r-- | source3/locking/proto.h | 10 |
1 files changed, 8 insertions, 2 deletions
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); |