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

Takashi Yano takashi.yano@nifty.ne.jp
Wed Apr 21 09:10:10 GMT 2021


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 <corinna@vinschen.de>
> > 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 <corinna@vinschen.de>
> 
> > 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 <takashi.yano@nifty.ne.jp>


More information about the Cygwin mailing list