DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 50MHH8mL3367283 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 50MHH8mL3367283 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=Alvz+7E3 X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 8C42A3857810 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1737566227; bh=qkNSV5S9V6tWeeout2qMIUuI6n7IpOab7vIqxgyoJfI=; 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=Alvz+7E3fjn+A2k+ZXlh7oskjuMA4cHwC5JjCiTJi9Ql6GJKzp7qTn+8fA82l9CbR 33qLh5B7mgDSzr/pjy2NqFefxQzwz29uoXiKuJIUvw8Vd+zV6+rIQ1DZDddFId758+ Zm8UpvhfIPrTJ93HRijcBtNkhOXPfloIhuCr8wI0= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org D69F13858C5F Date: Wed, 22 Jan 2025 18:16:41 +0100 To: cygwin AT cygwin DOT com Subject: Re: Handing filesystems which do not support some timestamp fields in |FILE_BASIC_INFO| and Microsoft NFSv3 driver "NfsV3Attributes" EA ... Message-ID: Mail-Followup-To: cygwin AT cygwin DOT com References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.30 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Corinna Vinschen via Cygwin Reply-To: cygwin AT cygwin DOT com Cc: Corinna Vinschen Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com Sender: "Cygwin" On Jan 22 00:37, Roland Mainz via Cygwin wrote: > Hi! > > ---- > > If a Windows filesystem does not support a type of timestamp it sets > the matching timestamp field in |FILE_BASIC_INFO| to |0LL| (e.g. see > Windows-driver-samples/filesys/cdfs/fileinfo.c: > |Buffer->LastAccessTime.QuadPart = 0| ; typically this can affect > |FILE_BASIC_INFO.CreationTime| and/or > |FILE_BASIC_INFO.LastAccessTime|, but formally any combination of > timestamp fields can be unsupported(==|0LL|)), and the Microsoft NFSv3 > driver sets the matching > |nfs_timestruc_t.tv_sec|+|nfs_timestruc_t.tv_nsec| to a negative value > (traditional UNIX uses -1, see > https://github.com/gagern/gnulib/blob/master/lib/stat-time.h#L173 - > and this value is then propagated via NFS), but I can't find a place > in Cygwin where this is explicitly handled - is this missing, or is > this code handling this somehow implicitly ? Implicitely... https://sourceware.org/cgit/newlib-cygwin/tree/winsup/cygwin/times.cc#n293 ...except for ChangeTime: https://sourceware.org/cgit/newlib-cygwin/tree/winsup/cygwin/fhandler/disk_file.cc#n406 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