delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2025/04/03/17:29:27

DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 533LTRoI3573531
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 533LTRoI3573531
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=E5EcvuQ5
X-Recipient: archive-cygwin AT delorie DOT com
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 67277384A442
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com;
s=default; t=1743715764;
bh=/EBrc5fFcMX52hlsOlSkHMx4bpG+f4m/LOR91wdoKyA=;
h=Date:To:cc:Subject:In-Reply-To:References:List-Id:
List-Unsubscribe:List-Archive:List-Post:List-Help:List-Subscribe:
From:Reply-To:From;
b=E5EcvuQ5nvmGcK9EA+uRSRYRiHVhiS6q2rPit5xSyuMRHWVnz+TowJL+fbHWjgdin
8oi32+cTP0hXq0aaitQMBH6z6BvBC3XZzWhy6EorqA+gEcJSkkjxdGCO+WXEX/7TuY
SqO8SNYqy3DT2VURxKYLrk4HRYcwJ8bAZsGI1QFI=
X-Original-To: cygwin AT cygwin DOT com
Delivered-To: cygwin AT cygwin DOT com
DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8F9143858D1E
ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8F9143858D1E
ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1743715698; cv=none;
b=KRjV6HTm548OHA274tW3pWK+1KE02uVfh3qA/qYyTTAFM9Lr5LNxFuiwM8nxfmLy9gGZJlnbeOUDPTHrDPoyV+GzoL0hACB+3npTmqtjHRvOIad0vVaeOdKFQIcl8lPVeBlJAn0qf9wnhdB7YCG9Ox6mMIZbZCI5B2nczUumcTQ=
ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key;
t=1743715698; c=relaxed/simple;
bh=t2REke4IAjHELPkUqLwHO3ZxiH63wtVwa5s924ZrBH4=;
h=DKIM-Signature:Date:From:To:Subject:Message-ID:MIME-Version;
b=d4o0pz0gYFGbAz+r4b/hcZfJccNK/FZM71tqGfzepmup5xMEut998rXoVQHvSUilc0KVdtkzTQDQmg7RVGA78cOcL9r7IXhlVZl3CQaLK23ZEla5uOpOwpB9emimmi15iHeqxGVGkj+47Us8btFYC3IEfp2uwpXJh7NWkX6t3ak=
ARC-Authentication-Results: i=1; server2.sourceware.org
DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 8F9143858D1E
Date: Thu, 3 Apr 2025 14:28:17 -0700 (PDT)
X-X-Sender: jeremyd AT resin DOT csoft DOT net
To: cygwin AT cygwin DOT com
cc: Ms-nfs41-client-devel AT lists DOT sourceforge DOT net
Subject: Re: Windows Remote Driver Identification Re: Cygwin wishlist for
NFSv4.2 driver?
In-Reply-To: <CALXu0UfWK6MMe9CFBD547YYyqke=fNKoK3-TvGeJmaVo=HqiwA@mail.gmail.com>
Message-ID: <58d781a4-922f-d795-2396-688c2ac0e6d9@jdrake.com>
References: <CALXu0UfWK6MMe9CFBD547YYyqke=fNKoK3-TvGeJmaVo=HqiwA 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>
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 Wed, 2 Apr 2025, Cedric Blancher via Cygwin wrote:

> On Tue, 1 Apr 2025 at 13:54, Corinna Vinschen via Cygwin
> <cygwin AT cygwin DOT com> wrote:
> > No, but if we want to *better* support this driver, we need either a
> > patch (preferred) or at least info how to distinguish in
> > fs_info::update(*) between the MSFT driver and the NFSv4.2 driver.
>
> That is actually easy: Roland implemented support for
> FileRemoteProtocolInformation in
> https://github.com/kofemann/ms-nfs41-client/commit/e9f72b61494bebd9e26fefec2659a4511a05b0fd
>  , and the FILE_REMOTE_PROTOCOL_INFORMATION->Protocol field can be
> used to identify the type of driver.
>
> Examples:
> Windows NFSv3 driver uses WNNC_NET_MS_NFS,
> OpenAFS uses WNNC_NET_OPENAFS, ms-nfs41-client uses
> WNNC_NET_RDR2SAMPLE, and OpenText NFS also uses WNNC_NET_RDR2SAMPLE.
>
> Plan for ms-nfs42-client is to obtain an own WNNC_NET_MSNFS42CLIENT
> tag, and also tags for DOKANY.

I thought using WNNC to identify was brought up before and rejected.  At
this point, it's querying *volume* information, and has a volume handle.
It looks like you get FileRemoteProtocolInformation by querying a *file*
handle.  I could be wrong, and maybe that handle can be queried for
FileRemoteProtocolInformation, but it's not like that returns a unique
identifier either.

What I'm seeing of the things that come through volume information:
FileSystemName is either NFS or DEBUG-NFS41 (the latter at least looks
unique, if not intended for public consumption).  The VolumeLabel is
PnfsVolume, the VolumeSerialNumber is always 0xBABAFACE (that's got to
suck for the "unique per-drive/share hash" mentioned in mount.cc), the
flags are set in
https://github.com/kofemann/ms-nfs41-client/blob/bf8d343ba2465926f3bfafa8407a69e79649cf46/daemon/nfs41_superblock.c#L173

What stands out to me in the flags is that they include
FILE_SUPPORTS_REMOTE_STORAGE.  I'm not sure what that's supposed to
mean, above and beyond FILE_REMOTE_DEVICE.  MS NFS only seems to set
FILE_CASE_PRESERVED_NAMES (2), so the existing flag song-and-dance could
probably be extended to tell the difference here.

They're also always setting
SSINFO_FLAGS_ALIGNED_DEVICE|SSINFO_FLAGS_PARTITION_ALIGNED_ON_DEVIVE|
SSINFO_FLAGS_NO_SEEK_PENALTY.

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