X-Recipient: archive-cygwin@delorie.com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 9183E385E010
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
	s=default; t=1585252582;
	bh=wx6fsf9OrKrhspQBku9phpiEEeWH3+QleO6AejM5uzc=;
	h=Date:From:To:Subject:References:In-Reply-To:List-Id:
	 List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe:
	 Reply-To:From;
	b=k2SEkVAbkSzpd1+hOxvZgkWbWdlWm2PzpKk/0dNJ6zcIooDP8baKQKBuVchx4vsL0
	 ebGHAg5pWhREkMhBXtrRp1bws/+lVp8j+SIfJ8O2pd2OKexw5llicE2AN255wODh3T
	 NXdrMvtSIeCbBTLHtetsP5fLxBQxgDlxXUD310Ts=
X-Original-To: cygwin@cygwin.com
Delivered-To: cygwin@cygwin.com
DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 1B0E9385E006
Authentication-Results: sourceware.org;
 dmarc=none (p=none dis=none) header.from=cygwin.com
Authentication-Results: sourceware.org;
 spf=fail smtp.mailfrom=corinna-cygwin@cygwin.com
Date: Thu, 26 Mar 2020 20:56:15 +0100
From: Corinna Vinschen <corinna-cygwin@cygwin.com>
To: cygwin@cygwin.com
Subject: Re: WSL symbolic links
Message-ID: <20200326195615.GJ3261@calimero.vinschen.de>
Mail-Followup-To: cygwin@cygwin.com
References: <294944bd-757e-4bb8-6bcc-ceb8d9190ef9@towo.net>
 <20200326110059.GG3261@calimero.vinschen.de>
 <901e1c08-46cb-555b-c0d0-5bf9c726b3ca@SystematicSw.ab.ca>
MIME-Version: 1.0
In-Reply-To: <901e1c08-46cb-555b-c0d0-5bf9c726b3ca@SystematicSw.ab.ca>
X-Provags-ID: V03:K1:oEgihscAyieGQ1xLIKW1mu24WuENLBatHGRFsKLkQ0a+ymuVr+I
 asTbug/AVIYp2drJUnMwaeIZimR+WmzMuD0+45Be4wzh3QdUoiOny07LpyeMK2xwibPKLdU
 2Ut+40o0dyBj/8d6b0LJCAIopxoI5WiQvuk2I6P7WtNSq0CWHwq6Hb/NO8ixNn5pXwDNkYm
 LkBpxCumdKFAhSEFppq8Q==
X-UI-Out-Filterresults: notjunk:1;V03:K0:MXGp308q1y4=:xcTvINxUUDA7Xz4Z6ywY1z
 jF7SNHoCJKrz/oM7PcBIPwY2FtZbxjKPE2RFubkXzWWIbvT/ylvpyb3ZdtEoApT0Xb9azzoVB
 rEIaELZvMOzhijUHzB3CEHZIyw5thDkOhqujjQyqkiTfV7Tk7mM8hfCZ5XQgmZvwYY1AjtGyU
 HXmnf83V2lYXm+PRk+PrS4JTdmOGYUnawhhTqhau2S9fdP8H4vUOIvXb7jvWefOUO/tS/dJvi
 byQIhGFTqfKICS+nf8KbB/gJb84exrg9Q3r1eBaSY2QW9pIG4SsSaIciJ9ZXhIqUp/Qqb9Yha
 OI554Sv0pey5tF/HAcHu7LB8oQunDmXT6/kDAFoeHSwayQmbYaTScAWUVlfsM+5yj8ST4fdVE
 x8oCT/pTi0QfRhTvfTlw6rwFV6oGWszcRICeERHe6bgRdE1xTrh4Zc46rqg1wiiZA2fLxu3+D
 C3aWjFvx8TqslE2DoBK6ouoILktt50pkm+P4TL8qYA7Euy4vbxnpV9EnzUom7dM+ShpHKlsX3
 h17xjJAAaeAMbcGd3iX1V/fUfipT7n88ouJOsskYqiYXLNC0tXFeoUfRxAkTqgQPBF45v0amV
 ruEPrDyktM0Fe36Q2R5gCfg3DAupFC6/SnkWTJn9zeTJy0Giis132qFtXmqdtsUrJ+gzYaOxi
 MOJzWLNfnX6KNkhNTPKLgK9sQGrUbtx5vva+TuE3wL7L2Ln2F+kzQPssEQcEHcgUMtXFjSuV1
 vM/Fx1iOx0egOxH/8Tiq1P3uPNlr+0gNtJ/EUeeHgv0V6slnS1/bPhWvTTU8OKUFJIOczhCfc
 Tu7Uqe1KFhUeh9OXLoWlkkycRGd42JkUzbAX5gJEKHwgdjeKtKQTTCXBEM8MicsxdWbNLCA
