Commit Graph

127 Commits

Author SHA1 Message Date
Slava Zanko
1efbe4a18a patches by Rostislav Beneš: mc-29-vfs
add support for filesystem, that use others encodings than mc (vfs). Now can be
encoding set only manually, but automatic detection is possible. Filename is
converted in mc_readdir and other function translate it back by vfs_translate
added menu etries encodnig in left and rigth menu (localization will be neede)
modified subshell.c to put subshell correct working directoy,
modified ext.c and execute.c to translate filename before running command
there could be one problem, vfs_translate_path does not use something like
path_magic function
2009-01-26 12:04:07 +02:00
Enrico Weigelt, metux IT service
183a66f7f5 changing return types of *read() and *write() functions to ssize_t 2009-01-13 19:00:25 +01:00
Roland Illig
87ab858ab0 Removed unused <mman.h>. 2005-07-18 13:20:39 +00:00
Roland Illig
bb14c4e1da * vfs.h, vfs-impl.h, vfs.c, local.h, local.c, sfs.c: Removed
support for mmap() and munmap() from the VFS. It is unused and
	cannot be applied to remote file systems.
2005-07-05 21:01:57 +00:00
Roland Illig
526bf72983 * vfs.h: Fixed prototypes for mc_read() and mc_write(). Now they
get void * instead of char *.
	* vfs.c: Likewise.
2005-04-13 19:08:13 +00:00
Roland Illig
9997fa69f8 * *.h: Renamed the multiple inclusion guards. 2005-02-18 21:15:37 +00:00
Roland Illig
6bbbeb77b4 * vfs.c: Changed types for mc_chmod, mc_chown, mc_mknod to mode_t,
uid_t, gid_t, and dev_t where appropriate.

	Patch extended by Roland Illig.
