www.delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2025/02/26/11:29:42

DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 51QGTgtD231364
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 51QGTgtD231364
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=wQYWmn+R
X-Recipient: archive-cygwin AT delorie DOT com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 54D583858401
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
s=default; t=1740587380;
bh=juMYVUDx1jaw0Wud9OJeZ8CaWoQz4681o1SKPqOXmvM=;
h=Date:To:Subject:References:In-Reply-To:List-Id:List-Unsubscribe:
List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc:
From;
b=wQYWmn+RB4Yz3o0J0kqtItn0RG5EiFmGA3LdwWmPKOmMpoO+h84niYF3TPYPb879J
RzDH1PXvFABb6XCzPPVnQLgFfSDcP65NYQExc4JEIngpgBXZbTbzWfnjMKrWXMZm5c
xMlbMwDs/5sEfqLitmitJLya/urIfECM1dCHXgIU=
X-Original-To: cygwin AT cygwin DOT com
Delivered-To: cygwin AT cygwin DOT com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 0C1FA3858C51
Date: Wed, 26 Feb 2025 17:28:29 +0100
To: cygwin AT cygwin DOT com
Subject: Re: Registering new |WNNC_NET_*| keys ? / Re: Document support for @
character in UNC paths
Message-ID: <Z79BLSfo1-EVqIqS@calimero.vinschen.de>
Mail-Followup-To: cygwin AT cygwin DOT com
References: <CALWcw=EqzTv-J5pm1DVT8Un+J2QWLtV70nF1nU9DO_P3Cg4OOg AT mail DOT gmail DOT com>
<CALWcw=GDQ0kPGXBXMa3-9LdFX3fjsVdUK-VS1TpwdO_XtFvXMA AT mail DOT gmail DOT com>
<Z73yniyu8UVlSafF AT calimero DOT vinschen DOT de>
<CALWcw=HuN79qXaupYvXuFSWXNj0LmAxV4-EWsCgyYJ63xkVn1Q AT mail DOT gmail DOT com>
<ba7af2e1-87e7-71fe-7a19-be5cd8587369 AT jdrake DOT com>
<CAKAoaQnxk+OtYxHr_9g=0D6Pb9N1sDXjqNirt5LWze-apyybEw AT mail DOT gmail DOT com>
<Z78Y5xXF_nIqsY9B AT calimero DOT vinschen DOT de>
<CAKAoaQmkW-nE7q+uxRjjtd7-CGK_x38Eig29ys49ki2nOPJ5_w AT mail DOT gmail DOT com>
<Z784PYxNn6DwIME0 AT calimero DOT vinschen DOT de>
<CALXu0Uc4zCBZ=21gDWUVPomTxiUcvekctXwtB+mQNkbQ0C-oow AT mail DOT gmail DOT com>
MIME-Version: 1.0
In-Reply-To: <CALXu0Uc4zCBZ=21gDWUVPomTxiUcvekctXwtB+mQNkbQ0C-oow@mail.gmail.com>
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: Corinna Vinschen via Cygwin <cygwin AT cygwin DOT com>
Reply-To: cygwin AT cygwin DOT com
Cc: Corinna Vinschen <corinna-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>
X-MIME-Autoconverted: from base64 to 8bit by delorie.com id 51QGTgtD231364

