diff options
-rw-r--r-- | source3/smbd/reply.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c index da7fadae3b..b3df8acf11 100644 --- a/source3/smbd/reply.c +++ b/source3/smbd/reply.c @@ -2038,6 +2038,17 @@ NTSTATUS unlink_internals(connection_struct *conn, uint32 dirtype, struct smb_Dir *dir_hnd = NULL; const char *dname; + /* Ensure we check bad_path in the wcard case. + * This may not be correct w.r.t. Windows (needs + * smbtorture test cases which will be forthcoming) + * but prevents us from continuing in the obvious + * bad path case. This is merely a placeholder. JRA. + */ + + if (!rc && bad_path) { + return NT_STATUS_OBJECT_PATH_NOT_FOUND; + } + if (strequal(mask,"????????.???")) pstrcpy(mask,"*"); |