2004-11-16 16:16:08 +00:00
Andrew V. Samoilov
1bb010e66e Revert last changes 2004-11-16 12:50:40 +00:00
Andrew V. Samoilov
f2d94122cf * vfs.h, vfs.c: mc_chmod(), mc_chown() parameter type cleanup. 2004-11-16 12:41:34 +00:00
Roland Illig
acd63d7374 Moved the declaration of the init_*fs functions into specialized headers (*fs.h or vfs-impl.h). 2004-08-17 09:17:43 +00:00
Roland Illig
1105b8e941 Splittet the vfs.h header into a user's part (vfs.h) and an implementor's part (vfs-impl.h). 2004-08-16 23:25:49 +00:00
Roland Illig
3cf53917e1 Const-ified the mc_* functions. 2004-08-16 22:40:31 +00:00
Roland Illig
b17b1ac213 Const-ified the rest of the vfs_class methods. 2004-08-16 22:15:28 +00:00
Roland Illig
e0bf99d516 Made the path argument to vfs->{chmod,chown,utime} constant. 2004-08-16 21:36:39 +00:00
Roland Illig
dc70d154db Made the buf argument to vfs->write constant. 2004-08-16 21:16:54 +00:00
Roland Illig
789e5e9bcb Made the path argument to vfs->[l]stat constant. Created a new memory leak, which will be fixed soon. 2004-08-16 20:26:42 +00:00
Roland Illig
b472c18c79 Made the patch argument to vfs->which const. 2004-08-16 19:47:21 +00:00
Roland Illig
db3f21b702 Added a typedef for a function. Added more const-ness to the function arguments. 2004-08-16 16:34:11 +00:00
Roland Illig
a0616a76be mc_ungetlocalcopy does not free its second argument anymore. 2004-08-16 15:18:18 +00:00
Roland Illig
8e36bb7fe0 Marked the places where the arguments should be passed as "const". 2004-08-16 09:37:00 +00:00
Pavel Roskin
6ffd35bf07 * gc.c: Eliminate all code for timestamping parent filesystems.
It's broken and undocumented.  Adjust all dependencies.
2003-11-26 21:10:42 +00:00
Pavel Roskin
54b8c9aaad * vfs.c (vfs_split): Deconstify.
* direntry.c (vfs_s_get_path_mangle): Likewise.  "mangle" is in
the name for a reason.  Use vfs_s_get_path() instead where the
path should be preserved.
* extfs.c (extfs_get_path_mangle): Likewise.
* sfs.c (sfs_vfmake): Protect against changes in vfs_split().
2003-11-14 08:25:50 +00:00
Pavel Roskin
30c4bd1b6d * vfs.h: Constify chdir() and opendir() methods. Adjust all
dependencies.
* vfs.c (mc_chdir): Constify, eliminate protection against
broken implementations of chdir() method.
(mc_opendir): Constify.
2003-11-13 08:29:37 +00:00
Pavel Roskin
b33f2cbb47 * vfs.c: Split garbage collection code into ...
* gc.c: ... this.
* vfs.h: Corresponding code moved ...
* gc.h: ... here.
* Makefile.am: Adjustments for the above.
2003-11-07 23:43:55 +00:00
Pavel Roskin
0318ed5d0b * vfs.c: Move all parsing code, vfs_die() and vfs_get_password()
to utilvfs.c, vfs_print_stats() to direntry.c.
* utilvfs.c (vfs_parse_ls_lga): Disable caching current date,
it's done incorrectly.
2003-11-05 06:08:16 +00:00
Pavel Roskin
77bcdc8127 * vfs.c (mc_ungetlocalcopy): Free local path here, not in class
implementations.
* vfs.h (struct vfs_s_class): Constify "local" argument for
ungetlocalcopy.  Adjust all implementations.
2003-10-28 21:52:06 +00:00
Pavel Roskin
8e3a0c9d65 * direntry.c (vfs_s_init_class): Improve interface to allow more
code reuse.  Change all callers.
(vfs_s_getlocalcopy): New implementation.  Don't use
mc_def_getlocalcopy().  Use vfs_s_open() to create local copy.
(vfs_s_ungetlocalcopy): New function.
* xdirentry.h: Add new field "flags" to struct vfs_s_subclass.
* extfs.c (extfs_ungetlocalcopy): Don't use
mc_def_ungetlocalcopy() in the dead branch.
* vfs.c (mc_def_getlocalcopy): Make static.
(mc_def_ungetlocalcopy): Likewise.
2003-10-28 07:09:39 +00:00
Pavel Roskin
7d16d65e35 * vfs.h: Constify some arguments for many functions.
* xdirentry.h: Likewise.  Adjust all dependencies.
2003-10-28 02:10:33 +00:00
Pavel Roskin
a828849d50 * vfs.h: Remove redundant declaration of init_localfs(). 2003-10-26 01:51:28 +00:00
Pavel Roskin
7c4fc715da * direntry.c (vfs_s_setctl): Implement VFS_SETCTL_FLUSH.
* ftpfs.c: Remove ftpfs_flushdir.  Use MEDATA->flush.
* fish.c: Use MEDATA->flush.
2003-10-16 18:51:41 +00:00
Pavel Roskin
e9ffcceae5 * direntry.c (vfs_s_setctl): Add support to VFS_SETCTL_LOGFILE.
* ftpfs.c (ftpfs_set_debug): Remove.
2003-10-16 17:08:38 +00:00
Pavel Roskin
0b99804da2 * names.c: Merge ...
* utilvfs.c: ... here.
* names.h: Merge ...
* utilvfs.h: ... here.
* Makefile.am: Remove references to names.c and names.h.
2003-10-16 16:50:09 +00:00
Pavel Roskin
52844a3092 * vfs.h: Rename commands for mc_ctl() and mc_setctl() to make it
clear which function they are used with.
* vfs.c (mc_ctl): Change last argument to (void*).
(mc_set): Likewise.
Adjust all dependencies.
2003-10-16 16:12:19 +00:00
Pavel Roskin
426c1836d5 * vfs.h: Remove all references to seekdir and telldir. Adjust
all dependencies.
2003-10-14 22:24:26 +00:00
Pavel Roskin
72c64a60e2 * extfs.c: Switch to self-registration.
* mcfs.c: Likewise.
* sfs.c: Likewise.
* smbfs.c: Likewise.
* undelfs.c: Likewise.
* vfs.s (_vfs_add_noncurrent_stamps): Temporary disable code
that uses vfs_extfs_ops.
(vfs_file_is_smb): Remove.
2003-10-12 22:25:53 +00:00
Pavel Roskin
2e524d3cad * local.c: Switch to self-registration.
* vfs.c: Cache localfs class for the use in vfs_get_class().
2003-10-12 19:57:27 +00:00
Pavel Roskin
ce356e2ce0 Remove useless comment. 2003-10-12 00:26:43 +00:00
Pavel Roskin
00b57fd4bf * vfs.h: Remove typedef vfs, it's too ambiguous. Massive
changes to use struct vfs_class instead.
2003-10-12 00:24:00 +00:00
Pavel Roskin
4de9d4d10e * vfs.h (ftpfs_hint_reread): Remove, it's unused. 2003-10-11 20:58:22 +00:00
Pavel Roskin
6e6fd9b352 * vfs.c (vfs_add_noncurrent_stamps): Call vfs_rm_parents() at
the end.  Change all callers not to call it.
(vfs_rm_parents): Make static.
2003-10-11 17:30:54 +00:00
Pavel Roskin
5cad1eb493 * tarfs.c: Switch to self-registration. 2003-10-11 09:55:13 +00:00
Pavel Roskin
c028805b33 * ftpfs.c: Switch to self-registration. 2003-10-11 09:27:37 +00:00
Pavel Roskin
7081d35409 * vfs.h: Remove parts used only when USE_VFS is not defined. 2003-10-11 09:05:49 +00:00
Pavel Roskin
1d6e00faf0 * vfs.h: Introduce new VFS flags instead of the old unused ones.
* vfs.c (vfs_file_class_flags): New function.
(vfs_file_is_ftp): Eliminate.
(vfs_file_is_smb): Likewise.
(vfs_file_is_local): Likewise.
(vfs_current_is_local): Use new VFSF_LOCAL flag.
2003-10-11 08:21:16 +00:00
Pavel Roskin
60bab59379 * vfs.c: Constify arguments of many functions. 2003-10-11 07:38:05 +00:00
Pavel Roskin
091023c37a * undelfs.c (undelfs_get_path): Constify first argument.
* vfs.h (struct vfs_class): Constify path.  Fix all dependencies.
2003-10-11 07:20:53 +00:00
Pavel Roskin
5659c0f5ee * vfs.c (vfs_release_path): New function, code taken from
_do_panel_cd().
(vfs_ncs_getid): Make static.
2003-10-11 06:43:59 +00:00
Pavel Roskin
9d1f2aae71 * vfs.c (vfs_type): Rename to vfs_get_class(). Fix prototype to
avoid using internal vfs type.  Adjust all dependencies.
(vfs_rosplit): Rename to _vfs_get_class().
2003-10-11 06:25:29 +00:00
Pavel Roskin
14b3775e71 * vfs.h: Remove obsolete code. 2003-10-11 05:46:50 +00:00
Pavel Roskin
617bf6880a * vfs.c (vfs_flags): Eliminate, it's never assigned a non-zero
value.
* vfs.h: Eliminate unused VFS flags.
* local.c (vfs_nil_ops): Eliminate, it's unused now.
2003-10-10 23:49:44 +00:00