From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from re-prd-fep-047.btinternet.com (mailomta27-re.btinternet.com [213.120.69.120]) by sourceware.org (Postfix) with ESMTPS id E3A283858C50 for ; Tue, 12 Jul 2022 12:50:28 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org E3A283858C50 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-005.btmx-prd.synchronoss.net ([10.2.54.8]) by re-prd-fep-047.btinternet.com with ESMTP id <20220712125027.WTAP3222.re-prd-fep-047.btinternet.com@re-prd-rgout-005.btmx-prd.synchronoss.net>; Tue, 12 Jul 2022 13:50:27 +0100 Authentication-Results: btinternet.com; auth=pass (PLAIN) smtp.auth=jonturney@btinternet.com; bimi=skipped X-SNCR-Rigid: 613A91242EBF2651 X-Originating-IP: [86.144.41.14] X-OWM-Source-IP: 86.144.41.14 (GB) X-OWM-Env-Sender: jonturney@btinternet.com X-VadeSecure-score: verdict=clean score=0/300, class=clean X-RazorGate-Vade: gggruggvucftvghtrhhoucdtuddrgedvfedrudejhedgheekucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuueftkffvkffujffvgffngfevqffopdfqfgfvnecuuegrihhlohhuthemuceftddunecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjughrpefkffggfgfuvfhfhfgjtgfgsehtkeertddtfeejnecuhfhrohhmpeflohhnucfvuhhrnhgvhicuoehjohhnrdhtuhhrnhgvhiesughrohhnvggtohguvgdrohhrghdruhhkqeenucggtffrrghtthgvrhhnpeekueekueeuudekhfefueeftdejjeefjefhtdfftddtvedvleehgedvffdtgeeitdenucffohhmrghinheptgihghifihhnrdgtohhmnecukfhppeekiedrudeggedrgedurddugeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhephhgvlhhopegludelvddrudeikedruddruddthegnpdhinhgvthepkeeirddugeegrdeguddrudegpdhmrghilhhfrhhomhepjhhonhdrthhurhhnvgihsegurhhonhgvtghouggvrdhorhhgrdhukhdpnhgspghrtghpthhtohepvddprhgtphhtthhopeevhhhrihhsthhirghnrdfhrhgrnhhkvgesthdqohhnlhhinhgvrdguvgdprhgtphhtthhopegthihgfihinhdqrghpphhssegthihgfihinhdrtghomh X-RazorGate-Vade-Verdict: clean 0 X-RazorGate-Vade-Classification: clean Received: from [192.168.1.105] (86.144.41.14) by re-prd-rgout-005.btmx-prd.synchronoss.net (5.8.716.04) (authenticated as jonturney@btinternet.com) id 613A91242EBF2651; Tue, 12 Jul 2022 13:50:27 +0100 Message-ID: Date: Tue, 12 Jul 2022 13:50:26 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.11.0 Subject: Re: [PATCH setup] Add new option --chown-admin Content-Language: en-GB To: Christian Franke , "cygwin-apps@cygwin.com" 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> From: Jon Turney In-Reply-To: <32655945-5075-0823-2a1d-b72caa4b7791@t-online.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-3569.0 required=5.0 tests=BAYES_00, BODY_8BITS, FORGED_SPF_HELO, KAM_DMARC_STATUS, KAM_LAZY_DOMAIN_SECURITY, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS, SPF_NONE, TXREP, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: cygwin-apps@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Cygwin package maintainer discussion list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Jul 2022 12:50:31 -0000 [Replying to the right list this time...] On 09/07/2022 13:21, Christian Franke wrote: > Jon Turney wrote: >> On 07/07/2022 15:45, Christian Franke wrote: >>> Jon Turney wrote: >>>> On 06/07/2022 17:34, Christian Franke wrote: >>>>> Jon Turney wrote: >>>>>> On 06/07/2022 08:14, Christian Franke wrote: >> [...] >>>>>>> >>>>>>> BTW: 'nt_sec.setDefaultSecurity (isAdmin)' is never called with >>>>>>> 'isAdmin==true' as 'root_scope' is always 0. >>>>>> >>>>>> root_scope is set later, by the "Install For" option on the >>>>>> "Select Root Install Directory" page. >>>>>> >>>>>> To me, this looks like a (very long standing) bug that we >>>>>> shouldn't be calling setAdminGroup() here, but after root_scope >>>>>> has been set. >>>>> >>>>> If this bug is very old, I'm not sure whether this should be fixed. >>>>> Setting admin group to files which are owned "only" by current user >>>>> is possibly not very effective. >>>> >>>> It's true that some people might be relying on that buggy behaviour. >>> >>> I have one very old Cygwin installation from Win7 times. Very old >>> installed files still have group="Administrator", newer files have >>> group="None". The timestamps suggest that the regression was >>> introduced early in 2012. The first file with group="None" is from >>> March 2 2012. >> >> Hmm... [1] seems like the obvious suspect for the change responsible >> for that, but I don't immediately see how... >> >> [1] >> https://cygwin.com/git/?p=cygwin-apps/setup.git;a=commitdiff;h=befc9dd806824f22ebb740be96ba8c0ae8f63bb4;hp=34d534a6d74e5516d6691fb1d9cb6309682afa0b >> >> > > Hmm... correct as this change moves UserSettings ctor behind > setDefaultSecurity (): > > Old version 34d534a: > ... > UserSettings Settings (local_dir); > ... > nt_sec.setDefaultSecurity (); > ... > Main.WindowCreate() > > > New version befc9dd: > ... > nt_sec.setDefaultSecurity (); > ... > UserSettings Settings (local_dir); > ... > Main.WindowCreate() > > > 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.