X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-1.6 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,UNPARSEABLE_RELAY X-Spam-Check-By: sourceware.org X-Yahoo-SMTP: jenXL62swBAWhMTL3wnej93oaS0ClBQOAKs8jbEbx_o- Date: Tue, 26 Apr 2011 11:22:26 -0400 From: Christopher Faylor To: cygwin AT cygwin DOT com Subject: Re: untarring symlinks with ../ fails randomly Message-ID: <20110426152226.GA22801@ednor.casa.cgf.cx> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <20110424121145 DOT GB30696 AT calimero DOT vinschen DOT de> <20110426074325 DOT GP3324 AT calimero DOT vinschen DOT de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.20 (2009-06-14) Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On Tue, Apr 26, 2011 at 03:08:52PM +0000, Dan Grayson wrote: >(Re-posting yet again, didn't get through yesterday or today (?), this time >from a different account.) > > >Corinna, > >Debugging with gdb shows that "tar" is prepared for the possibility that >symbolic links don't work and that hard links will have to be used instead. >So, when it encounters a symbolic link, it creates a zero-length file with mode >0 as a placeholder, and it records the inode number of the new file. That way >it can wait until all the regular files have been created, and then replace the >placeholder by a symbolic link, or if that doesn't work, by a hard link to the >existing file. However, a tar file can contain multiple entries corresponding >to the same file name or path, so it may happen that the placeholder is no >longer present at the end, having been replaced by another file. Hence, it >will only replace the placeholder if the inode number and the creation time are >unchanged. But, under cygwin, the creation time may change gratuitously after >the creation of the file, at random! Cygwin doesn't change the creation time gratuitously. Sounds like BLODA to me. http://cygwin.com/acronyms/#BLODA cgf -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple