www.delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2025/02/04/17:48:33

DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 514MmWNi1603933
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 514MmWNi1603933
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=yXO7Zg6Q
X-Recipient: archive-cygwin AT delorie DOT com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 83029385841C
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
s=default; t=1738709311;
bh=B3F5xx1bw8sS7kOvcaCB4RRdj43cTVjTP5MH+aWDm2Q=;
h=Date:To:Subject:In-Reply-To:References:List-Id:List-Unsubscribe:
List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:
From;
b=yXO7Zg6Q6WJK7p20GltOuGq9b4W98U9DcuJ1VzEFwwLglIAcThB2YbDuazLULer9T
UGl7mgVzBbx1669jKYePKRSeYSzE6WGpYqRv7v6C7Wcte6n9slOZJl71MQntT26/3m
GXxAdWAX7DXHstMXqT8JmaGHYK97c3mFDnqaoTRM=
X-Original-To: cygwin AT cygwin DOT com
Delivered-To: cygwin AT cygwin DOT com
DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 776F43858D20
ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 776F43858D20
ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1738709253; cv=none;
b=vAAMjiQ65pa4cXIDMVc87bgG40ZiIAenZaSusn2x5q7JNJZCXse9DCPTapK0mcdjFoOZ9fRVPP6Z3ZXEwu+nKbjH0641F69B35qa9KEsaNeldcsIrZgbT8Kiz+l0GzwnoWLczgT3YgU42fWdhOPK0hnf7WQYpsZaTMRCnQ3P9E8=
ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key;
t=1738709253; c=relaxed/simple;
bh=bmvlUHQcnIasRIn/EQJ6UZdLuoeHGNGxZMhswxWu7Yg=;
h=DKIM-Signature:Date:From:To:Subject:Message-ID:MIME-Version;
b=IwmCNuU3SrgI1hd51EvZ9FHqLRXVSORCfpueRTGXJcfA7jioATzhhuq7U5+Vn+21cDUm3/DPH8il8dtKx2AVlt5w5kKCqs0gOo1zIWWUfQYpxic/ITGQVnmmTGRj+MKB/8kk1/YQVNRTpfpy7lmgjXmCg50bbV5klsF622c/XjI=
ARC-Authentication-Results: i=1; server2.sourceware.org
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 776F43858D20
Date: Tue, 4 Feb 2025 14:47:32 -0800 (PST)
X-X-Sender: jeremyd AT resin DOT csoft DOT net
To: gisburn AT nrubsig DOT org
Subject: Re: |IO_REPARSE_TAG_MOUNTPOINT| (Junctions) not working for remote
filesystems in Cygwin ?
In-Reply-To: <CAKAoaQ=c44QKPSN0=pweE+H=n2opxPnRjqVwcorow=y=_7TCHw@mail.gmail.com>
Message-ID: <35e9e310-91d7-41e5-7e98-c1658030e912@jdrake.com>
References: <CAKAoaQ=c44QKPSN0=pweE+H=n2opxPnRjqVwcorow=y=_7TCHw AT mail DOT gmail DOT com>
MIME-Version: 1.0
X-BeenThere: cygwin AT cygwin DOT com
X-Mailman-Version: 2.1.30
List-Id: General Cygwin discussions and problem reports <cygwin.cygwin.com>
List-Unsubscribe: <https://cygwin.com/mailman/options/cygwin>,
<mailto:cygwin-request AT cygwin DOT com?subject=unsubscribe>
List-Archive: <https://cygwin.com/pipermail/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-request AT cygwin DOT com?subject=help>
List-Subscribe: <https://cygwin.com/mailman/listinfo/cygwin>,
<mailto:cygwin-request AT cygwin DOT com?subject=subscribe>
From: Jeremy Drake via Cygwin <cygwin AT cygwin DOT com>
Reply-To: Jeremy Drake <cygwin AT jdrake DOT com>
Cc: cygwin AT cygwin DOT com
Errors-To: cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com
Sender: "Cygwin" <cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com>

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.

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?

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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019