Marcus Brinkmann <[EMAIL PROTECTED]> writes: > On Sat, Jan 19, 2002 at 11:35:46AM -0800, Justin Langer wrote: > > What can be its possible application? > > You could access the web with all tools, including your shell. Instead > running wget, you could just try to use cp, for example.
This httpfs discussion made me think some more about one of my wouldn't-it-be-nice-to-have wishes for the Hurd. Sorry to bore you with it again, but I can't help myself. ;-) You have been warned... I want property lists on inodes. Even if it isn't supported at all by major filesystems like ext2, it would still be very good to have a standard interface to properties for filesystems where it makes sense. Some obvious applications: * content-type property, useful for web stuff and perhaps also by local applications. The httpfs translator would attach a content-type property to it's files, from the http-header. Other http stuff may also make sense to put into properties. And on the server side, setting the content-type property on a file would be a nice way to override the web-serve'rs default file extension->MIME mapping. * Various acl:s and metadata on foreign filesystems. If I mount a filesystem that includes meta information and features beyond what posix or the hurd supports, that information can be made available as properties. I see no other clean alternative way to provide access to such information. * Versioning filesystems, or a cvs aware filesystem. Adding properties is a simple matter of adding a few more rpc calls to the file interface. What would be even cooler is to be able to provide a list of properties when *opening* a file. The filesystem would then find data matching the properties. For instance, the httpfs translator could put such properties into forms variables and/or cookies. A versioning filesystem could recognize a version number-property. A cvs filesystem could recognize a branch tag property. I'm sure one could do interesting things with it. Regarding versioning filesystems, I'm not sure what the best interface is like. Putting information like "~1.17~" at the end of the filename seems a little ugly. Perhaps each versioned file could also be a directory? "cat foo.c" gives the latest version of foo.c. "ls foo.c" lists available versions, "cat foo.c/17" gives version 17. Best regards, /Niels