X-Spam-Status: No, score=-81.9 required=5.0 tests=BAYES_00, BODY_8BITS,
 GARBLED_BODY, GIT_PATCH_2, GOOD_FROM_CORINNA_CYGWIN, KAM_DMARC_STATUS,
 RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_NEUTRAL,
 TXREP autolearn=ham autolearn_force=no version=3.4.2
X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on
 server2.sourceware.org
X-BeenThere: cygwin@cygwin.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Unsubscribe: <http://cygwin.com/mailman/options/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=unsubscribe>
List-Archive: <http://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-request@cygwin.com?subject=help>
List-Subscribe: <http://cygwin.com/mailman/listinfo/cygwin>,
 <mailto:cygwin-request@cygwin.com?subject=subscribe>
Reply-To: cygwin@cygwin.com
Content-Type: multipart/mixed; boundary="===============5347693919319530569=="
Errors-To: cygwin-bounces@cygwin.com
Sender: "Cygwin" <cygwin-bounces@cygwin.com>


--===============5347693919319530569==
Content-Type: multipart/signed; micalg=pgp-sha256;
	protocol="application/pgp-signature"; boundary="GBuTPvBEOL0MYPgd"
Content-Disposition: inline


--GBuTPvBEOL0MYPgd
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

Brian and Thomas,


Thanks to both of you for providing this info.


On Mar 26 13:12, Brian Inglis wrote:
> On 2020-03-26 05:00, Corinna Vinschen wrote:
> > On Mar 26 10:00, Thomas Wolff wrote:
> >> A symbolic link created with WSL is neither interpreted in cygwin nor =
can it
> >> be deleted:
> >>> touch file
> >>> wsl ln -s file link
> >>> wsl ls -l link
> >> lrwxrwxrwx=C2=A0=C2=A0=C2=A0 1 towo=C2=A0=C2=A0=C2=A0=C2=A0 towo=C2=A0=
=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 1 Mar 26=
 08:56 link -> file
> >>> ls -l link
> >> -rw-r----- 1 Unknown+User Unknown+Group 0 Mar 26 00:00 link
> > What kind of file are they in the real world?  Reparse points?  If so,
> > what content do they have?  I attached a Q&D source from my vault
> > of old test apps to check on reparse point content.  Please compile with
> >   gcc -g ../src/rd-reparse.c -o rd-reparse -lntdll
> > It takes a single native NT path as parameter, kind of like this:
> >   ./rd-reparse '\??\C:\cygwin64\home\corinna\link'
>=20
> They should be WSL or Windows mklink (soft) links, and the reason why mkl=
ink was
> allowed unelevated in Windows 10 with Developer mode.
>=20
> In an *elevated* shell:
>=20
> $ ls -dln u
> -rw-r----- 1 4294967295 4294967295 0 Nov  9 06:09 u
> $ getfacl u
> getfacl: u: Permission denied
> $ icacls u
> u NULL SID:(DENY)(Rc,S,REA,WEA,X,DC)
>   $HOSTNAME\$USER:(F)
>   $HOSTNAME\$USER:(RX,W,DC)
>   BUILTIN\Users:(Rc,S,RA)
>   BUILTIN\Administrators:(RX,W,DC)
>   BUILTIN\Users:(DENY)(S,RD,REA,X)
>   Everyone:(RX)
>   NT AUTHORITY\SYSTEM:(I)(F)
>   BUILTIN\Administrators:(I)(F)
>   $HOSTNAME\$USER:(I)(F)
>=20
> Successfully processed 1 files; Failed processing 0 files
> $ ./rd-reparse '\??\C:\...\u'
> ReparseTag:           0xa000001d
                        ^^^^^^^^^^

