summaryrefslogtreecommitdiffstats
path: root/source/lib/util.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/lib/util.c')
-rw-r--r--source/lib/util.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/source/lib/util.c b/source/lib/util.c
index de366c604ff..f66397104d6 100644
--- a/source/lib/util.c
+++ b/source/lib/util.c
@@ -2738,7 +2738,7 @@ int _Insure_trap_error(int a1, int a2, int a3, int a4, int a5, int a6)
uint32 map_share_mode_to_deny_mode(uint32 share_access, uint32 private_options)
{
- switch (share_access) {
+ switch (share_access & ~FILE_SHARE_DELETE) {
case FILE_SHARE_NONE:
return DENY_ALL;
case FILE_SHARE_READ:
@@ -2746,7 +2746,6 @@ uint32 map_share_mode_to_deny_mode(uint32 share_access, uint32 private_options)
case FILE_SHARE_WRITE:
return DENY_READ;
case FILE_SHARE_READ|FILE_SHARE_WRITE:
- case FILE_SHARE_READ|FILE_SHARE_WRITE|FILE_SHARE_DELETE:
return DENY_NONE;
}
if (private_options & NTCREATEX_OPTIONS_PRIVATE_DENY_DOS) {