mc/vfs
2002-11-06 20:10:21 +00:00
..
extfs * */Makefile.am: Replace mclibdir with pkgdatadir to use "share" 2002-09-21 23:49:52 +00:00
samba (string_initial): Commented out. 2002-10-03 17:00:23 +00:00
.cvsignore
ChangeLog s/shue/sure/ 2002-11-06 20:10:21 +00:00
COPYING.LGPL
cpio.c s/suplied/supplied/ 2002-09-27 00:17:10 +00:00
direntry.c * direntry.c (vfs_s_resolve_symlink): Use g_snprintf() instead 2002-10-07 05:32:45 +00:00
extfs.c Remove dead code. 2002-11-03 09:27:08 +00:00
extfs.h * extfs.h: Move private structures ... 2001-08-07 23:54:35 +00:00
fish.c * fish.c: Use name_quote() to quote filenames. 2002-11-01 16:55:02 +00:00
fish.h
ftpfs.c Comment change. 2002-11-02 16:58:18 +00:00
ftpfs.h Global removal of RCS Id: flags. 2002-09-26 23:13:45 +00:00
local.c Move fcntl.h inclusion to global.h. 2002-09-23 06:45:32 +00:00
local.h
Makefile.am * tcputil.c: Split mcfs-specific part to 2002-10-05 01:02:07 +00:00
mcfs.c Reuse existing button names. 2002-10-21 21:56:20 +00:00
mcfs.h
mcfsutil.c * tcputil.c: Split mcfs-specific part to 2002-10-05 01:02:07 +00:00
mcfsutil.h Comment change. 2002-10-05 01:54:20 +00:00
mcserv.c * tcputil.c: Split mcfs-specific part to 2002-10-05 01:02:07 +00:00
names.c * names.c (finduname): Don't use HAVE_GETPWUID - it's never 2001-08-24 02:51:40 +00:00
names.h
README
README.fish * README.fish: Spelling fixes. 2001-07-05 15:05:23 +00:00
sfs.c * sfs.c (vfmake): Use open_error_pipe() and close_error_pipe(). 2002-10-04 13:24:10 +00:00
smbfs.c * smbfs.c (fake_share_stat): Make sure share exists by 2002-10-11 15:29:55 +00:00
smbfs.h Declare smbfs_set_debugf(). 2002-09-13 10:00:23 +00:00
tar.c * ftpfs.c: Replace bzero and bcopy with memset and memcpy. 2002-07-15 05:31:43 +00:00
tar.h
tcputil.c * tcputil.c: Split mcfs-specific part to 2002-10-05 01:02:07 +00:00
tcputil.h * tcputil.c: Split mcfs-specific part to 2002-10-05 01:02:07 +00:00
undelfs.c Global removal of RCS Id: flags. 2002-09-26 23:13:45 +00:00
utilvfs.c * utilvfs.c: Remove tests, since get_host_and_username() is 2002-10-01 03:47:46 +00:00
utilvfs.h * cpio.c: Include <config.h> before everything else. 2001-06-25 21:34:46 +00:00
vfs.c * vfs.c (mc_get_current_wd): Make shue returned string is null terminated. 2002-11-06 18:41:34 +00:00
vfs.h * vfs.c: Remove unused code. 2002-11-03 10:24:45 +00:00
xdirentry.h * xdirentry.h: Comment out magic field everywhere. 2002-10-01 17:03:55 +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.