delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin-developers/2001/08/14/06:00:28

Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-developers-subscribe AT sources DOT redhat DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin-developers/>
List-Post: <mailto:cygwin-developers AT sources DOT redhat DOT com>
List-Help: <mailto:cygwin-developers-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-developers-owner AT sources DOT redhat DOT com
Delivered-To: mailing list cygwin-developers AT sources DOT redhat DOT com
Date: Tue, 14 Aug 2001 12:00:18 +0200
From: Corinna Vinschen <vinschen AT redhat DOT com>
To: cygwin-developers AT cygwin DOT com
Subject: Re: readonly, NTFS, and file metadata
Message-ID: <20010814120018.D17709@cygbert.vinschen.de>
Reply-To: cygdev <cygwin-developers AT cygwin DOT com>
Mail-Followup-To: cygwin-developers AT cygwin DOT com
References: <3B783E6E DOT 2546DF0 AT ece DOT gatech DOT edu>
Mime-Version: 1.0
User-Agent: Mutt/1.2.5i
In-Reply-To: <3B783E6E.2546DF0@ece.gatech.edu>; from cwilson@ece.gatech.edu on Mon, Aug 13, 2001 at 04:54:06PM -0400

On Mon, Aug 13, 2001 at 04:54:06PM -0400, Charles Wilson wrote:
> There is an ongoing thread on the automake list (started by yours truly,
> agent provocateur) concerning some strangeness I've encountered on
> NTFS(ntsec), with 'cp -p' and readonly files.  The URL for the beginning
> [...]
> What happens is this: first, foo is copied to bar, with perms
> -r--r--r--.  But, the timestamp is wrong.  Since cp was called with
> '-p', cp then tries to set the timestamp of bar to match foo.  But it
> can't on cygwin.  On linux, it can.
> 
> My suggestion to the automake list, which was to make foo be -rw-r--r--,
> was not well received.  The suggestion in return was: make cygwin act
> like linux.  I can't really argue against that, since that's been our
> stated goal anyway.
> 
> Does anybody know offhand what it would take to 'linux-ize' this
> behavior (e.g. would we have to take a performance hit?)  Do we want to
> be like linux in this particular? Also, please check the thread
> referenced above.

Check return code of SetFileTime(), check if ntsec ON and
file is on NTFS, get current ACL, modify to have write_data
access for current user, call SetFileTime() again, reset ACL.

The only problem is that we need a new function set which
_exactly_ saves and restores a given ACL and another function
which exactly adds write access to the current user. The
standard functions in security.cc are not appropriate.

I wouldn't think it's a big deal in terms of performance.
And if I have to choose between speed and correctness I
tend to vote for correctness.

OTOH, I don't have that much time currently,
Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Developer                                mailto:cygwin AT cygwin DOT com
Red Hat, Inc.

- Raw text -


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