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)


On Mon, Sep 24, 2001 at 07:36:07PM +1000, Robert Collins wrote:
> From: "Corinna Vinschen" <cygwin@cygwin.com>
> > 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.

We could simulate /dev through the fhandler, though.  Assuming
we already have a fhandler_devfs, its opendir()/readdir() could
begin with listing the real /dev directory if and as it exists.
When finished, it could go ahead with listing the internal
Cygwin devices.  The `stat' call itself isn't concerned at all
by this approach.  It would work as before.  A good idea would
just be to create a /dev by setup to have the real directory
node to be able to list . and .. w/o handstands.  And we don't
have to worry about the order since that's done by ls.

> > 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 :}?

Yes and no.

- Yes, this is a `not in 1.3.4' kinda thing since 1.3.4 should
  be a bug fix release as you know.

- No for 1.3.5.
  
- Another yes due to our long term devlopment target to substitute
  the fhandler classes by device and file system classes.  But that
  will take much time so we can neglect that for now.

> (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?)

Yup, more or less,  but with a copy to _base.

Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Developer                                mailto:cygwin@cygwin.com
Red Hat, Inc.

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