summaryrefslogtreecommitdiffstats
path: root/source/include/smb_macros.h
diff options
context:
space:
mode:
Diffstat (limited to 'source/include/smb_macros.h')
-rw-r--r--source/include/smb_macros.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/source/include/smb_macros.h b/source/include/smb_macros.h
index c65812ebdf6..88838b4b913 100644
--- a/source/include/smb_macros.h
+++ b/source/include/smb_macros.h
@@ -80,7 +80,10 @@
#define FNUM_OK(fsp,c) (OPEN_FSP(fsp) && (c)==(fsp)->conn)
#define CHECK_FSP(fsp,conn) if (!FNUM_OK(fsp,conn)) \
- return(ERROR(ERRDOS,ERRbadfid))
+ return(ERROR(ERRDOS,ERRbadfid)); \
+ else if((fsp)->fd == -1) \
+ return(ERROR(ERRDOS,ERRbadaccess))
+
#define CHECK_READ(fsp) if (!(fsp)->can_read) \
return(ERROR(ERRDOS,ERRbadaccess))
#define CHECK_WRITE(fsp) if (!(fsp)->can_write) \