On Feb 26 17:13, Cedric Blancher via Cygwin wrote:
> On Wed, 26 Feb 2025 at 16:50, Corinna Vinschen via Cygwin
> <cygwin AT cygwin DOT com> wrote:
> >
> > On Feb 26 16:23, Roland Mainz via Cygwin wrote:
> > > On Wed, Feb 26, 2025 at 2:36 PM Corinna Vinschen via Cygwin
> > > <cygwin AT cygwin DOT com> wrote:
> > > >
> > > > On Feb 26 11:15, Roland Mainz via Cygwin wrote:
> > > > > On Wed, Feb 26, 2025 at 2:22 AM Jeremy Drake via Cygwin
> > > > > <cygwin AT cygwin DOT com> wrote:
> > > > > > On Tue, 25 Feb 2025, Takeshi Nishimura via Cygwin wrote:
> > > > > > > No, it's beegfs.sys you install.
> > > > > > > SMB is not used, it uses its own protocol. If you do a
> > > > > > > FileRemoteProtocolInfo query the protocol field says it's a
> > > > > > > WNNC_NET_RDR2SAMPLE.
> > > > > >
> > > > > > Always nice when a driver doesn't change "sample" idenfiers.  It seems
> > > > > > Virtualbox shared folders also squats on this identifier.  I imagine
> > > > > > things don't go well if one attempts to install beegfs.sys on a virtualbox
> > > > > > virtual machine with their guest drivers installed...
> > > > >
> > > > > I think the problem is that no one in the OpenSource world really
> > > > > knows how to register new |WNNC_NET_*| keys. QEmu shared folders,
> > > > > DOKANY, ms-nfs41-client, etc. all use |WNNC_NET_RDR2SAMPLE| because
> > > > > the sample filesystem code uses that.
> > > >
> > > > So if ms-nfs41-client uses WNNC_NET_RDR2SAMPLE, we don't have to handle
> > > > these shares when checking the WNNC_NET_MS_NFS provider.  While it would
> > > > be nice if the nfs v4 driver would use some other WNNC type,
> > >
> > > Our plan is to get our own |WNNC_NET_*| key value if we can find the
> > > person at Microsoft which is maintaining that list (preferred key
> > > names would be |WNNC_NET_MSNFS41CLIENT| (for CITI's ms-nfs41-client)
> > > and |WNNC_NET_MSNFS42CLIENT| for our version.
> > >
> > > And at the same time maybe help DOKANY&co to get their own
> > > |WNNC_NET_*| key, too.
> > >
> > > > this is
> > > > at least helpful for handling WNNC_NET_MS_NFS shares, because they
> > > > have more than one quirk...
> > >
> > > I know... that's one reason we started working on the ms-nfs41-client
> > > project, and at the same time it's API being compatible with the
> > > MS-NFSv3 and the Exceed/OpenText-NFS drivers (that's why we support
> > > the "NfsV3Attributes" (incl. uid/gid), "NfsSymlinkTargetName",
> > > "NfsActOnLink" etc. Win32 extended attributes;
> > > https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-fscc/ff4df658-7f27-476a-8025-4074c0121eec
> > > is still on the ToDo list) - but also extend the functionality, e.g.
> > > support NFSv4.1 ACLs (mapped to Win32 ACLs via a script-driven
> > > idmapper), sparse file support (for HPC environments), and
> > > ms-nfs42-client will add AlternateDataStream support if the NFSv4.1
> > > server supports NFS "named attributes".
> >
> > I mentioned it months ago, and I mention it again:
> >
> > It would be really great if the filesystem name returned by
> > NtQueryVolumeInformationFile(FileFsAttributeInformation) would not be
> > "NFS", like the MS NFS, but something like "NFS4" or "NFSv4".  This
> > would allow Cygwin's fs_info::update() in mount.cc to recognize the
> > filesystem as something special, and the code could call either the
> > special NFS functions, or the Windows functions, or extra functions just
> > for NFSv4 as time goes by.
> 
> Well, that backfires because the same applications which want
> NfsV3Attributes also look at FILE_FS_ATTRIBUTE_INFORMATION
> FileSystemName, and STOP WORKING using NfsV3Attributes if it's not
> "NFS".
> From a driver's vendor position Exceed had that problem, OpenText
> inherited that problem, CITI had to do it on Microsoft's instructions
> (the CITI driver was a joint venture of SUN and Microsoft), and now
> Roland&Tigran&CERN&DESY have to do it too.

I wasn't aware there are other projects using the undocumented NFS
interfaces.  As far as Cygwin is concerned, it would be the simplest
thing to add a check for the "NFSv4" FS name and handle it accordingly.

OTOH, there are other ways to differ between MS NFS and NFSv4 in
fs_info::update(), for instance by checking the filesystem flags.

MS NFS only sets FILE_CASE_PRESERVED_NAMES to TRUE, but no other
flag.  Therefore, if we know the flags, or a minimal set of flags
NFSv4 sets, we can distinguish both NFS versions and ultimately add code
handling NFSv4 different from MS NFS where necessary or prudent in the
future.

For an example of handling filesystems using the same FS name differently,
see  for instance the MINIMAL_WIN_NTFS_FLAGS in mount.cc:

https://sourceware.org/cgit/newlib-cygwin/tree/winsup/cygwin/mount.cc#n391


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

- Raw text -


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