* uinfo.cc (pwdgrp::fetch_account_from_windows): Handle APPLICATION

PACKAGE AUTHORITY SIDs.
	* winlean.h (DNLEN): Raise to 31.  Explain why.
This commit is contained in:
Corinna Vinschen
2014-09-05 09:46:26 +00:00
parent e7565f1088
commit acc511d184
3 changed files with 26 additions and 7 deletions

View File

@@ -74,12 +74,16 @@ details. */
#undef CRITICAL
#endif
/* So-called "Microsoft Account" SIDs have a netbios domain name
"MicrosoftAccounts". The problem is, while DNLEN is 15, that domain
name is 16 chars :-P So we override DNLEN here to be 16, so that calls
to LookupAccountSid/Name don't fail if the buffer is based on DNLEN. */
/* So-called "Microsoft Account" SIDs (S-1-11-...) have a netbios domain name
"MicrosoftAccounts". The new "Application Container SIDs" (S-1-15-...)
have a netbios domain name "APPLICATION PACKAGE AUTHORITY"
The problem is, DNLEN is 15, but these domain names have a length of 16
resp. 29 chars :-P So we override DNLEN here to be 31, so that calls
to LookupAccountSid/Name don't fail if the buffer is based on DNLEN.
Hope that's enough for a while... */
#undef DNLEN
#define DNLEN 16
#define DNLEN 31
/* When Terminal Services are installed, the GetWindowsDirectory function
does not return the system installation dir, but a user specific directory