Only in avfs: .arcs Only in avfs: avfs_0.9.8-6.diff.gz Only in avfs: avfs_0.9.8-6.dsc Only in avfs: avfs_0.9.8.orig.tar.gz diff -r -u avfs-0.9.8/avfscoda/redir/redir.c avfs/avfscoda/redir/redir.c --- avfs-0.9.8/avfscoda/redir/redir.c 2002-01-09 11:31:33.000000000 +0000 +++ avfs/avfscoda/redir/redir.c 2009-11-05 21:44:08.000000000 +0000 @@ -60,7 +60,7 @@ static execve_func orig_execve; #endif -#define AVFS_MAGIC_CHAR '#' +#define AVFS_MAGIC_CHAR '^' #define OVERLAY_DIR "/overlay" #define OVERLAY_DIR_LEN 8 diff -r -u avfs-0.9.8/ChangeLog avfs/ChangeLog --- avfs-0.9.8/ChangeLog 2007-05-31 19:38:39.000000000 +0000 +++ avfs/ChangeLog 2009-11-05 21:44:12.000000000 +0000 @@ -1,3 +1,7 @@ +2009-11-06 Sam Watkins + + * changed special char from '#' to '^' for web compatibility. + 2007-05-31 Ralf Hoffmann * configure.in: diff -r -u avfs-0.9.8/debian/changelog avfs/debian/changelog --- avfs-0.9.8/debian/changelog 2009-11-05 21:40:08.000000000 +0000 +++ avfs/debian/changelog 2009-11-05 21:44:16.000000000 +0000 @@ -1,3 +1,9 @@ +avfs (0.9.8-6+sam) unstable; urgency=high + + * changed special char from '#' to '^' for web compatibility. + + -- Sam Watkins Fri, 06 Nov 2009 07:59:02 +1100 + avfs (0.9.8-6) unstable; urgency=high * Added dependency to fuse-utils, closes: #509658 diff -r -u avfs-0.9.8/doc/background avfs/doc/background --- avfs-0.9.8/doc/background 2003-04-14 10:14:06.000000000 +0000 +++ avfs/doc/background 2009-11-05 21:44:18.000000000 +0000 @@ -127,9 +127,9 @@ - unlike avfs, treats 'stackable' modules like 'tar' separately from root modules like 'ftp'; protocols such as ftp, http, smb are specified in URI's, while stackable tar, gzip are invoked with the -familiar '#'. +familiar '^'. -Example: "http://server/path/to/file.tar#tar/path/to/file.gz#gzip" in +Example: "http://server/path/to/file.tar^tar/path/to/file.gz^gzip" in gnome-vfs would be "/#http:server|path|to|file.tar#utar/path/to/file.gz#ugz" in avfs diff -r -u avfs-0.9.8/doc/FORMAT avfs/doc/FORMAT --- avfs-0.9.8/doc/FORMAT 2003-04-14 10:14:06.000000000 +0000 +++ avfs/doc/FORMAT 2009-11-05 21:44:20.000000000 +0000 @@ -3,12 +3,12 @@ The canonical form ================== - [basepath]#handler[options][:parameters][/internalpath] + [basepath]^handler[options][:parameters][/internalpath] 'basepath', if given is an ordinary file path (can be a regular file, or a directory, and can be a real or a virtual path). -'#' is the character that prefixes the handler name and is +'^' is the character that prefixes the handler name and is defined by VDEV_SEP_CHAR. 'handler' is the name of the file handler (filter, remote file @@ -30,12 +30,12 @@ Notes: - The only special characters are '#' and '/'. + The only special characters are '^' and '/'. - If an ordinary (non virtual) file name contains a '#', then this + If an ordinary (non virtual) file name contains a '^', then this file can be accessed normaly (i.e. existing files take - precedence over virtual ones). If a virtual path contains '#' - (even in the real path part) they must be represented by '##'. + precedence over virtual ones). If a virtual path contains '^' + (even in the real path part) they must be represented by '^^'. (This way a situation can arrise, where you can't access a virtual file, because a real file 'shadows' it. This is a case @@ -43,25 +43,25 @@ Examples (not all of these are implemented yet): - /home/user/archive.tar.gz#ugz#utar/path/file - /#ftp:host.dom.org/pub/README - /#http:www.dom.org|some|where|index.html - /#http:localhost:8000|~user|file - file#gz-9 - /#floppy:a/xyz + /home/user/archive.tar.gz^ugz^utar/path/file + /^ftp:host.dom.org/pub/README + /^http:www.dom.org|some|where|index.html + /^http:localhost:8000|~user|file + file^gz-9 + /^floppy:a/xyz The non-canonical virtual paths =============================== This is to make life easier for the user. - dir/file.ext#[/extrapath] + dir/file.ext^[/extrapath] -With this notation, the '#' is substituted with the handler(s) -determined from the file's extension. Any parameters after the # are +With this notation, the '^' is substituted with the handler(s) +determined from the file's extension. Any parameters after the ^ are passed to the last expanded handler. Examples: - file.gz# == file.gz#ugz - archive.tar.gz#/dir == archive.tar.gz#ugz#utar/dir - archive.tar.gz#+/dir == archive.tar.gz#ugz#utar+/dir + file.gz^ == file.gz^ugz + archive.tar.gz^/dir == archive.tar.gz^ugz^utar/dir + archive.tar.gz^+/dir == archive.tar.gz^ugz^utar+/dir Only in avfs: .git diff -r -u avfs-0.9.8/glassfs/glassfs.c avfs/glassfs/glassfs.c --- avfs-0.9.8/glassfs/glassfs.c 2004-04-05 15:03:25.000000000 +0000 +++ avfs/glassfs/glassfs.c 2009-11-05 21:44:24.000000000 +0000 @@ -12,7 +12,7 @@ #define GLASSFS_MAGIC 0x28476c61 #define FUSE_MAGIC 0x65735546 -#define AVFS_MAGIC_CHAR '#' +#define AVFS_MAGIC_CHAR '^' #define OVERLAY_DIR "/overlay" #define OVERLAY_DIR_LEN 8 diff -r -u avfs-0.9.8/glassfs/redir2.c avfs/glassfs/redir2.c --- avfs-0.9.8/glassfs/redir2.c 2004-05-21 10:32:29.000000000 +0000 +++ avfs/glassfs/redir2.c 2009-11-05 21:44:27.000000000 +0000 @@ -9,7 +9,7 @@ #define REDIR2_VERSION "0.0" -#define AVFS_MAGIC_CHAR '#' +#define AVFS_MAGIC_CHAR '^' #define OVERLAY_DIR "/overlay" #define OVERLAY_DIR_LEN 8 diff -r -u avfs-0.9.8/include/internal.h avfs/include/internal.h --- avfs-0.9.8/include/internal.h 2006-04-05 17:19:08.000000000 +0000 +++ avfs/include/internal.h 2009-11-05 21:44:30.000000000 +0000 @@ -9,8 +9,8 @@ #include "avfs.h" #include "state.h" -#define AVFS_SEP_CHAR '#' -#define AVFS_SEP_STR "#" +#define AVFS_SEP_CHAR '^' +#define AVFS_SEP_STR "^" #define AVFS_LOCK(avfs) if(!(avfs->flags & AVF_NOLOCK)) AV_LOCK(avfs->lock) #define AVFS_UNLOCK(avfs) if(!(avfs->flags & AVF_NOLOCK)) AV_UNLOCK(avfs->lock) diff -r -u avfs-0.9.8/modules/extfs.c avfs/modules/extfs.c --- avfs-0.9.8/modules/extfs.c 2007-05-07 19:35:38.000000000 +0000 +++ avfs/modules/extfs.c 2009-11-05 21:44:33.000000000 +0000 @@ -232,7 +232,7 @@ if(enod == NULL) { /* no extfsnode means someone tries to access the extfs - archive as a file (e.g. open( "test.lha#" ) ) + archive as a file (e.g. open( "test.lha^" ) ) Although open on a directory is not forbidden we cannot create an appropriate tmpfile so we return EISDIR */ return -EISDIR; Only in avfs/modules: extfs.c.orig Only in avfs/modules: extfs.c.rej diff -r -u avfs-0.9.8/modules/uar.c avfs/modules/uar.c --- avfs-0.9.8/modules/uar.c 2001-05-15 17:56:44.000000000 +0000 +++ avfs/modules/uar.c 2009-11-05 21:44:35.000000000 +0000 @@ -222,7 +222,7 @@ strncmp(name, "ARFILENAMES/ ", 16) == 0)) return read_longnames(vf, arv, nt); - if(name[0] == '#' && name[1] == '1' && name[2] == '/' && + if(name[0] == '#' && name[1] == '1' && name[2] == '/' && /* SHOULD THIS # BE CHANGED? */ name[3] >= '0' && name[3] <= '9') return read_bsd_longname(vf, arch, arv, name); diff -r -u avfs-0.9.8/preload/utils.c avfs/preload/utils.c --- avfs-0.9.8/preload/utils.c 2001-05-11 17:29:01.000000000 +0000 +++ avfs/preload/utils.c 2009-11-05 21:44:39.000000000 +0000 @@ -11,7 +11,7 @@ #include #include -#define VDEV_SEP_CHAR '#' +#define VDEV_SEP_CHAR '^' struct fileinfo __av_dtable[AVFS_DTABLE_SIZE]; char __av_cwd[PATHBUF_LEN]; diff -r -u avfs-0.9.8/README avfs/README --- avfs-0.9.8/README 2007-05-07 19:35:38.000000000 +0000 +++ avfs/README 2009-11-05 21:44:41.000000000 +0000 @@ -73,20 +73,20 @@ Listing a tar archive: - ls -l avfs-0.9.1.tgz#/ - ls -l avfs-0.9.1.tgz#/avfs-0.9.1/ + ls -l avfs-0.9.1.tgz^/ + ls -l avfs-0.9.1.tgz^/avfs-0.9.1/ Obtaining information about avfs itself: - cat /#avfsstat/copyright - prints copyright information and version - cat /#avfsstat/modules - lists available handlers - cat /#avfsstat/version - prints version information + cat /^avfsstat/copyright - prints copyright information and version + cat /^avfsstat/modules - lists available handlers + cat /^avfsstat/version - prints version information 'cd' into an archive: (For the 'preload' method the shell itself must be started with avfs) - cd avfs-0.9.1.tgz#/ + cd avfs-0.9.1.tgz^/ less avfs-0.9.1/README Some more examples: (these are all shell commands, but of course you @@ -94,16 +94,16 @@ Unpacking an archive: - cp -a tarfile.tgz#/dir . - cp -a zipfile.zip#/* . + cp -a tarfile.tgz^/dir . + cp -a zipfile.zip^/* . (For the 'preload' method, using '*' means that the shell must be started with AVFS) Creating an archive: - mkdir tarfile.tgz#+ - cp -a dir tarfile.tgz#+/ + mkdir tarfile.tgz^+ + cp -a dir tarfile.tgz^+/ Note: The efficiency of this method is not yet the same as the 'normal' archive creation method, but it should not be more than 2 @@ -117,10 +117,10 @@ with the 'avfscoda' method. E.g. you can't do - patch -p0 < patchfile.gz# + patch -p0 < patchfile.gz^ only - cat patchfile.gz# | patch -p0 + cat patchfile.gz^ | patch -p0 If something doesn't work, then check the section 'Common Problems'. @@ -131,11 +131,11 @@ (For a full explanation of the format see the file FORMAT) -As you've seen, the '#' magic character makes a virtual file or +As you've seen, the '^' magic character makes a virtual file or directory from an ordinary file. Actually this is just a shorthand for the full specification of an AVFS path: - 'tarfile.tgz#' is the same as 'tarfile.tgz#ugz#utar' + 'tarfile.tgz^' is the same as 'tarfile.tgz^ugz^utar' Note, the short version will only work if the file-extension is recognized (most are), but you can always tell exactly what should be @@ -147,54 +147,54 @@ Examples - /#floppy:a - a: drive - /#a - a: drive (alias for /#floppy:a) - /#rsh:otherhost/foo/bar - /foo/bar on 'otherhost' - /#ssh:user@host/dir - /dir on 'host', login as 'user' - /#ftp:ftp.funet.fi/pub/Linux - anonymous ftp - /#ftp:user@host.domain.org/home/xyz/file - ftp with username 'user' - /#ftp_ctl:user@host.domain.org/password - write the password to this file + /^floppy:a - a: drive + /^a - a: drive (alias for /^floppy:a) + /^rsh:otherhost/foo/bar - /foo/bar on 'otherhost' + /^ssh:user@host/dir - /dir on 'host', login as 'user' + /^ftp:ftp.funet.fi/pub/Linux - anonymous ftp + /^ftp:user@host.domain.org/home/xyz/file - ftp with username 'user' + /^ftp_ctl:user@host.domain.org/password - write the password to this file (ftppass is a nice utility for this) - /#http:www.inf.bme.hu|~mszeredi|avfs| - homepage of AVFS - /#http:ftp:||ftp.funet.fi|pub|Linux - use HTTP to get an ftp URL + /^http:www.inf.bme.hu|~mszeredi|avfs| - homepage of AVFS + /^http:ftp:||ftp.funet.fi|pub|Linux - use HTTP to get an ftp URL (useful if you use a HTTP-only proxy) The environment variable 'http_proxy' is used to set the default value of the proxy server. You can also set it's value by writing to the file - /#avfsstat/http_proxy + /^avfsstat/http_proxy The following "handlers" are available now: name of handler type of operation notes --------------- ----------------- ----- - #a first floppy drive alias for #floppy:a - #avfsstat meta information builtin - #bz2 bzip2 uses bzip2 - #dav webdav builtin - #dav_ctl control dav sessions - #floppy floppy uses mtools (mdir, mcopy, ...) - #ftp ftp builtin - #ftp_ctl control ftp sessions - #gz gzip uses gzip - #iso9660 CD/DVD filesystem no need to use mount -t iso9660! - #local local filesysem only for internal use - #rsh rsh/rcp only works if rsh needs no password - #ssh ssh/scp only works if ssh needs no password - #uar un-ar builtin - #ubz2 bunzip2 builtin - #ubzip2 bunzip2 uses bzip2 - #ugz gunzip builtin (1) - #ugzip gunzip uses gzip - #urar unrar builtin list + uses rar to extract - #utar untar builtin - #uz uncompress uses gzip - #uzip unzip builtin - #volatile 'memory fs' mainly for testing + ^a first floppy drive alias for ^floppy:a + ^avfsstat meta information builtin + ^bz2 bzip2 uses bzip2 + ^dav webdav builtin + ^dav_ctl control dav sessions + ^floppy floppy uses mtools (mdir, mcopy, ...) + ^ftp ftp builtin + ^ftp_ctl control ftp sessions + ^gz gzip uses gzip + ^iso9660 CD/DVD filesystem no need to use mount -t iso9660! + ^local local filesysem only for internal use + ^rsh rsh/rcp only works if rsh needs no password + ^ssh ssh/scp only works if ssh needs no password + ^uar un-ar builtin + ^ubz2 bunzip2 builtin + ^ubzip2 bunzip2 uses bzip2 + ^ugz gunzip builtin (1) + ^ugzip gunzip uses gzip + ^urar unrar builtin list + uses rar to extract + ^utar untar builtin + ^uz uncompress uses gzip + ^uzip unzip builtin + ^volatile 'memory fs' mainly for testing -(1) With the '-s' option (blala.gz#-s) the gunzip module will use the +(1) With the '-s' option (blala.gz^-s) the gunzip module will use the size stored at the end of the gzip file. This will make some operations on a .gz file much faster, but it isn't usable for huge (>=4GByte) files, since the size is stored in 32 bits :(. @@ -206,18 +206,18 @@ name of handler type of operation --------------- ----------------- - #deb debian packages - #ftplist ? - #hp48 ? - #lslR directory tree listings - #mailfs ? - #patchfs browse patch files - #rpm rpm packages - #rpms List of installed rpms - #trpm Useful inside #rpms - #ucpio cpio archives - #ulha lha archives - #uzoo zoo archives + ^deb debian packages + ^ftplist ? + ^hp48 ? + ^lslR directory tree listings + ^mailfs ? + ^patchfs browse patch files + ^rpm rpm packages + ^rpms List of installed rpms + ^trpm Useful inside ^rpms + ^ucpio cpio archives + ^ulha lha archives + ^uzoo zoo archives Writing new modules