From 7f9fe127ba31e6dd064d090d5ffc8eeb377627ab Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Thu, 5 Nov 2009 16:20:11 -0800 Subject: Get closer to an accurate model of Windows timestamp changes. "Normal" non truncate writes always cause the timestamp to be set on close. Once a close is done on a handle this can reset the sticky write time to current time also. Updated smbtorture4 confirms this. Jeremy. --- source3/include/proto.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'source3/include') diff --git a/source3/include/proto.h b/source3/include/proto.h index d08ed79050..ef811e5774 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -6108,7 +6108,9 @@ NTSTATUS change_oem_password(struct samu *hnd, char *old_passwd, char *new_passw /* The following definitions come from smbd/close.c */ -void set_close_write_time(struct files_struct *fsp, struct timespec ts); +void set_close_write_time(struct share_mode_lock *lck, + struct files_struct *fsp, + struct timespec ts); NTSTATUS close_file(struct smb_request *req, files_struct *fsp, enum file_close_type close_type); void msg_close_file(struct messaging_context *msg_ctx, @@ -6249,7 +6251,6 @@ int file_ntimes(connection_struct *conn, const struct smb_filename *smb_fname, bool set_sticky_write_time_path(struct file_id fileid, struct timespec mtime); bool set_sticky_write_time_fsp(struct files_struct *fsp, struct timespec mtime); -bool update_write_time(struct files_struct *fsp); NTSTATUS set_create_timespec_ea(connection_struct *conn, struct files_struct *fsp, -- cgit