delorie.com/archives/browse.cgi | search |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
List-Archive: | <http://sources.redhat.com/ml/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs> |
Sender: | cygwin-owner AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
Delivered-To: | mailing list cygwin AT cygwin DOT com |
content-class: | urn:content-classes:message |
MIME-Version: | 1.0 |
Subject: | RE: REPOST: unlink semantics |
Date: | Wed, 10 Apr 2002 22:20:04 +1000 |
X-MimeOLE: | Produced By Microsoft Exchange V6.0.5762.3 |
Message-ID: | <FC169E059D1A0442A04C40F86D9BA76008ACAC@itdomain003.itdomain.net.au> |
X-MS-Has-Attach: | |
X-MS-TNEF-Correlator: | |
From: | "Robert Collins" <robert DOT collins AT itdomain DOT com DOT au> |
To: | "Chris January" <chris AT atomice DOT net>, <cygwin AT cygwin DOT com> |
X-MIME-Autoconverted: | from quoted-printable to 8bit by delorie.com id g3ACL6o23579 |
> -----Original Message----- > From: Chris January [mailto:chris AT atomice DOT net] > Sent: Wednesday, April 10, 2002 9:57 PM > To: cygwin AT cygwin DOT com > Subject: REPOST: unlink semantics > > > With respect to the 'Infinte Loop in "rm -fr"' thread, I > believe the current semantics of unlink on Cygwin to be > inconsistent with SuSv2. > > SuSv2 specifies the following: SuS assumes files can be removed/deleted while in use. > Cygwin's current implementation of unlink is not consistent > with the following part: "If one or more processes have the > file open when the last link is removed, the link will be > removed before unlink() returns, but the removal of the file > contents will be postponed until all references to the file > are closed." At present Cygwin delays not only the removal of > the file contents, but also the removal of the link (i.e. the > directory entry). Patches to correct this gratefully accepted. Don't forget to test on win9x and NT4. Also be sure to test what happens when you delete a .dll out from under a program on win9x. > As a suggested fix, path_conv::check could > returns ENOENT for a file if it appears in the delqueue. This introduces it's own problems: what happens when the application then tries to create a new file with that file name? Do we give it a random temporary name? What happens when the app then calls a non-cygwin program with the file name.... oops! Anyway, food for thought. Rob -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |