From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 36115 invoked by alias); 1 Apr 2015 10:16:36 -0000 Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Received: (qmail 36101 invoked by uid 89); 1 Apr 2015 10:16:36 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=1.8 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,KAM_FROM_URIBL_PCCC,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=no version=3.3.2 X-HELO: mail-wi0-f177.google.com Received: from mail-wi0-f177.google.com (HELO mail-wi0-f177.google.com) (209.85.212.177) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-GCM-SHA256 encrypted) ESMTPS; Wed, 01 Apr 2015 10:16:34 +0000 Received: by wibgn9 with SMTP id gn9so60076915wib.1 for ; Wed, 01 Apr 2015 03:16:31 -0700 (PDT) X-Received: by 10.180.9.171 with SMTP id a11mr13924352wib.24.1427883391498; Wed, 01 Apr 2015 03:16:31 -0700 (PDT) MIME-Version: 1.0 Received: by 10.28.13.135 with HTTP; Wed, 1 Apr 2015 03:15:51 -0700 (PDT) Reply-To: fracting@gmail.com From: Qian Hong Date: Wed, 01 Apr 2015 10:16:00 -0000 Message-ID: Subject: Cygwin / MSYS2 runtime fails on Wine beause of accessing to (*ReferencedDomains)->Domains[-1] To: cygwin@cygwin.com Content-Type: multipart/mixed; boundary=001a11c241e2550e260512a70258 X-IsSubscribed: yes X-SW-Source: 2015-04/txt/msg00010.txt.bz2 --001a11c241e2550e260512a70258 Content-Type: text/plain; charset=UTF-8 Content-length: 2328 Hi folks, When playing with Cygwin / MSYS2 on Wine, I found a crashing related to LsaLookupSids. In winsup/cygwin/uinfo.cc, we want to copy an Unicode string from arg.full_acc->dom to dom: 1768 *wcpncpy (dom, arg.full_acc->dom->Buffer, 1769 arg.full_acc->dom->Length / sizeof (WCHAR)) = L'\0'; where arg.full_acc->dom->Buffer came from dlst->Domains[nlst[ncnt].DomainIndex] winsup/cygwin/grp.cc: 650 fetch_acc_t full_acc = 651 { 652 .sid = sidp_buf[ncnt], 653 .name = &nlst[ncnt].Name, 654 .dom = &dlst->Domains[nlst[ncnt].DomainIndex].Name, 655 .acc_type = nlst[ncnt].Use 656 }; According to my test [1]. DomainIndex can be -1 sometimes, which seems valid according to a similar MSDN entry [2]: --- snip --- Otherwise, the corresponding TranslatedNames entry MUST be updated with: Use: SidTypeUnknown. Name: Empty, unless LookupLevel is LsapLookupWksta. In that case, Name MUST contain the textual representation of the corresponding SID, as in step 2. Flags: 0x00000000 (also see the following paragraph). DomainIndex: -1. --- snip --- On windows, I never found crashing when accessing to Domains[-1]: While it might be safe, but it might not be meaningful, here is an example output of content of Domains[-1]: lsa.c:431: haha names[8].DomainIndex -1 lsa.c:432: use 8 /* SidTypeUnknown */ lsa.c:433: name L"S-1-5-5-0-117053" lsa.c:434: domain name L"\0000\0002\08c0" /* seems like garbage */ lsa.c:436: domain sid 00000020 /* not like a valid sid */ By comparing to a normal output, I strongly doubt Domains[-1] is meaningful. lsa.c:431: names[7].DomainIndex 1 lsa.c:432: use 5 lsa.c:433: name L"This Organization" lsa.c:434: domain name L"NT AUTHORITY" lsa.c:436: domain sid 009808E8 Anyone know whether it is expected to access Domains[-1] in this case? On Wine, accessing to Domains[-1] cause a crashing, I'll proposal a patch to Wine to workaround this [as attachment], but it would be great to see this issue also fixed at the Cygwin side if it is a hidden bug. Thanks for any comments and keep the great work! [1] https://testbot.winehq.org/JobDetails.pl?Key=12577 (see attachment for test case source code) [2] https://msdn.microsoft.com/en-us/library/cc234496.aspx -- Regards, Qian Hong - http://www.winehq.org --001a11c241e2550e260512a70258 Content-Type: text/plain; charset=US-ASCII; name="0001-advapi32-prepend-a-hidden-Domain-1-to-prevent-applicat.txt" Content-Disposition: attachment; filename="0001-advapi32-prepend-a-hidden-Domain-1-to-prevent-applicat.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_i7yknz7g0 Content-length: 6971 RnJvbSA5YWRlM2NjZTU4YTI2NTYwOTIwNTM1NDk2ODMyZTc5NmYyZmMwZDkw IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBRaWFuIEhvbmcgPHFo b25nQGNvZGV3ZWF2ZXJzLmNvbT4KRGF0ZTogV2VkLCAxIEFwciAyMDE1IDE4 OjA1OjQyICswODAwClN1YmplY3Q6IFtQQVRDSF0gYWR2YXBpMzI6IHByZXBl bmQgYSBoaWRkZW4gRG9tYWluWy0xXSB0byBwcmV2ZW50IGFwcGxpY2F0aW9u CiBjcmFzaGluZyB3aGVuIGFjY2VzcyB0byBEb21haW5bLTFdIGJ5IGFjY2lk ZW50LgoKLS0tCiBkbGxzL2FkdmFwaTMyL2xzYS5jICAgICAgIHwgIDkgKysr KysrLS0tCiBkbGxzL2FkdmFwaTMyL3Rlc3RzL2xzYS5jIHwgMzcgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMiBmaWxlcyBjaGFu Z2VkLCA0MyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL2RsbHMvYWR2YXBpMzIvbHNhLmMgYi9kbGxzL2FkdmFwaTMyL2xz YS5jCmluZGV4IDJhOGI3OTEuLjgzMjBkNTggMTAwNjQ0Ci0tLSBhL2RsbHMv YWR2YXBpMzIvbHNhLmMKKysrIGIvZGxscy9hZHZhcGkzMi9sc2EuYwpAQCAt NDg4LDE0ICs0ODgsMTYgQEAgTlRTVEFUVVMgV0lOQVBJIExzYUxvb2t1cFNp ZHMoCiAgICAgaWYgKCEoKk5hbWVzID0gaGVhcF9hbGxvYyhuYW1lX2Z1bGxz aXplKSkpIHJldHVybiBTVEFUVVNfTk9fTUVNT1JZOwogICAgIC8qIG1heGlt dW0gY291bnQgb2Ygc3RvcmVkIGRvbWFpbiBpbmZvcyBpcyBDb3VudCwgYWxs b2NhdGUgaXQgbGlrZSB0aGF0IGNhdXNlIHJlYWxseSBuZWVkZWQKICAgICAg ICBjb3VudCBjb3VsZCBvbmx5IGJlIGNvbXB1dGVkIGFmdGVyIHNpZCBkYXRh IGlzIHJldHJpZXZlZCAqLwotICAgIGRvbWFpbl9mdWxsc2l6ZSA9IHNpemVv ZihMU0FfUkVGRVJFTkNFRF9ET01BSU5fTElTVCkgKyBzaXplb2YoTFNBX1RS VVNUX0lORk9STUFUSU9OKSpDb3VudDsKKyAgICBkb21haW5fZnVsbHNpemUg PSBzaXplb2YoTFNBX1JFRkVSRU5DRURfRE9NQUlOX0xJU1QpICsgc2l6ZW9m KExTQV9UUlVTVF9JTkZPUk1BVElPTikqKENvdW50KzEpOwogICAgIGlmICgh KCpSZWZlcmVuY2VkRG9tYWlucyA9IGhlYXBfYWxsb2MoZG9tYWluX2Z1bGxz aXplKSkpCiAgICAgewogICAgICAgICBoZWFwX2ZyZWUoKk5hbWVzKTsKICAg ICAgICAgcmV0dXJuIFNUQVRVU19OT19NRU1PUlk7CiAgICAgfQogICAgICgq UmVmZXJlbmNlZERvbWFpbnMpLT5FbnRyaWVzID0gMDsKLSAgICAoKlJlZmVy ZW5jZWREb21haW5zKS0+RG9tYWlucyA9IChMU0FfVFJVU1RfSU5GT1JNQVRJ T04qKSgoY2hhciopKlJlZmVyZW5jZWREb21haW5zICsgc2l6ZW9mKExTQV9S RUZFUkVOQ0VEX0RPTUFJTl9MSVNUKSk7CisgICAgKCpSZWZlcmVuY2VkRG9t YWlucyktPkRvbWFpbnMgPSAoTFNBX1RSVVNUX0lORk9STUFUSU9OKikoKGNo YXIqKSpSZWZlcmVuY2VkRG9tYWlucyArIHNpemVvZihMU0FfUkVGRVJFTkNF RF9ET01BSU5fTElTVCkgKyBzaXplb2YoTFNBX1RSVVNUX0lORk9STUFUSU9O KSk7CisgICAgKCpSZWZlcmVuY2VkRG9tYWlucyktPkRvbWFpbnNbLTFdLk5h bWUuQnVmZmVyID0gTlVMTDsKKyAgICAoKlJlZmVyZW5jZWREb21haW5zKS0+ RG9tYWluc1stMV0uTmFtZS5MZW5ndGggPSAwOwogCiAgICAgLyogR2V0IGZ1 bGwgbmFtZXMgZGF0YSBsZW5ndGggYW5kIGZ1bGwgbGVuZ3RoIG5lZWRlZCB0 byBzdG9yZSBkb21haW4gbmFtZSBhbmQgU0lEICovCiAgICAgZm9yIChpID0g MDsgaSA8IENvdW50OyBpKyspCkBAIC01MDMsNiArNTA1LDcgQEAgTlRTVEFU VVMgV0lOQVBJIExzYUxvb2t1cFNpZHMoCiAgICAgICAgICgqTmFtZXMpW2ld LlVzZSA9IFNpZFR5cGVVbmtub3duOwogICAgICAgICAoKk5hbWVzKVtpXS5E b21haW5JbmRleCA9IC0xOwogICAgICAgICAoKk5hbWVzKVtpXS5OYW1lLkJ1 ZmZlciA9IE5VTEw7CisgICAgICAgICgqTmFtZXMpW2ldLk5hbWUuTGVuZ3Ro ID0gMDsKIAogICAgICAgICBtZW1zZXQoJigqUmVmZXJlbmNlZERvbWFpbnMp LT5Eb21haW5zW2ldLCAwLCBzaXplb2YoTFNBX1RSVVNUX0lORk9STUFUSU9O KSk7CiAKQEAgLTU1NSw3ICs1NTgsNyBAQCBOVFNUQVRVUyBXSU5BUEkgTHNh TG9va3VwU2lkcygKIAogICAgICpSZWZlcmVuY2VkRG9tYWlucyA9IGhlYXBf cmVhbGxvYygqUmVmZXJlbmNlZERvbWFpbnMsIGRvbWFpbl9mdWxsc2l6ZSk7 CiAgICAgLyogZml4IHBvaW50ZXIgYWZ0ZXIgcmVhbGxvY2F0aW9uICovCi0g ICAgKCpSZWZlcmVuY2VkRG9tYWlucyktPkRvbWFpbnMgPSAoTFNBX1RSVVNU X0lORk9STUFUSU9OKikoKGNoYXIqKSpSZWZlcmVuY2VkRG9tYWlucyArIHNp emVvZihMU0FfUkVGRVJFTkNFRF9ET01BSU5fTElTVCkpOworICAgICgqUmVm ZXJlbmNlZERvbWFpbnMpLT5Eb21haW5zID0gKExTQV9UUlVTVF9JTkZPUk1B VElPTiopKChjaGFyKikqUmVmZXJlbmNlZERvbWFpbnMgKyBzaXplb2YoTFNB X1JFRkVSRU5DRURfRE9NQUlOX0xJU1QpICsgc2l6ZW9mKExTQV9UUlVTVF9J TkZPUk1BVElPTikpOwogICAgIGRvbWFpbl9kYXRhID0gKGNoYXIqKSgqUmVm ZXJlbmNlZERvbWFpbnMpLT5Eb21haW5zICsgc2l6ZW9mKExTQV9UUlVTVF9J TkZPUk1BVElPTikqQ291bnQ7CiAKICAgICBtYXBwZWQgPSAwOwpkaWZmIC0t Z2l0IGEvZGxscy9hZHZhcGkzMi90ZXN0cy9sc2EuYyBiL2RsbHMvYWR2YXBp MzIvdGVzdHMvbHNhLmMKaW5kZXggMWEwZDIxMS4uMzhmZWU0NSAxMDA2NDQK LS0tIGEvZGxscy9hZHZhcGkzMi90ZXN0cy9sc2EuYworKysgYi9kbGxzL2Fk dmFwaTMyL3Rlc3RzL2xzYS5jCkBAIC0zNjEsNyArMzYxLDEwIEBAIHN0YXRp YyB2b2lkIHRlc3RfTHNhTG9va3VwU2lkcyh2b2lkKQogICAgIExTQV9UUkFO U0xBVEVEX05BTUUgKm5hbWVzOwogICAgIExTQV9IQU5ETEUgcG9saWN5Owog ICAgIFRPS0VOX1VTRVIgKnVzZXI7CisgICAgVE9LRU5fR1JPVVBTICpncm91 cHM7CisgICAgaW50IGdyb3VwX2lkOwogICAgIE5UU1RBVFVTIHN0YXR1czsK KyAgICBQU0lEIHNpZHNbMjU3XTsKICAgICBIQU5ETEUgdG9rZW47CiAgICAg RFdPUkQgc2l6ZTsKICAgICBCT09MIHJldDsKQEAgLTM5Miw2ICszOTUsNyBA QCBzdGF0aWMgdm9pZCB0ZXN0X0xzYUxvb2t1cFNpZHModm9pZCkKICAgICAg ICBvaygoY2hhciopbGlzdC0+RG9tYWluc1swXS5TaWQgLSAoY2hhciopbGlz dC0+RG9tYWlucyA+IDAsICIlcCwgJXBcbiIsIGxpc3QtPkRvbWFpbnMsIGxp c3QtPkRvbWFpbnNbMF0uU2lkKTsKICAgICAgICBvayhsaXN0LT5Eb21haW5z WzBdLk5hbWUuTWF4aW11bUxlbmd0aCA+IGxpc3QtPkRvbWFpbnNbMF0uTmFt ZS5MZW5ndGgsICJnb3QgJWQsICVkXG4iLCBsaXN0LT5Eb21haW5zWzBdLk5h bWUuTWF4aW11bUxlbmd0aCwKICAgICAgICAgICAgbGlzdC0+RG9tYWluc1sw XS5OYW1lLkxlbmd0aCk7CisgICAgICAgdHJhY2UoImhhaGEgbmFtZXNbMF0u RG9tYWluSW5kZXggJWRcbiIsIG5hbWVzWzBdLkRvbWFpbkluZGV4KTsKICAg ICB9CiAKICAgICBwTHNhRnJlZU1lbW9yeShuYW1lcyk7CkBAIC0zOTksNiAr NDAzLDM5IEBAIHN0YXRpYyB2b2lkIHRlc3RfTHNhTG9va3VwU2lkcyh2b2lk KQogCiAgICAgSGVhcEZyZWUoR2V0UHJvY2Vzc0hlYXAoKSwgMCwgdXNlcik7 CiAKKyAgICAvKiBUZXN0IEVudW0gVG9rZW5Hcm91cHMgKi8KKyAgICByZXQg PSBHZXRUb2tlbkluZm9ybWF0aW9uKHRva2VuLCBUb2tlbkdyb3VwcywgTlVM TCwgMCwgJnNpemUpOworICAgIG9rKCFyZXQsICJnb3QgJWRcbiIsIHJldCk7 CisKKyAgICBncm91cHMgPSBIZWFwQWxsb2MoR2V0UHJvY2Vzc0hlYXAoKSwg MCwgc2l6ZSk7CisgICAgcmV0ID0gR2V0VG9rZW5JbmZvcm1hdGlvbih0b2tl biwgVG9rZW5Hcm91cHMsIGdyb3Vwcywgc2l6ZSwgJnNpemUpOworICAgIG9r KHJldCwgImdvdCAlZFxuIiwgcmV0KTsKKworICAgIGZvciAoZ3JvdXBfaWQg PSAwOyBncm91cF9pZCA8IGdyb3Vwcy0+R3JvdXBDb3VudDsgZ3JvdXBfaWQr KykKKyAgICAgICAgc2lkc1tncm91cF9pZF0gPSBncm91cHMtPkdyb3Vwc1tn cm91cF9pZF0uU2lkOworCisgICAgc3RhdHVzID0gcExzYUxvb2t1cFNpZHMo cG9saWN5LCBncm91cHMtPkdyb3VwQ291bnQsIHNpZHMsICZsaXN0LCAmbmFt ZXMpOworICAgIG9rKHN0YXR1cyA9PSBTVEFUVVNfU1VDQ0VTUywgImdvdCAw eCUwOHhcbiIsIHN0YXR1cyk7CisKKyAgICBvayhsaXN0LT5FbnRyaWVzID4g MCwgImdvdCAlZFxuIiwgbGlzdC0+RW50cmllcyk7CisgICAgZm9yIChncm91 cF9pZCA9IDA7IGdyb3VwX2lkIDwgZ3JvdXBzLT5Hcm91cENvdW50OyBncm91 cF9pZCsrKQorICAgIHsKKyAgICAgICAgdHJhY2UoImVudHJpZXMgJWRcbiIs IGxpc3QtPkVudHJpZXMpOworICAgICAgICBpZiAobGlzdC0+RW50cmllcykK KyAgICAgICAgeworICAgICAgICAgICB0cmFjZSgibmFtZXNbJWRdLkRvbWFp bkluZGV4ICVkXG4iLCBncm91cF9pZCwgbmFtZXNbZ3JvdXBfaWRdLkRvbWFp bkluZGV4KTsKKyAgICAgICAgICAgdHJhY2UoInVzZSAlZFxuIiwgbmFtZXNb Z3JvdXBfaWRdLlVzZSk7CisgICAgICAgICAgIHRyYWNlKCJuYW1lICVzXG4i LCB3aW5lX2RiZ3N0cl93bihuYW1lc1tncm91cF9pZF0uTmFtZS5CdWZmZXIs IG5hbWVzW2dyb3VwX2lkXS5OYW1lLkxlbmd0aC9zaXplb2YoV0NIQVIpKSk7 CisgICAgICAgICAgIHRyYWNlKCJkb21haW4gbmFtZSAlc1xuIiwgd2luZV9k YmdzdHJfd24obGlzdC0+RG9tYWluc1tuYW1lc1tncm91cF9pZF0uRG9tYWlu SW5kZXhdLk5hbWUuQnVmZmVyLCBsaXN0LT5Eb21haW5zW25hbWVzW2dyb3Vw X2lkXS5Eb21haW5JbmRleF0uTmFtZS5MZW5ndGgvc2l6ZW9mKFdDSEFSKSkp OworICAgICAgICB9CisgICAgICAgICAgIHRyYWNlKCJkb21haW4gc2lkICVw XG4iLCBsaXN0LT5Eb21haW5zW25hbWVzW2dyb3VwX2lkXS5Eb21haW5JbmRl eF0uU2lkKTsKKyAgICB9CisKKyAgICBwTHNhRnJlZU1lbW9yeShuYW1lcyk7 CisgICAgcExzYUZyZWVNZW1vcnkobGlzdCk7CisKKyAgICBIZWFwRnJlZShH ZXRQcm9jZXNzSGVhcCgpLCAwLCBncm91cHMpOworCiAgICAgQ2xvc2VIYW5k bGUodG9rZW4pOwogCiAgICAgc3RhdHVzID0gcExzYUNsb3NlKHBvbGljeSk7 Ci0tIAoyLjEuMAoK --001a11c241e2550e260512a70258 Content-Type: text/plain; charset=us-ascii Content-length: 218 -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple --001a11c241e2550e260512a70258--