delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2002/08/01/17:19:53

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
X-Authentication-Warning: slinky.cs.nyu.edu: pechtcha owned process doing -bs
Date: Thu, 1 Aug 2002 17:19:47 -0400 (EDT)
From: Igor Pechtchanski <pechtcha AT cs DOT nyu DOT edu>
Reply-To: cygwin AT cygwin DOT com
To: cygwin AT cygwin DOT com
Subject: Re: bug: hard links to soft links do not work
In-Reply-To: <sa0it2ul488.fsf@glip.premonitia.com>
Message-ID: <Pine.GSO.4.44.0208011717210.3395-100000@slinky.cs.nyu.edu>
MIME-Version: 1.0

On 1 Aug 2002, Sam Steingold wrote:

> > * In message <20020801200325 DOT GC27689 AT redhat DOT com>
> > * On the subject of "Re: bug: hard links to soft links do not work"
> > * Sent on Thu, 1 Aug 2002 16:03:25 -0400
> > * Honorable Christopher Faylor <cgf AT redhat DOT com> writes:
> >
> > I don't think this is a 'ln' problem.  It's a cygwin problem.  If
> > cygwin is doing the wrong thing then it should, as Sam said, either be
> > made to work or fail, not provide binary gobbledegook.
> >
> > If this was to be made to work correctly, it would be pretty low level
> > in cygwin in the path_conv and symlink_check methods.
> >
> > It would be much easier to fail in this scenario rather than make it
> > work correctly, I think.
>
> actually, this is very easy:
>
> (defmethod hard-link :around (from to)
>   (if (symbolic-link-p to)
>       (symbolic-link from (resolve-symbolic-link to))
>       (call-next-method)))
>
> i.e., when the target is a symlink, you symlink to its target.
>
> think of a symlink as if it had no inode (like it is on a real FS),
> i.e., just a special dirent pointing to the target.
> Then the hardlink of a symlink is another symlink pointing to the same
> place, since the nature of hardlink is to create a file which is
> indistinguishable from the target.

Sam,
The nature of a hardlink is actually slightly more than that.  I think the
inodes of the hardlink and the real file have to be the same.  This won't
happen if you just create a new symbolic link.
	Igor
-- 
				http://cs.nyu.edu/~pechtcha/
      |\      _,,,---,,_		pechtcha AT cs DOT nyu DOT edu
ZZZzz /,`.-'`'    -.  ;-;;,_		igor AT watson DOT ibm DOT com
     |,4-  ) )-,_. ,\ (  `'-'		Igor Pechtchanski
    '---''(_/--'  `-'\_) fL	a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!

It took the computational power of three Commodore 64s to fly to the moon.
It takes a 486 to run Windows 95.  Something is wrong here. -- SC sig file


--
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/

- Raw text -


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