This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: [PATCH] ls & "magic" cygdrive dir (was: RE: cygdrive stuff)


----- Original Message -----
From: "Corinna Vinschen" <cygwin@cygwin.com>
To: <cygwin@cygwin.com>
Sent: Monday, September 24, 2001 7:18 PM
Subject: Re: [PATCH] ls & "magic" cygdrive dir (was: RE: cygdrive stuff)


> On Mon, Sep 24, 2001 at 01:13:15PM +1000, Robert Collins wrote:
> > * create the cygdrive fhandler class.
> > * create the devfs fhandler class.
> > * Alter setup.exe to add the new default mount point registry
entries
> > (for /cygdrive and /dev).
>
> I think it's a bit more tricky.  /dev is a wonderful example.
> By default it contains only device entries:
>
> /dev/tty
> /dev/st0
> ...
>
> which you could nicely support by a dev fhandler.  The problem
> is that I wouldn't like to disallow to create symlinks inside of
> /dev:
>
> ln -s /dev/st0 /dev/tape
>
> So /dev is kinda `bastard' containing virtual device entries
> but also real symlinks.

Ahh, well, there are two approaches there. 1 is what I described. A
second one is to mount each device separately at it's appropiate point,
and have a real /dev directory.

IMO if you want full fs at /dev, then you should create it. AFAIK the
linux devfs is readonly, with the exception of adding nodes when devices
are detected at runtime.

> In that case it would make sense to support reading the real
> /dev in the Cygwin tree on disk plus listing all virtual
> device entries.  Sure, you could manage that in the dev fhandler...
>
> I think that you'll have some work to implement that due to a
> design constraint inside of Cygwin.  In theory the functionality
> of stat/readdir etc. has to be moved inside of the fhandlers
> first.  While that already works for stat on disk files it's
> currently not implemented for readdir at all.

Ok, well that makes sense. Any objection to it being done :}?

(It should be a matter of moving the existing code to fhandler_disk,
with a copy to _raw and creating a couple of wrapper calls similar to
stat(), followed up with a virtual method in fhandler_base shouldn't
it?)

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/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]