DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 5168hZiY2247002 Authentication-Results: delorie.com; dmarc=pass (p=none dis=none) header.from=cygwin.com Authentication-Results: delorie.com; spf=pass smtp.mailfrom=cygwin.com DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 5168hZiY2247002 Authentication-Results: delorie.com; dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=gqMpzPua X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 79C0B385843D DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1738831412; bh=XrhCI6XwAJGItERWvgMFvNUEQLXh6W7d0y/aeqnDJXQ=; h=References:In-Reply-To:Date:Subject:To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=gqMpzPuaZoLYjmq4H3r8LRaYV+WfBl/FHtPZLOVKjpL9H4oMhJe+nZAwYgTnJIILC Gwfq0bnJGQoIiQ8+RQB+yZ9RhYGLCc+5E4hxyYLNzilXbF3+STUJQFAR831DqhmCYG OAKpHWgNX3zGj+8w5Kr22LjH0FfvGRHfwCxt0PR4= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 1B5B23858424 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 1B5B23858424 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1738831379; cv=none; b=Tv9jlIkLwbjYH2ZDLbvhk0hy2jEJuJDcAyFJx1utZGqP7mz6r5NnentCqKefW8rze4dSxTte7pIWFF7i/fb8IZv08Js/in6GSTjHKLfsp9c6XYghfprSK7Z5duf1r3Ot0XZ/viTy5+LGyx+IiRFRxyvU/nnOc1buonr8HfmV2Xg= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1738831379; c=relaxed/simple; bh=laLqWuB1aQtR4fX7uXY+Zd5sbPcDZ7voLwL6ZiW2NFE=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=FB4Dsef7lxt3vGIRgX5teVanrncZ6VSsiUb07dcQ9Y8VzOswRN9E/dlH/gGqe1WG4rsB9lbU836KhNYq2XzRInbSVhzbO8Uu+5fad/zqhyY4a2K09XoYIMtdHwO45pLpgK5H6SzfDjLx/3FUlGzdT3Rfnux5hnT8laSlgWaZ3WI= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 1B5B23858424 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738831377; x=1739436177; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=PC2rLJuE0/iz1dgWEhW0ppIOlQ6zEcqHiqYbBoV1QTA=; b=sYqN9h9mJ2PiLl9lcL+P5x39kuV1YGxUtqM3bfsF6e4GwsOobqGqbKGUwTL2xp5mt8 5JpY8ykLjVjW1VkiNDGkoDYR7qUZ0JGV1LkjAyFVf45mpRyI/dnQzE+MrellRaQcRugw b9z8241Syz+2RK9XpbMkm1SP2iIYH59TNhI0q+iUwd/UfhfS8eMKxjayvXwey+6H21rz dgAzb5RxH1QUs34VDg8GbNp8lxM2YGE05ppzIV8LFa8WZGQkzX2m4qqT1Mq3uT04yhO9 TQChBMGnTz209EUYLQUMdS77CdvR5bGC0THvgV6r+br8wB8n1MMxn8mmUXGI7Dm2bZU1 3c9A== X-Gm-Message-State: AOJu0YwczN9teCjP2lFH3f3ZjD+gs09I0pdAJmLLfVXMj+YFX5TPJXca VMJThO0le2z+Md3N5C1McU+KLj5KgpZoBHyISCpuvotoJsJI2MArA1HPl5lX5FRAD47KgYtapc2 5qD2WmtSdraFxqyGJ+ZWc3kOIOQsfJw== X-Gm-Gg: ASbGnctXUiDa/zvP8/iaJCzIflzF0Et8F5xPhoqcpH+WpsSRBu/AaGreEMfmLnRCDf2 mT4vfrwvRwsFsV6Z0RtGAHWQoLFp3+A8X3zcSr/DPcvwn3RyWmFQZ6ugMaM3yqdZu1ftv9cnXRw == X-Google-Smtp-Source: AGHT+IHUY/NEb976EAHSyyyy4QujyKdL1i5oduaIEqqfQKi867g2Qfc1o5OgWIkl1PEVrOUvY8deEb2ks647T7C7R8E= X-Received: by 2002:a17:90b:3147:b0:2f9:e933:f09a with SMTP id 98e67ed59e1d1-2f9ffb38e6bmr4545184a91.14.1738831377529; Thu, 06 Feb 2025 00:42:57 -0800 (PST) MIME-Version: 1.0 References: <35e9e310-91d7-41e5-7e98-c1658030e912 AT jdrake DOT com> In-Reply-To: Date: Thu, 6 Feb 2025 09:42:21 +0100 X-Gm-Features: AWEUYZkWqN7qskyccK0poIQ7HgzfpLV1fw9Ww82ewCs8kED40tDabJzTt3T-KTo Message-ID: Subject: Re: |IO_REPARSE_TAG_MOUNTPOINT| (Junctions) not working for remote filesystems in Cygwin ? To: cygwin AT cygwin DOT com, Ms-nfs41-client-devel AT lists DOT sourceforge DOT net X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.30 List-Id: General Cygwin discussions and problem reports List-Archive: List-Post: List-Help: List-Subscribe: , From: Cedric Blancher via Cygwin Reply-To: Cedric Blancher Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Cygwin" On Wed, 5 Feb 2025 at 16:56, Corinna Vinschen via Cygwin wrote: > > On Feb 4 14:47, Jeremy Drake via Cygwin wrote: > > On Tue, 4 Feb 2025, Roland Mainz via Cygwin wrote: > > > > > it seems that Cygwin does not support |IO_REPARSE_TAG_MOUNTPOINT| for > > > "remote" filesystems: > > > ---- snip ---- > > > 2582 /* Don't handle junctions on remote filesystems as > > > symlinks. This type > > > 2583 of reparse point is handled transparently by the OS so that the > > > 2584 target of the junction is the remote directory it is > > > supposed to > > > 2585 point to. If we handle it as symlink, it will be mistreated as > > > 2586 pointing to a dir on the local system. */ > > > > > > The matching code in our filesystems seems to work in PowerShell and > > > cmd.exe - so what context am I missing ? > > > > The comment seemed to explain it pretty well. Junctions are always > > absolute. If it is absolute to a local path, that path is local to the > > server, not the client. If Cygwin treated it as a symlink, it would see > > the target as /cygdrive/c/whatever and would try to follow that to the > > client-local directory. By *not* treating those as symlinks, it will > > instead treat them as ordinary directories to be traversed, which will > > allow the OS to handle them as normal. > > Well explained. > > > Perhaps it could be relaxed to allow remote junctions to be treated as > > symlinks if their targets are UNC rather than local? Is that the case > > your filesystems are exposing? > > Just to be clear, there are two types. > > The official volume mount points using the GUID-style volume names as > introduced with the Vista volume manager shouldn't be touched at all for > the reason stated above. > > The junctions points are usually pointing to some local directory > in the form \??\X:\... We can't use them for the same reason. > > But if your NFS client would be so kind to convert them to the UNC > type of path, i. e., \??\UNC\server\path, then we could test it in > Cygwin and actually expose them as symlinks. > > However, is it really worth the effort? Another issue: Any new feature in ms-nfs41-client must be backwards-compatible to Cygwin 3.3 32bit, to support Windows 10/32bit, unless someone ports Cygwin 3.6 to 32bit. Ced -- Cedric Blancher [https://plus.google.com/u/0/+CedricBlancher/] Institute Pasteur -- 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