mc/vfs
Pavel Roskin 6b4f397f5b * Makefile.am: Compile utilvfs.c even without USE_VFS_NET.
* utilvfs.c (vfs_split_url): Only compile with USE_NETCODE
defined.
2003-10-29 07:19:25 +00:00
..
extfs * extfs/uzip.in: Fix error in parsing size of files over 9999999 2003-08-18 05:17:25 +00:00
samba * mcserv.c: Don't use HAVE_CRYPT from extraonf.h. 2003-10-25 22:37:08 +00:00
.cvsignore
ChangeLog * Makefile.am: Compile utilvfs.c even without USE_VFS_NET. 2003-10-29 07:19:25 +00:00
COPYING.LGPL
cpio.c * direntry.c (vfs_s_init_class): Improve interface to allow more 2003-10-28 07:09:39 +00:00
direntry.c * utilvfs.c (vfs_mkstemps): New function - create temporary file 2003-10-29 00:50:36 +00:00
extfs.c * utilvfs.c (vfs_mkstemps): New function - create temporary file 2003-10-29 00:50:36 +00:00
extfs.h * extfs.h: Remove "extfsstat" from struct archive - it's unused 2002-12-06 03:14:41 +00:00
fish.c * fish.c (fish_fh_open): Use vfs_mkstemps() for write buffers as 2003-10-29 01:35:36 +00:00
ftpfs.c * fish.c (fish_fh_open): Use vfs_mkstemps() for write buffers as 2003-10-29 01:35:36 +00:00
ftpfs.h
local.c * vfs.c (mc_ungetlocalcopy): Free local path here, not in class 2003-10-28 21:52:06 +00:00
local.h * vfs.h: Remove typedef vfs, it's too ambiguous. Massive 2003-10-12 00:24:00 +00:00
Makefile.am * Makefile.am: Compile utilvfs.c even without USE_VFS_NET. 2003-10-29 07:19:25 +00:00
mcfs.c * vfs.h: Constify some arguments for many functions. 2003-10-28 02:10:33 +00:00
mcfs.h
mcfsutil.c Minor warning fix. 2002-11-15 17:06:46 +00:00
mcfsutil.h
mcserv.c * mcserv.c: Don't use HAVE_CRYPT from extraonf.h. 2003-10-25 22:37:08 +00:00
README
README.fish Typos. 2003-06-02 19:47:30 +00:00
sfs.c * utilvfs.c (vfs_mkstemps): New function - create temporary file 2003-10-29 00:50:36 +00:00
smbfs.c * vfs.h: Constify some arguments for many functions. 2003-10-28 02:10:33 +00:00
smbfs.h
tar.c * direntry.c (vfs_s_init_class): Improve interface to allow more 2003-10-28 07:09:39 +00:00
tcputil.c
tcputil.h
undelfs.c * vfs.h: Constify some arguments for many functions. 2003-10-28 02:10:33 +00:00
utilvfs.c * Makefile.am: Compile utilvfs.c even without USE_VFS_NET. 2003-10-29 07:19:25 +00:00
utilvfs.h * utilvfs.c (vfs_mkstemps): New function - create temporary file 2003-10-29 00:50:36 +00:00
vfs.c * utilvfs.c (vfs_mkstemps): New function - create temporary file 2003-10-29 00:50:36 +00:00
vfs.h * vfs.c (mc_ungetlocalcopy): Free local path here, not in class 2003-10-28 21:52:06 +00:00
xdirentry.h * direntry.c (vfs_s_init_class): Improve interface to allow more 2003-10-28 07:09:39 +00:00

Hi!

I'm midnight commander's vfs layer. Before you start hacking me,
please read this file. I'm integral part of midnight commander, but I
try to go out and live my life myself as a shared library, too. That
means that I should try to use as little functions from midnight as
possible (so I'm tiny, nice and people like me), that I should not
pollute name space by unnecessary symbols (so I do not crash fellow
programs) and that I should have a clean interface between myself and
midnight.

Because I'm rather close to midnight, try to:

* Keep updating ChangeLog file.

* Keep the indentation as the rest of the code. Following could help
you with your friend emacs:

(defun mc-c-mode ()
	"C mode with adjusted defaults for use with the Midnight commander."
	(interactive)
	(c-mode)
	(c-set-style "K&R")
	(setq	c-indent-level 4
		c-continued-statement-offset 4
		c-brace-offset 0
		c-argdecl-indent 4
		c-label-offset -4
		c-brace-imaginary-offset 0
		c-continued-brace-offset 0
		c-tab-always-indent nil
		c-basic-offset 4
		tab-width 8
		comment-column 60))

(setq auto-mode-alist (cons '(".*/mc/.*\\.[ch]$" . mc-c-mode)
                       auto-mode-alist))

And because I'm trying to live life on my own as libvfs.so, try to:

* Make sure all exported symbols are defined in vfs.h and begin with
'vfs_'.

* Do not make any references from midnight into modules like tar. It
would probably pollute name space and midnight would depend on concrete
configuration of libvfs. mc_setctl() and mc_ctl() are your
friends. (And mine too :-).

							 Pavel Machek
							 pavel@ucw.cz

PS: If you'd like to use my features in whole operating system, you
might want to link me to rpc.nfsd. On
http://atrey.karlin.mff.cuni.cz/~pavel/podfuk/podfuk.html you'll find
how to do it.

PPS: I have a friend, shared library called avfs, which is LD_PRELOAD
capable. You can reach her at http://www.inf.bme.hu/~mszeredi/avfs.