Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Bill Stewart
On Wed, Apr 21, 2021 at 1:28 PM Corinna Vinschen wrote:

This is not the right place to discuss this in detail, but to me, a
> straightforward and sensible approach would have been to give the 64
> bit system dir another name right from the start:
>
>   C:\Windows\System64
>

That would not have worked for backward compatibility reasons.

https://docs.microsoft.com/en-us/previous-versions/technet-magazine/ff955767(v=msdn.10)

The "32" suffix in System32 can be seen as just a label and doesn't
represent the "bitness" of the files within. (As Raymond says, "you should
think of System32 as the somewhat strange name for the 'system DLLs in the
same bitness as the application [in this case, OS] that’s running'
directory").

(You're right - not really the right place to discuss - was just responding
to the evaluative labeling.)

Bill

-- 
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Corinna Vinschen via Cygwin
On Apr 21 11:57, Bill Stewart wrote:
> On Wed, Apr 21, 2021 at 10:47 AM Corinna Vinschenwrote:
> 
> 
> > A sane assumption is for instance, if you cd to foo, that your in foo.
> > That's what the FSR breaks in a thorough way.  I. e. on WOW64:
> >
> >   $ cd /cygdrive/c/Windows
> >   $ ls -1d Sys*
> >   SysWOW64
> >   System
> >   System32
> >   SystemApps
> >   SystemResources
> >
> > So there are two dirs, one called System32, one called SysWOW64.
> >
> 
> This is, of course, completely expected (notwithstanding the confusion
> caused by the "bitness" names being opposite of what some expect).
> 
> 
> > Note how there's *no* such directory called "Sysnative".  Still...
> >
> >   $ cd System32
> >
> > works fine.  You're just not in System32, but in SysWOW64.  Sane?
> >
> 
> This is completely sensible and expected, as the entire point of the WoW
> emulator is to emulate 32-bit Windows.
> 
> Alternatively:
> >
> >   $ cd Sysnative
> >
> > works fine and now you're, oh wonder, in System32.  If that's sane,
> > running head first into a wall is, too :)
> >
> 
> "Sysnative" isn't an actual file system directory, as noted, but an "alias"
> (for lack of a better word) that allows, from a Wow64 process, to refer to
> the real 64-bit system directory. You can use the name "Sysnative" if you
> are certain you really want to refer to the 64-bit system directory.
> 
> This all seems like a pretty straightforward and sensible approach, IMO.

This is not the right place to discuss this in detail, but to me, a
straightforward and sensible approach would have been to give the 64
bit system dir another name right from the start:

  C:\Windows\System64


Corinna

-- 
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Bill Stewart
On Wed, Apr 21, 2021 at 10:47 AM Corinna Vinschenwrote:


> A sane assumption is for instance, if you cd to foo, that your in foo.
> That's what the FSR breaks in a thorough way.  I. e. on WOW64:
>
>   $ cd /cygdrive/c/Windows
>   $ ls -1d Sys*
>   SysWOW64
>   System
>   System32
>   SystemApps
>   SystemResources
>
> So there are two dirs, one called System32, one called SysWOW64.
>

This is, of course, completely expected (notwithstanding the confusion
caused by the "bitness" names being opposite of what some expect).


> Note how there's *no* such directory called "Sysnative".  Still...
>
>   $ cd System32
>
> works fine.  You're just not in System32, but in SysWOW64.  Sane?
>

This is completely sensible and expected, as the entire point of the WoW
emulator is to emulate 32-bit Windows.

Alternatively:
>
>   $ cd Sysnative
>
> works fine and now you're, oh wonder, in System32.  If that's sane,
> running head first into a wall is, too :)
>

"Sysnative" isn't an actual file system directory, as noted, but an "alias"
(for lack of a better word) that allows, from a Wow64 process, to refer to
the real 64-bit system directory. You can use the name "Sysnative" if you
are certain you really want to refer to the 64-bit system directory.

