Avoid potential crash at startup or in getgroups(2).
* grp.cc (internal_getgroups): Handle negative domain index to avoid crashes. Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
This commit is contained in:
parent
69d477a25c
commit
849044a1e9
|
@ -1,3 +1,8 @@
|
|||
2015-04-01 Corinna Vinschen <corinna@vinschen.de>
|
||||
|
||||
* grp.cc (internal_getgroups): Handle negative domain index to avoid
|
||||
crashes.
|
||||
|
||||
2015-03-31 Renato Silva <br.renatosilva@gmail.com>
|
||||
|
||||
* net.cc (cygwin_gethostname): Fix buffer size error handling.
|
||||
|
|
|
@ -643,13 +643,17 @@ internal_getgroups (int gidsetsize, gid_t *grouplist, cyg_ldap *pldap)
|
|||
{
|
||||
for (ULONG ncnt = 0; ncnt < scnt; ++ncnt)
|
||||
{
|
||||
static UNICODE_STRING empty = { 0, 0, (PWSTR) L"" };
|
||||
fetch_acc_t full_acc =
|
||||
{
|
||||
.sid = sidp_buf[ncnt],
|
||||
.name = &nlst[ncnt].Name,
|
||||
.dom = &dlst->Domains[nlst[ncnt].DomainIndex].Name,
|
||||
.dom = &empty,
|
||||
.acc_type = nlst[ncnt].Use
|
||||
};
|
||||
|
||||
if (nlst[ncnt].DomainIndex >= 0)
|
||||
full_acc.dom = &dlst->Domains[nlst[ncnt].DomainIndex].Name;
|
||||
if ((grp = internal_getgrfull (full_acc, pldap)))
|
||||
{
|
||||
if (cnt < gidsetsize)
|
||||
|
|
|
@ -32,3 +32,6 @@ Bug Fixes
|
|||
- Avoid creating passwd and group records from fully qualified Windows
|
||||
account names (domain\name, name@domain).
|
||||
Addresses: https://cygwin.com/ml/cygwin/2015-03/msg00528.html
|
||||
|
||||
- Avoid potential crash at startup or in getgroups(2).
|
||||
Addresses: https://cygwin.com/ml/cygwin/2015-04/msg00010.html
|
||||
|
|
Loading…
Reference in New Issue