From 20f2305c50dc7eedd3b211a13937b2ed85235971 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Fri, 16 Sep 2005 20:06:10 +0000 Subject: r10276: Fix for bug #3104 from Leo Weppelman . Don't update the time on read-only shares. We need this as set_filetime (which can be called on close and other paths) can end up calling this function without the NEED_WRITE protection. Jeremy. (This used to be commit 54eab3828aa0405288b68f6954abba201564c9e7) --- source3/smbd/dosmode.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/source3/smbd/dosmode.c b/source3/smbd/dosmode.c index a2bc424b8e..ee2f1095fa 100644 --- a/source3/smbd/dosmode.c +++ b/source3/smbd/dosmode.c @@ -451,6 +451,17 @@ int file_utime(connection_struct *conn, const char *fname, struct utimbuf *times errno = 0; ZERO_STRUCT(sbuf); + /* Don't update the time on read-only shares */ + /* We need this as set_filetime (which can be called on + close and other paths) can end up calling this function + without the NEED_WRITE protection. Found by : + Leo Weppelman + */ + + if (!CAN_WRITE(conn)) { + return 0; + } + if(SMB_VFS_UTIME(conn,fname, times) == 0) return 0; -- cgit