This all seems like a pretty straightforward and sensible approach, IMO.

Bill

-- 
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Corinna Vinschen via Cygwin
On Apr 21 09:49, Bill Stewart wrote:
> On Wed, Apr 21, 2021 at 3:20 AM Corinna Vinschen wrote:
> 
> The problem here is the File System Redirector,
> >
> > https://docs.microsoft.com/en-us/windows/win32/winprog64/file-system-redirector
> >
> > This thing is really a problem because it break every, otherwise
> > sane assumption.  Hmm, bummer.  I need some time to think about
> > a solution here.
> >
> 
> Can you elaborate on what "sane assumptions" get broken? (The redirector is
> working as designed, as I understand it?)

A sane assumption is for instance, if you cd to foo, that your in foo.
That's what the FSR breaks in a thorough way.  I. e. on WOW64:

  $ cd /cygdrive/c/Windows
  $ ls -1d Sys*
  SysWOW64
  System
  System32
  SystemApps
  SystemResources

So there are two dirs, one called System32, one called SysWOW64.
Note how there's *no* such directory called "Sysnative".  Still...

  $ cd System32

works fine.  You're just not in System32, but in SysWOW64.  Sane?

Alternatively:

  $ cd Sysnative

works fine and now you're, oh wonder, in System32.  If that's sane,
running head first into a wall is, too :)


Corinna

-- 
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: [PATCH] Use automake (v5)

2021-04-21 Thread Corinna Vinschen
On Apr 20 21:15, Jon Turney wrote:
> On 20/04/2021 21:13, Jon Turney wrote:
> > For ease of reviewing, this patch doesn't contain changes to generated
> > files which would be made by running ./autogen.sh.
> 
> Sorry about getting distracted from this.  To summarize what I believe were
> the outstanding issues with v3 [1]:
> 
> [1] https://cygwin.com/pipermail/cygwin-patches/2020q4/010827.html
> 
> * 'INCLUDES' is the old name for 'AM_CPPFLAGS' warning from autogen.sh
> 
> I plan to clean this up in a future patch
> 
> * 'ps$(EXEEXT)' previously defined' warning from autogen.sh
> 
> It seems to be a shortcoming of automake that there's no way to suppress
> just that warning.
> 
> One possible solution is build ps.exe with a different name and rename it
> while installing, but I think that is counter-productive (in the sense that
> it trades this warning for making the build more complex to understand)
> 
> * some object files are in a unexpected places in the build file hierarchy
> (compared to naive expectations and/or the non-automake build)

This is the only minor qualm I have with this patch.  It would be nice
to have the mingw sources and .o files in the mingw subdir.  It would
simply be a bit cleaner.  The files shared between cygwin and mingw
(that's only path.cc, I think) could be handled by an include, i. e.

  utils/

path.cc (full implementation)

  utils/mingw/

path.cc:

  #include "../path.cc"

However, this isn't a showstopper, feel free to push what you're comfortable
with.

Still, wWhat do you think?  Any problem to move the mingw stuff to the
mingw subdir entirely?


Thanks,
Corinna


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Brian Inglis

On 2021-04-21 09:49, Corinna Vinschen via Cygwin wrote:

Eventually, we should really start thinking about dropping 32 bit
support, I guess.  Only 17 years left until time_t overflow...


...and start working on port to ARM64 Windows? gd ;^>

--
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in binary units and prefixes, physical quantities in SI.]

--
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Bill Stewart
On Wed, Apr 21, 2021 at 3:20 AM Corinna Vinschen wrote:

The problem here is the File System Redirector,
>
> https://docs.microsoft.com/en-us/windows/win32/winprog64/file-system-redirector
>
> This thing is really a problem because it break every, otherwise
> sane assumption.  Hmm, bummer.  I need some time to think about
> a solution here.
>

Can you elaborate on what "sane assumptions" get broken? (The redirector is
working as designed, as I understand it?)

