[PATCH v4 3/3] Respect `db_home: env` even when no uid can be determined

Corinna Vinschen corinna-cygwin@cygwin.com
Mon Apr 3 13:29:15 GMT 2023


On Apr  3 15:12, Johannes Schindelin wrote:
> Hi Corinna,
> 
> On Mon, 3 Apr 2023, Johannes Schindelin wrote:
> 
> > On Tue, 28 Mar 2023, Corinna Vinschen wrote:
> >
> > > On Mar 28 10:17, Johannes Schindelin wrote:
> > > > In particular when we cannot figure out a uid for the current user, we
> > > > should still respect the `db_home: env` setting. Such a situation occurs
> > > > for example when the domain returned by `LookupAccountSid()` is not our
> > > > machine name and at the same time our machine is no domain member: In
> > > > that case, we have nobody to ask for the POSIX offset necessary to come
> > > > up with the uid.
> > > >
> > > > It is important that even in such cases, the `HOME` environment variable
> > > > can be used to override the home directory, e.g. when Git for Windows is
> > > > used by an account that was generated on the fly, e.g. for transient use
> > > > in a cloud scenario.
> > >
> > > How does this kind of account look like?  I'd like to see the contants
> > > of name, domain, and the SID.  Isn't that just an account closely
> > > resembling Micorosft Accounts or AzureAD accounts?  Can't we somehow
> > > handle them alike?
> >
> > [...]
> >
> > What I _can_ do is try to recreate the problem (the report said that this
> > happens in a Kudu console of an Azure Web App, see
> > https://github.com/projectkudu/kudu/wiki/Kudu-console) by creating a new
> > Azure Web App and opening that console and run Cygwin within it, which is
> > what I am going to do now.
> 
> So here is what is going on:
> 
> - The domain is 'IIS APPPOOL'

There's a domain, so why not pass it to the called function?>

> - The name is the name of the Azure Web App
> 
> - The sid is 'S-1-5-82-3932326390-3052311582-2886778547-4123178866-1852425102'

Oh well. These are basically the same thing as 1-5-80 service accounts.
It would be great if we could handle them gracefully instead of
special-case them in a piece of code we just reach because we don't
handle them yet.

Btw., one easy way out would be if we default to /home/<name> or
/home/<SID> rather than "/", isn't it?


Corinna


More information about the Cygwin-patches mailing list