Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , 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 To: cygwin-developers AT cygwin DOT com Subject: Re: readonly, NTFS, and file metadata Message-ID: <20010814120018.D17709@cygbert.vinschen.de> Reply-To: cygdev Mail-Followup-To: cygwin-developers AT cygwin DOT com References: <3B783E6E DOT 2546DF0 AT ece DOT gatech DOT edu> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline 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.