Bill

-- 
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Corinna Vinschen via Cygwin
On Apr 21 17:58, Andrey Repin wrote:
> Greetings, Corinna Vinschen via Cygwin!
> 
> > On Apr 21 12:04, Takashi Yano via Cygwin wrote:
> >> Hi Corinna,
> >> 
> >> I noticed the problem that /cygdrive/c/Windows/System32 directory
> >> can be no longer accessed from 32 bit cygwin (WOW64) after the
> >> commit:
> 
> > The problem here is the File System Redirector,
> > https://docs.microsoft.com/en-us/windows/win32/winprog64/file-system-redirector
> 
> > This thing is really a problem because it break every, otherwise
> > sane assumption.  Hmm, bummer.  I need some time to think about
> > a solution here.
> 
> As far as I'm aware, it can be disabled on application request.
> I know at least one 32-bit application (Far Manager) that works through
> redirector, but it might not be as easy for a library.

That doesn't help.  We *want* the redirector to work, otherwise we would
end up in the wrong dir in terms of the system32 dir and sysnative
wouldn't work at all in Cygwin, without going to great lengths to
emulate the FSR by ourselves.

I pushed a patch and created new snapshots.  After some mulling I
decided it's not worth to introduce some complicated routine for just
WOW64, so Cygwin simply skips the code from commit 456c3a46386f3 now, if
the incoming path is pointing inside the Windows dir on WOW64.

Eventually, we should really start thinking about dropping 32 bit
support, I guess.  Only 17 years left until time_t overflow...


Corinna

-- 
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: [PATCH] Cygwin: pty: Additional race issue fix regarding pseudo console.

2021-04-21 Thread Corinna Vinschen
On Apr 21 12:06, Takashi Yano wrote:
> - In commit bb93c6d7, the race issue was not completely fixed. In
>   the pseudo console inheritance, if the destination process to
>   which the ownership of pseudo console switches, is found but exits
>   before switching, the inheritance fails. Currently, this extremely
>   rarely happens. This patch fixes the issue.
> ---
>  winsup/cygwin/fhandler_tty.cc | 47 +++
>  1 file changed, 14 insertions(+), 33 deletions(-)

This and the other two patches pushed.


Thanks,
Corinna


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Andrey Repin
Greetings, Corinna Vinschen via Cygwin!

> On Apr 21 12:04, Takashi Yano via Cygwin wrote:
>> Hi Corinna,
>> 
>> I noticed the problem that /cygdrive/c/Windows/System32 directory
>> can be no longer accessed from 32 bit cygwin (WOW64) after the
>> commit:

> The problem here is the File System Redirector,
> https://docs.microsoft.com/en-us/windows/win32/winprog64/file-system-redirector

> This thing is really a problem because it break every, otherwise
> sane assumption.  Hmm, bummer.  I need some time to think about
> a solution here.

As far as I'm aware, it can be disabled on application request.
I know at least one 32-bit application (Far Manager) that works through
redirector, but it might not be as easy for a library.

>> 
>> commit 456c3a46386f38887407603b2c64b7f63a4871c5
>> Author: Corinna Vinschen 
>> Date:   Mon Apr 19 14:49:14 2021 +0200
>> 
>> Cygwin: path_conv: Try to handle native symlinks more sanely
>> 
>> For local paths, add a check if the inner path components contain native
>> symlinks or junctions.  Compare the incoming path with the path returned
>> by NtQueryInformationFile(FileNameInformation).  If they differ, there
>> must be at least one native symlink or junction in the path.  If so,
>> treat the currently evaluated file as non-existant.  This forces
>> path_conv::check to backtrack inner path components until we eliminated
>> all native symlinks or junctions and have a normalized path.
>> 
>> Signed-off-by: Corinna Vinschen 
>> 
>> Reverting this commit resolves the issue.
>> 
>> 64 bit cygwin does not seem to be affected. Could you please
>> have a look?


