From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from re-prd-fep-048.btinternet.com (mailomta28-re.btinternet.com [213.120.69.121]) by sourceware.org (Postfix) with ESMTPS id 64C3D3858C74 for ; Fri, 26 Aug 2022 13:27:37 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 64C3D3858C74 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=dronecode.org.uk Authentication-Results: sourceware.org; spf=none smtp.mailfrom=dronecode.org.uk Received: from re-prd-rgout-001.btmx-prd.synchronoss.net ([10.2.54.4]) by re-prd-fep-048.btinternet.com with ESMTP id <20220826132735.BUUV3057.re-prd-fep-048.btinternet.com@re-prd-rgout-001.btmx-prd.synchronoss.net>; Fri, 26 Aug 2022 14:27:35 +0100 Authentication-Results: btinternet.com; auth=pass (PLAIN) smtp.auth=jonturney@btinternet.com; bimi=skipped X-SNCR-Rigid: 613A8CC3367DD60C X-Originating-IP: [86.139.158.127] X-OWM-Source-IP: 86.139.158.127 (GB) X-OWM-Env-Sender: jonturney@btinternet.com X-VadeSecure-score: verdict=clean score=0/300, class=clean X-RazorGate-Vade: gggruggvucftvghtrhhoucdtuddrgedvfedrvdejhedgieegucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuueftkffvkffujffvgffngfevqffopdfqfgfvnecuuegrihhlohhuthemuceftddunecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjughrpegtkfffgggfufhfhffvjgesmhdtreertdefjeenucfhrhhomheplfhonhcuvfhurhhnvgihuceojhhonhdrthhurhhnvgihsegurhhonhgvtghouggvrdhorhhgrdhukheqnecuggftrfgrthhtvghrnhepffetvdfffeeiveefkeejfeehvdduheeitedthedviedvhfevvdeuheegleefkeffnecuffhomhgrihhnpehsohhurhgtvgifrghrvgdrohhrghenucfkphepkeeirddufeelrdduheekrdduvdejnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehhvghloheplgduledvrdduieekrddurddutdehngdpihhnvghtpeekiedrudefledrudehkedruddvjedpmhgrihhlfhhrohhmpehjohhnrdhtuhhrnhgvhiesughrohhnvggtohguvgdrohhrghdruhhkpdhnsggprhgtphhtthhopedvpdhrtghpthhtohepvehhrhhishhtihgrnhdrhfhrrghnkhgvsehtqdhonhhlihhnvgdruggvpdhrtghpthhtoheptgihghifihhnqdgrphhpshestgihghifihhnrdgtohhm X-RazorGate-Vade-Verdict: clean 0 X-RazorGate-Vade-Classification: clean Received: from [192.168.1.105] (86.139.158.127) by re-prd-rgout-001.btmx-prd.synchronoss.net (5.8.716.04) (authenticated as jonturney@btinternet.com) id 613A8CC3367DD60C; Fri, 26 Aug 2022 14:27:35 +0100 Content-Type: multipart/mixed; boundary="------------FSIy7KhVszdeC07LyAVBZN1g" Message-ID: <80661301-d584-3af0-e588-1ec10f3b4108@dronecode.org.uk> Date: Fri, 26 Aug 2022 14:27:33 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.13.0 Subject: Re: [PATCH setup] Add new option --chown-admin Content-Language: en-GB References: <3096f251-d7ca-073b-d7d7-751b7fe3e8c1@t-online.de> <405df5c6-ce47-0254-ae4d-4a23ff3533d5@dronecode.org.uk> <5b45ccdc-da32-ff11-037f-c00828f397c5@dronecode.org.uk> <32655945-5075-0823-2a1d-b72caa4b7791@t-online.de> <038c3558-b424-3e4b-9de6-bd3eb6147406@t-online.de> From: Jon Turney To: "cygwin-apps@cygwin.com" , Christian Franke In-Reply-To: <038c3558-b424-3e4b-9de6-bd3eb6147406@t-online.de> X-Spam-Status: No, score=-1195.8 required=5.0 tests=BAYES_00,BODY_8BITS,FORGED_SPF_HELO,GIT_PATCH_0,KAM_DMARC_STATUS,KAM_LAZY_DOMAIN_SECURITY,NICE_REPLY_A,RCVD_IN_BARRACUDACENTRAL,RCVD_IN_DNSWL_NONE,SPF_HELO_PASS,SPF_NONE,TXREP,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This is a multi-part message in MIME format. --------------FSIy7KhVszdeC07LyAVBZN1g Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 23/08/2022 18:27, Christian Franke wrote: > Jon Turney wrote: >> On 12/07/2022 13:50, Jon Turney wrote: >>> [Replying to the right list this time...] >>> On 09/07/2022 13:21, Christian Franke wrote: >> [...] >>>> >>>> The UserSettings ctor has a somewhat hidden side effect which sets >>>> root_scope correctly: >>>> >>>>   UserSettings::UserSettings(...); >>>>    open_settings("setup.rc", ...); >>>>     io_stream::open("cygfile:///etc/setup/setup.rc", ...); >>>> io_stream_cygfile::io_stream_cygfile("/etc/setup/setup.rc", ...); >>>>       get_root_dir_now(); >>>>        read_mounts(""); >>>>         read_mounts_nt(""); >>>>          root_scope = isuser ? IDC_ROOT_USER : IDC_ROOT_SYSTEM; >>>> >>>> Conclusion: Regression introduced Feb 24, 2012 (befc9dd). >>>> >>> >>> Thanks for tracking this down. >>> >>> That just seems... fractally wrong. >> >> I kind of lost track of this.  Is there anything else needed to fix >> the original problem here?  Or is it solved by the change to defer >> setting the group until after root_scope is known? > > The group seems to be correctly set now. > > An old problem still remains: root_scope always ends up as > IDC_ROOT_SYSTEM if setup is run elevated, regardless off GUI setting. > Apply the temporary patch from here to see what happens: > https://sourceware.org/pipermail/cygwin-apps/2022-July/042151.html Ah, right, I remember now. I think having read_mounts() have a side effect of setting root_scope is just nonsense now (it might have made some sense back in the day when the mount table was also stored in the registry). So, how about the attached? (We should perhaps also set the installation root directory to something other than C:\cygwin64 if a non-admin user, since they are unlikely to be able to write there in current windows versions, but that's difficult from a sequencing point of view in that dialog, and for backwards compatibility) > Possibly difficult to fix, in particular in conjunction with later > changes via [< Back] button. An easier approach: Remove the GUI setting > and connect root_scope to -B option. Looking for that option is not correct, because we might be running without -B, but from an already elevated shell. I think checking nt_sec.isRunAsAdmin() would be the correct test. --------------FSIy7KhVszdeC07LyAVBZN1g Content-Type: text/plain; charset=UTF-8; name="0001-Drop-setting-root_scope-as-a-side-effect-of-read_mou.patch" Content-Disposition: attachment; filename*0="0001-Drop-setting-root_scope-as-a-side-effect-of-read_mou.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA4YmI5ZDJkNjQ3YzRhOWM0OWU2OTZlZmIxNGQ5NzY2ODJhZDI4NjQ3IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb24gVHVybmV5IDxqb24udHVybmV5QGRyb25lY29k ZS5vcmcudWs+CkRhdGU6IFdlZCwgMjQgQXVnIDIwMjIgMTM6MzE6NDkgKzAxMDAKU3ViamVj dDogW1BBVENIIHNldHVwXSBEcm9wIHNldHRpbmcgcm9vdF9zY29wZSBhcyBhIHNpZGUtZWZm ZWN0IG9mCiByZWFkX21vdW50cygpCgpEZWZhdWx0IHJvb3Rfc2NvcGUgYXMgYXBwcm9wcmlh dGUsIGFsbG93aW5nIEdVSSB0byBvdmVycmlkZSBpdApPbmx5IGVuYWJsZSAnSW5zdGFsbCBG b3IgQWxsIFVzZXJzJyBpZiB3ZSBoYXZlIEFkbWluIHByaXZzCkRyb3Agc29tZSBjb21tZW50 IGNydWZ0Ci0tLQogbW91bnQuY2MgfCAzMCArKysrKysrKysrKysrKysrKysrKysrKy0tLS0t LS0KIG1vdW50LmggIHwgIDkgKy0tLS0tLS0tCiByb290LmNjICB8IDEyICsrKysrKysrKysr KwogMyBmaWxlcyBjaGFuZ2VkLCAzNiBpbnNlcnRpb25zKCspLCAxNSBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9tb3VudC5jYyBiL21vdW50LmNjCmluZGV4IDAxMzYzOTYuLmEzOGY1 MmMgMTAwNjQ0Ci0tLSBhL21vdW50LmNjCisrKyBiL21vdW50LmNjCkBAIC0xNDAsMTAgKzE0 MCw2IEBAIGNyZWF0ZV9pbnN0YWxsX3Jvb3QgKCkKIAkJCQkJCSAgICAgIDogIkxPQ0FMX01B Q0hJTkVcXCIpCiAJCSAgICAgIDw8IGJ1ZiA8PCAiXFxyb290ZGlyID0gXCIiIDw8IGdldF9y b290X2RpciAoKSA8PCAiXCIiCiAJCSAgICAgIDw8IGVuZExvZzsKLQotICAvLyBUaGUgbW91 bnQgdGFibGUgaXMgYWxyZWFkeSBpbiB0aGUgcmlnaHQgc2hhcGUgYXQgdGhpcyBwb2ludC4K LSAgLy8gUmVhZGluZyBpdCBhZ2FpbiBpcyBub3QgbmVjZXNzYXJ5LgotICAvL3JlYWRfbW91 bnRzIChzdGQ6OnN0cmluZyAoKSk7CiB9CiAKIGlubGluZSBjaGFyICoKQEAgLTMxNiw4ICsz MTIsNiBAQCByZWFkX21vdW50cyAoY29uc3Qgc3RkOjpzdHJpbmcgdmFsKQogICAgIH0KICAg Z290X3Vzcl9iaW4gPSBnb3RfdXNyX2xpYiA9IGZhbHNlOwogCi0gIHJvb3Rfc2NvcGUgPSAo bnRfc2VjLmlzUnVuQXNBZG1pbiAoKSk/IElEQ19ST09UX1NZU1RFTSA6IElEQ19ST09UX1VT RVI7Ci0KICAgaWYgKHZhbC5zaXplICgpKQogICAgIHsKICAgICAgIC8qIEN5Z3dpbiByb290 ZGlyIGFsd2F5cyA8IE1BWF9QQVRILiAqLwpAQCAtMzUzLDcgKzM0Nyw2IEBAIHJlYWRfbW91 bnRzIChjb25zdCBzdGQ6OnN0cmluZyB2YWwpCiAJICAgIHsKIAkgICAgICBtLT5uYXRpdmUg PSBzdGQ6OnN0cmluZyAoYUJ1ZmZlcik7CiAJICAgICAgbS0+cG9zaXggPSAiLyI7Ci0JICAg ICAgcm9vdF9zY29wZSA9IGlzdXNlciA/IElEQ19ST09UX1VTRVIgOiBJRENfUk9PVF9TWVNU RU07CiAJICAgICAgcm9vdF9oZXJlID0gbSsrOwogCSAgICAgIGZyb21fZnN0YWIgKG0sIHJv b3RfaGVyZS0+bmF0aXZlKTsKIAkgICAgICBhZGRfdXNyX21udHMgKG0pOwpAQCAtMzc2LDYg KzM2OSwyOSBAQCByZWFkX21vdW50cyAoY29uc3Qgc3RkOjpzdHJpbmcgdmFsKQogICAgIH0K IH0KIAorLy8gc2V0IGRlZmF1bHQgcm9vdF9zY29wZTogVVNFUiBpZiBvbmx5IEhLRVlfQ1VS UkVOVF9VU0VSIHJlZ2lzdHJ5IGtleSBleGlzdHMsCisvLyBvdGhlcndpc2UgU1lTVEVNLgor dm9pZCBzZXRfZGVmYXVsdF9yb290X3Njb3BlKCkKK3sKKyAgcm9vdF9zY29wZSA9IElEQ19S T09UX1NZU1RFTTsKKworICBjaGFyIGJ1ZlsxMDAwMF07CisgIGZvciAoaW50IGlzdXNlciA9 IDA7IGlzdXNlciA8PSAxOyBpc3VzZXIrKykKKyAgICB7CisgICAgICBzbnByaW50ZiAoYnVm LCBzaXplb2YoYnVmKSwgIlNvZnR3YXJlXFwlc1xcJXMiLAorICAgICAgICAgICAgICAgIENZ R1dJTl9JTkZPX0NZR1dJTl9SRUdJU1RSWV9OQU1FLAorICAgICAgICAgICAgICAgIENZR1dJ Tl9JTkZPX0NZR1dJTl9TRVRVUF9SRUdJU1RSWV9OQU1FKTsKKyAgICAgIEhLRVkga2V5ID0g aXN1c2VyID8gSEtFWV9DVVJSRU5UX1VTRVIgOiBIS0VZX0xPQ0FMX01BQ0hJTkU7CisgICAg ICBpZiAoUmVnT3BlbktleUV4IChrZXksIGJ1ZiwgMCwgS0VZX0FMTF9BQ0NFU1MgfCBTRVRV UF9LRVlfV09XNjQsCisgICAgICAgICAgICAgICAgICAgICAgICAma2V5KSA9PSBFUlJPUl9T VUNDRVNTKQorICAgICAgICB7CisgICAgICAgICAgUmVnQ2xvc2VLZXkgKGtleSk7CisgICAg ICAgICAgcm9vdF9zY29wZSA9IGlzdXNlciA/IElEQ19ST09UX1VTRVIgOiBJRENfUk9PVF9T WVNURU07CisgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICB9Cit9CisKIHZvaWQK IHNldF9yb290X2RpciAoY29uc3Qgc3RkOjpzdHJpbmcgdmFsKQogewpkaWZmIC0tZ2l0IGEv bW91bnQuaCBiL21vdW50LmgKaW5kZXggYTdkN2UzOS4uYzQ1MWEwMiAxMDA2NDQKLS0tIGEv bW91bnQuaAorKysgYi9tb3VudC5oCkBAIC0xNSwxMSArMTUsNiBAQAogCiAjaWZuZGVmIFNF VFVQX01PVU5UX0gKICNkZWZpbmUgU0VUVVBfTU9VTlRfSAotCi0vKiBGaW5kcyB0aGUgZXhp c3Rpbmcgcm9vdCBtb3VudCwgb3IgcmV0dXJucyBOVUxMLiAgaXN0ZXh0IGlzIHNldCB0bwot ICAgbm9uemVybyBpZiB0aGUgZXhpc3RpbmcgbW91bnQgaXMgYSB0ZXh0IG1vdW50LCBlbHNl IHplcm8gZm9yCi0gICBiaW5hcnkuICovCi0KICNpbmNsdWRlIDxzdHJpbmc+CiAjaW5jbHVk ZSAiU3RyaW5nKysuaCIKIApAQCAtMjcsOSArMjIsNyBAQAogCiB2b2lkIGNyZWF0ZV9pbnN0 YWxsX3Jvb3QgKCk7CiB2b2lkIHJlYWRfbW91bnRzIChjb25zdCBzdGQ6OnN0cmluZyk7Ci0K LS8qIFNldHMgdGhlIGN5Z2RyaXZlIGZsYWdzLiAgVXNlZCB0byBtYWtlIHRoZSBhdXRvbW91 bnRlZCBkcml2ZXMnIGJpbmFyeS90ZXh0Ci1tb2RlIGNvbnNpc3RlbnQgd2l0aCB0aGUgc3Rh bmRhcmQgQ3lnd2luIG1vdW50cy4gKi8KK3ZvaWQgc2V0X2RlZmF1bHRfcm9vdF9zY29wZSgp OwogCiBzdGQ6OnN0cmluZyBjeWdwYXRoIChjb25zdCBzdGQ6OnN0cmluZyYpOwogdm9pZCBz ZXRfcm9vdF9kaXIgKGNvbnN0IHN0ZDo6c3RyaW5nKTsKZGlmZiAtLWdpdCBhL3Jvb3QuY2Mg Yi9yb290LmNjCmluZGV4IDlmMDcyZDcuLmNjYmQ2YWUgMTAwNjQ0Ci0tLSBhL3Jvb3QuY2MK KysrIGIvcm9vdC5jYwpAQCAtMjU5LDYgKzI1OSwxOCBAQCBSb290UGFnZTo6T25Jbml0ICgp CiAgIGlmICghZ2V0X3Jvb3RfZGlyICgpLnNpemUoKSkKICAgICByZWFkX21vdW50cyAoc3Rk OjpzdHJpbmcgKCkpOwogICBvcmlnX3Jvb3RfZGlyID0gZ2V0X3Jvb3RfZGlyKCk7CisKKyAg aWYgKCFudF9zZWMuaXNSdW5Bc0FkbWluKCkpCisgICAgeworICAgICAgLy8gZGlzYWJsZSBJ RENfUk9PVF9TWVNURU0gaWYgbm90IHJ1bm5pbmcgYXMgYWRtaW4KKyAgICAgIEVuYWJsZVdp bmRvdyhHZXREbGdJdGVtKElEQ19ST09UX1NZU1RFTSksIEZBTFNFKTsKKyAgICAgIHJvb3Rf c2NvcGUgPSBJRENfUk9PVF9VU0VSOworICAgIH0KKyAgZWxzZQorICAgIHsKKyAgICAgIHNl dF9kZWZhdWx0X3Jvb3Rfc2NvcGUoKTsKKyAgICB9CisKICAgbG9hZF9kaWFsb2cgKEdldEhX TkQgKCkpOwogfQogCi0tIAoyLjM3LjIKCg== --------------FSIy7KhVszdeC07LyAVBZN1g--