aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2014-03-12 15:46:07 +0000
committerCorinna Vinschen <corinna@vinschen.de>2014-03-12 15:46:07 +0000
commite4f48af0fd02a9e87f6ebcff10ab9d5f1d3556dc (patch)
tree077ac1ac6827c497dc3983007ad3e2fa6e166003
parent8861a80ee8b07515478e81a398c74db7ad7e3af4 (diff)
downloadnewlib-e4f48af0fd02a9e87f6ebcff10ab9d5f1d3556dc.zip
newlib-e4f48af0fd02a9e87f6ebcff10ab9d5f1d3556dc.tar.gz
newlib-e4f48af0fd02a9e87f6ebcff10ab9d5f1d3556dc.tar.bz2
* uinfo.cc (pwdgrp::fetch_account_from_windows): Avoid crash on
non-domain member machines if an unknown SID comes in.
-rw-r--r--winsup/cygwin/ChangeLog5
-rw-r--r--winsup/cygwin/uinfo.cc3
2 files changed, 7 insertions, 1 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 1369977..65c7328 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,5 +1,10 @@
2014-03-12 Corinna Vinschen <corinna@vinschen.de>
+ * uinfo.cc (pwdgrp::fetch_account_from_windows): Avoid crash on
+ non-domain member machines if an unknown SID comes in.
+
+2014-03-12 Corinna Vinschen <corinna@vinschen.de>
+
* include/cygwin/socket.h (IPV6_JOIN_GROUP): Revert.
(IPV6_LEAVE_GROUP): Ditto.
diff --git a/winsup/cygwin/uinfo.cc b/winsup/cygwin/uinfo.cc
index d1304eb..10d3356 100644
--- a/winsup/cygwin/uinfo.cc
+++ b/winsup/cygwin/uinfo.cc
@@ -1752,7 +1752,8 @@ pwdgrp::fetch_account_from_windows (fetch_user_arg_t &arg, cyg_ldap *pldap)
}
else
{
- if (sid_id_auth (sid) == 5 /* SECURITY_NT_AUTHORITY */
+ if (cygheap->dom.member_machine ()
+ && sid_id_auth (sid) == 5 /* SECURITY_NT_AUTHORITY */
&& sid_sub_auth (sid, 0) == SECURITY_NT_NON_UNIQUE)
{
/* Check if we know the domain. If so, create a passwd/group