-- 
With best regards,
Andrey Repin
Wednesday, April 21, 2021 17:54:23

Sorry for my terrible english...


-- 
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Takashi Yano via Cygwin
On Wed, 21 Apr 2021 11:56:50 +0200
Marco Atzeri wrote:
> On 21.04.2021 10:49, Andrey Repin wrote:
> > Greetings, Takashi Yano!
> > 
> >> I noticed the problem that /cygdrive/c/Windows/System32 directory
> >> can be no longer accessed from 32 bit cygwin (WOW64) after the
> >> commit:
> > 
> >> Reverting this commit resolves the issue.
> > 
> >> 64 bit cygwin does not seem to be affected. Could you please
> >> have a look?
> > 
> > How exactly it "can no longer be accessed" ? Is it opening WOW64 System32 or
> > not opening anything at all?
> > 
> > 
> 
> I see no problem on my side
> 
> $ uname -svr
> CYGWIN_NT-10.0-WOW 3.2.0(0.340/5/3) 2021-03-29 08:37
> 
> $ ls /cygdrive/c/Windows/System32 | wc -l
> 2925

Because your cygwin1.dll is older than the commit:
commit 456c3a46386f38887407603b2c64b7f63a4871c5
Author: Corinna Vinschen 
Date:   Mon Apr 19 14:49:14 2021 +0200

-- 
Takashi Yano 

-- 
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Takashi Yano via Cygwin
On Wed, 21 Apr 2021 12:22:33 +0300
Andrey Repin wrote:
> Greetings, Takashi Yano!
> 
> > On Wed, 21 Apr 2021 11:49:00 +0300
> > Andrey Repin wrote:
> >> Greetings, Takashi Yano!
> >> 
> >> > I noticed the problem that /cygdrive/c/Windows/System32 directory
> >> > can be no longer accessed from 32 bit cygwin (WOW64) after the
> >> > commit:
> >> 
> >> > commit 456c3a46386f38887407603b2c64b7f63a4871c5
> >> > Author: Corinna Vinschen 
> >> > Date:   Mon Apr 19 14:49:14 2021 +0200
> >> 
> >> > Cygwin: path_conv: Try to handle native symlinks more sanely
> >> 
> >> > For local paths, add a check if the inner path components contain 
> >> > native
> >> > symlinks or junctions.  Compare the incoming path with the path 
> >> > returned
> >> > by NtQueryInformationFile(FileNameInformation).  If they differ, 
> >> > there
> >> > must be at least one native symlink or junction in the path.  If so,
> >> > treat the currently evaluated file as non-existant.  This forces
> >> > path_conv::check to backtrack inner path components until we 
> >> > eliminated
> >> > all native symlinks or junctions and have a normalized path.
> >> 
> >> > Signed-off-by: Corinna Vinschen 
> >> 
> >> > Reverting this commit resolves the issue.
> >> 
> >> > 64 bit cygwin does not seem to be affected. Could you please
> >> > have a look?
> >> 
> >> How exactly it "can no longer be accessed" ? Is it opening WOW64 System32 
> >> or
> >> not opening anything at all?
> 
> > If "ls /cygdrive/c/Windows/System32" is executed, the result is:
> > ls: cannot access '/cygdrive/c/Windows/System32': No such file or directory
> 
> > Also, if try to execute "cmd.exe" in System32 directory, the result is:
> > bash: cmd.exe: command not found.
> > Of cource, /cygdrive/c/WINDOWS/system32 exists in the PATH.
> 
> > So I mean "not opening anything at all".
> 
> Just curious, can you access SysNative at the same time?
> 
> ls -l /proc/cygdrive/c/WINDOWS/SysNative/

This directory is also inaccessible.


-- 
Takashi Yano 

-- 
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Marco Atzeri via Cygwin

On 21.04.2021 10:49, Andrey Repin wrote:

