public inbox for cygwin-apps@cygwin.com
 help / color / mirror / Atom feed
From: Jon Turney <jon.turney@dronecode.org.uk>
To: Christian Franke <Christian.Franke@t-online.de>,
	"cygwin-apps@cygwin.com" <cygwin-apps@cygwin.com>
Subject: Re: [PATCH setup] Add new option --chown-admin
Date: Tue, 12 Jul 2022 13:50:26 +0100	[thread overview]
Message-ID: <e69c5ac7-e68e-5df2-41d8-713effd59fdc@dronecode.org.uk> (raw)
In-Reply-To: <32655945-5075-0823-2a1d-b72caa4b7791@t-online.de>

[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.


  parent reply	other threads:[~2022-07-12 12:50 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-07-06  7:14 Christian Franke
2022-07-06 13:53 ` Jon Turney
2022-07-06 16:34   ` Christian Franke
2022-07-07 11:38     ` Jon Turney
2022-07-07 14:45       ` Christian Franke
2022-07-07 14:59         ` Christian Franke
     [not found]         ` <d7d51d1c-f6d5-2fac-3e6d-86714efd0734@dronecode.org.uk>
     [not found]           ` <32655945-5075-0823-2a1d-b72caa4b7791@t-online.de>
2022-07-12 12:50             ` Jon Turney [this message]
2022-08-23 15:20               ` Jon Turney
2022-08-23 17:27                 ` Christian Franke
2022-08-26 13:27                   ` Jon Turney
2022-08-26 15:02                     ` Christian Franke
2022-08-28 17:33                       ` Christian Franke
2022-09-02 13:56                         ` Jon Turney
2022-09-02 15:17                           ` Christian Franke
2022-09-15 17:45                             ` Jon Turney
2022-10-04 12:05                               ` Christian Franke
2022-11-29 21:37                                 ` Jon Turney
2022-11-30 18:49                                   ` Christian Franke

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e69c5ac7-e68e-5df2-41d8-713effd59fdc@dronecode.org.uk \
    --to=jon.turney@dronecode.org.uk \
    --cc=Christian.Franke@t-online.de \
    --cc=cygwin-apps@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).