summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/smbd/reply.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c
index 9184a1a696..63f8d0bb61 100644
--- a/source3/smbd/reply.c
+++ b/source3/smbd/reply.c
@@ -1004,6 +1004,15 @@ int reply_setatr(connection_struct *conn, char *inbuf,char *outbuf, int dum_size
return ERROR_NT(NT_STATUS_OBJECT_PATH_NOT_FOUND);
}
+ if (strequal(fname, ".")) {
+ /*
+ * Not sure here is the right place to catch this
+ * condition. Might be moved to somewhere else later -- vl
+ */
+ END_PROFILE(SMBsetatr);
+ return ERROR_NT(NT_STATUS_ACCESS_DENIED);
+ }
+
mode = SVAL(inbuf,smb_vwv0);
mtime = srv_make_unix_date3(inbuf+smb_vwv1);