Greetings, Takashi Yano!


I noticed the problem that /cygdrive/c/Windows/System32 directory
can be no longer accessed from 32 bit cygwin (WOW64) after the
commit:



Reverting this commit resolves the issue.



64 bit cygwin does not seem to be affected. Could you please
have a look?


How exactly it "can no longer be accessed" ? Is it opening WOW64 System32 or
not opening anything at all?




I see no problem on my side

$ uname -svr
CYGWIN_NT-10.0-WOW 3.2.0(0.340/5/3) 2021-03-29 08:37

$ ls /cygdrive/c/Windows/System32 | wc -l
2925


--
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Andrey Repin
Greetings, Takashi Yano!

> On Wed, 21 Apr 2021 11:49:00 +0300
> Andrey Repin wrote:
>> Greetings, Takashi Yano!
>> 
>> > I noticed the problem that /cygdrive/c/Windows/System32 directory
>> > can be no longer accessed from 32 bit cygwin (WOW64) after the
>> > commit:
>> 
>> > commit 456c3a46386f38887407603b2c64b7f63a4871c5
>> > Author: Corinna Vinschen 
>> > Date:   Mon Apr 19 14:49:14 2021 +0200
>> 
>> > Cygwin: path_conv: Try to handle native symlinks more sanely
>> 
>> > For local paths, add a check if the inner path components contain 
>> > native
>> > symlinks or junctions.  Compare the incoming path with the path 
>> > returned
>> > by NtQueryInformationFile(FileNameInformation).  If they differ, there
>> > must be at least one native symlink or junction in the path.  If so,
>> > treat the currently evaluated file as non-existant.  This forces
>> > path_conv::check to backtrack inner path components until we eliminated
>> > all native symlinks or junctions and have a normalized path.
>> 
>> > Signed-off-by: Corinna Vinschen 
>> 
>> > Reverting this commit resolves the issue.
>> 
>> > 64 bit cygwin does not seem to be affected. Could you please
>> > have a look?
>> 
>> How exactly it "can no longer be accessed" ? Is it opening WOW64 System32 or
>> not opening anything at all?

> If "ls /cygdrive/c/Windows/System32" is executed, the result is:
> ls: cannot access '/cygdrive/c/Windows/System32': No such file or directory

> Also, if try to execute "cmd.exe" in System32 directory, the result is:
> bash: cmd.exe: command not found.
> Of cource, /cygdrive/c/WINDOWS/system32 exists in the PATH.

> So I mean "not opening anything at all".

Just curious, can you access SysNative at the same time?

ls -l /proc/cygdrive/c/WINDOWS/SysNative/


-- 
With best regards,
Andrey Repin
Wednesday, April 21, 2021 12:18:51

Sorry for my terrible english...


-- 
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Corinna Vinschen via Cygwin
Hi Takashi,

On Apr 21 12:04, Takashi Yano via Cygwin wrote:
> Hi Corinna,
> 
> I noticed the problem that /cygdrive/c/Windows/System32 directory
> can be no longer accessed from 32 bit cygwin (WOW64) after the
> commit:

The problem here is the File System Redirector,
https://docs.microsoft.com/en-us/windows/win32/winprog64/file-system-redirector

This thing is really a problem because it break every, otherwise
sane assumption.  Hmm, bummer.  I need some time to think about
a solution here.


Thanks,
Corinna

