[PATCH] Cygwin: get_posix_access: avoid negative subscript
Ken Brown
kbrown@cornell.edu
Mon Aug 26 17:43:00 GMT 2019
Don't refer to lacl[pos] unless we know that pos >= 0.
---
winsup/cygwin/sec_acl.cc | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/winsup/cygwin/sec_acl.cc b/winsup/cygwin/sec_acl.cc
index 933bfa69d..67749d7b1 100644
--- a/winsup/cygwin/sec_acl.cc
+++ b/winsup/cygwin/sec_acl.cc
@@ -807,9 +807,9 @@ get_posix_access (PSECURITY_DESCRIPTOR psd,
lacl[pos].a_id = ACL_UNDEFINED_ID;
lacl[pos].a_perm = CYG_ACE_MASK_TO_POSIX (ace->Mask);
aclsid[pos] = well_known_null_sid;
+ has_class_perm = true;
+ class_perm = lacl[pos].a_perm;
}
- has_class_perm = true;
- class_perm = lacl[pos].a_perm;
}
if (ace->Header.AceFlags & SUB_CONTAINERS_AND_OBJECTS_INHERIT)
{
@@ -820,9 +820,9 @@ get_posix_access (PSECURITY_DESCRIPTOR psd,
lacl[pos].a_id = ACL_UNDEFINED_ID;
lacl[pos].a_perm = CYG_ACE_MASK_TO_POSIX (ace->Mask);
aclsid[pos] = well_known_null_sid;
+ has_def_class_perm = true;
+ def_class_perm = lacl[pos].a_perm;
}
- has_def_class_perm = true;
- def_class_perm = lacl[pos].a_perm;
}
}
}
--
2.21.0
More information about the Cygwin-patches
mailing list