This is a reparse point tag different from the normal Windows symlink
reparse point tag, 0xa000000c.  Searching for this value shows this
is defined in ntifs.h as IO_REPARSE_TAG_LX_SYMLINK.

Unfortunately I don't see a definition of the reparse point data for
that reparse point type.

In your examples the data part looks like a 4 byte int value, being 2 in
both of your examples, maybe a file type, followed by the path in
multibyte, no trailing \0.

Unfortunately, in both cases the path is relative, just the file name it
points to.  To get more information, could one of you two please create
a few more symlinks?

- A symlink pointing to a local path, given in absolute path syntax.
  I assume the path will be in POSIX syntax, contain slashes, but it
  would be helpful to see it.

- A symlink with a target path pointing to a remote file (what syntax
  does this use?)

- Last but not least, could you please create a symlink pointing to a
  target with a non-ASCII char, e. g., some german umlaut?

It's questionable if supporting this new symlink type makes sense, but
taking a closer look doesn't hurt, I guess.


Thanks,
Corinna

--=20
Corinna Vinschen
Cygwin Maintainer

--GBuTPvBEOL0MYPgd
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEoVYPmneWZnwT6kwF9TYGna5ET6AFAl59CN8ACgkQ9TYGna5E
T6A2XQ//Qx2PraUcoTUm72IS3RAIVEigq9OxZ2ZRJcu+b/UUV6ntz/1JTNF8q73y
O+xLPPk1HSW8+iCEnWSBufjbZHUvLsIqM4muwgZeyDiMBz8X5Z3l0FftvSAzlepX
DM/x4CdQOY42zYZTgSw0GFKEFee70KkQ9s/rIkNT6Be9AYWidckuSZn1rtmLqxQ/
0DYwsidNNoNWcBzCuhGlpa1fja4RvqdrHvn9TMOwzIX3a8fs14k2khRAJiJGWRYU
OXH/UataPKBl2e7t+/EiWB0Q5SlSCmXZu76izjWgdghJtNJkPOfSNrskXty2+e9O
i3/49izGCYO/WqiUp4GlmF7A4iiY9RqX9eAd5mbQWISrgLp63KBzLjA6AEt/+FLe
hgoCutXwHvvQk5O5hOxtaAQ8/V/TejM3J3pQrPeo5fSQ+C/F+3uMl1TwfATBxPJl
FiksnoDkrTqb5fX8klQrqagpV0sl7Bg/0dSUsHXbfpmKPaDSZmFcyvKmoSWX+xM6
sSCdGz/7viCSI1s2ksXl6r4y2WBg5gb3x+AjrmLI6deEGXm9NZMp6tMm5HpYN2nz
66eEeO5kvhIODI8V/+yQ6bfbNCWfgKaSaPSEFDmfo37+cb18E4m52Ixg/Y1VsxDZ
qcULTBkc/EsESsfoV7X/D6uH9p1PE70eT/agmpVT2dPyNr9RtA4=
=lGvk
-----END PGP SIGNATURE-----

--GBuTPvBEOL0MYPgd--

--===============5347693919319530569==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

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

--===============5347693919319530569==--