> 
> commit 456c3a46386f38887407603b2c64b7f63a4871c5
> Author: Corinna Vinschen 
> Date:   Mon Apr 19 14:49:14 2021 +0200
> 
> Cygwin: path_conv: Try to handle native symlinks more sanely
> 
> For local paths, add a check if the inner path components contain native
> symlinks or junctions.  Compare the incoming path with the path returned
> by NtQueryInformationFile(FileNameInformation).  If they differ, there
> must be at least one native symlink or junction in the path.  If so,
> treat the currently evaluated file as non-existant.  This forces
> path_conv::check to backtrack inner path components until we eliminated
> all native symlinks or junctions and have a normalized path.
> 
> Signed-off-by: Corinna Vinschen 
> 
> Reverting this commit resolves the issue.
> 
> 64 bit cygwin does not seem to be affected. Could you please
> have a look?
> 
> -- 
> Takashi Yano 
> 
> -- 
> Problem reports:  https://cygwin.com/problems.html
> FAQ:  https://cygwin.com/faq/
> Documentation:https://cygwin.com/docs.html
> Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple

-- 
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Takashi Yano via Cygwin
On Wed, 21 Apr 2021 11:49:00 +0300
Andrey Repin wrote:
> Greetings, Takashi Yano!
> 
> > I noticed the problem that /cygdrive/c/Windows/System32 directory
> > can be no longer accessed from 32 bit cygwin (WOW64) after the
> > commit:
> 
> > commit 456c3a46386f38887407603b2c64b7f63a4871c5
> > Author: Corinna Vinschen 
> > Date:   Mon Apr 19 14:49:14 2021 +0200
> 
> > Cygwin: path_conv: Try to handle native symlinks more sanely
> 
> > For local paths, add a check if the inner path components contain native
> > symlinks or junctions.  Compare the incoming path with the path returned
> > by NtQueryInformationFile(FileNameInformation).  If they differ, there
> > must be at least one native symlink or junction in the path.  If so,
> > treat the currently evaluated file as non-existant.  This forces
> > path_conv::check to backtrack inner path components until we eliminated
> > all native symlinks or junctions and have a normalized path.
> 
> > Signed-off-by: Corinna Vinschen 
> 
> > Reverting this commit resolves the issue.
> 
> > 64 bit cygwin does not seem to be affected. Could you please
> > have a look?
> 
> How exactly it "can no longer be accessed" ? Is it opening WOW64 System32 or
> not opening anything at all?

If "ls /cygdrive/c/Windows/System32" is executed, the result is:
ls: cannot access '/cygdrive/c/Windows/System32': No such file or directory

Also, if try to execute "cmd.exe" in System32 directory, the result is:
bash: cmd.exe: command not found.
Of cource, /cygdrive/c/WINDOWS/system32 exists in the PATH.

So I mean "not opening anything at all".

-- 
Takashi Yano 

-- 
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple


Re: Cannot access system32 directory from 32 bit cygwin after the commit 456c3a46

2021-04-21 Thread Andrey Repin
Greetings, Takashi Yano!

> I noticed the problem that /cygdrive/c/Windows/System32 directory
> can be no longer accessed from 32 bit cygwin (WOW64) after the
> commit:

> commit 456c3a46386f38887407603b2c64b7f63a4871c5
> Author: Corinna Vinschen 
> Date:   Mon Apr 19 14:49:14 2021 +0200

> Cygwin: path_conv: Try to handle native symlinks more sanely

> For local paths, add a check if the inner path components contain native
> symlinks or junctions.  Compare the incoming path with the path returned
> by NtQueryInformationFile(FileNameInformation).  If they differ, there
> must be at least one native symlink or junction in the path.  If so,
> treat the currently evaluated file as non-existant.  This forces
> path_conv::check to backtrack inner path components until we eliminated
> all native symlinks or junctions and have a normalized path.

> Signed-off-by: Corinna Vinschen 

> Reverting this commit resolves the issue.

> 64 bit cygwin does not seem to be affected. Could you please
> have a look?

How exactly it "can no longer be accessed" ? Is it opening WOW64 System32 or
not opening anything at all?


-- 
With best regards,
Andrey Repin
Wednesday, April 21, 2021 11:47:03

Sorry for my terrible english...


-- 
Problem reports:  https://cygwin.com/problems.html
FAQ:  https://cygwin.com/faq/
Documentation:https://cygwin.com/docs.html
Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple