VFS name for success and failure.
* fish.c (dir_load): Use new messages from undelfs.c, indicate
success by printing "done".
* ftpfs.c (dir_load): Likewise.
return a username.
(netrc_has_incorrect_mode): Don't free anything, it can result
in freeing some variables twice.
(find_machine): New function to find matching "machine" or
"default" token.
(lookup_netrc): Eliminate external loop - scan for login and
password, but don't fallback to another string in case of
trouble.
* ftpfs.c (open_archive_int): Use SUP.proxy instead of
SUP.use_proxy.
(open_archive): Set SUP.proxy to ftpfs_proxy_host.
* ftpfs.h: Eliminate unused structures.
* utilvfs.c (vfs_split_url): Return NULL as username if
URL_ALLOW_ANON is set and no username is found in the URL,
otherwise use current name.
* ftpfs.c (ftp_split_url): New function - split URL and look up
username and password if needed.
(login_server): Use ftp_split_url().
(archive_same): Likewise.
unsigned char for compatibility with non-GNU libc.
* tar.c (from_oct): Likewise with isspace().
Reported by Roland Illig <1illig@informatik.uni-hamburg.de>
(vfs_s_data.file_store): Change second argument
to (vfs_s_fh *fh).
* direntry.c (vfs_s_close): Adjust.
* fish.c (file_store): Likewise.
* ftpfs.c (file_store): Likewise. Use "APPE" if
fh->u.ftp.append is true.
(linear_start): Care about fh->u.ftp.append.
(ftpfs_fh_open): Likewise.
field to ftp struct.
* ftpfs.c (linear_start): Set control_connection_buzy.
(linear_abort): Unset control_connection_buzy.
(ftpfs_fh_open): Don't retrieve file if it is
opened for writting only. Open data connection as
fh->handle and unlink/unset local temporary file
if control connection isn't buzy.
(ftpfs_fh_close): New function to serve opened in
ftpfs_fh_open() data connection. Unset fh->changed
to prevent MEDATA->file_store() call from vfs_s_close().
and stat_size.
* vfs.c (vfs_s_resolve_symlink): Use snprintf
instead of sprintf.
(vfs_print_stats): Use off_t for have and need. Cast
have to double to eliminate negative percent(s).
Fix print_vfs_message string formats.
* vfs.h (vfs_print_stats): Adjust declaration.
* ftpfs.c (file_store): Use off_t for total.
Fix print_vfs_message string format.
* direntry.c: Likewise.
* fish.c: Likewise.
* ftpfs.c: Likewise.
* local.c: Likewise.
* tar.c: Likewise.
* utilvfs.h: Don't include <config.h> - it should be included
in all C files instead.
* xdirentry.h: Likewise.
sys/time.h as recommended by Autoconf documentation.
* cpio.c: Remove all time-related includes - they are in vfs.h.
* extfs.c: Likewise.
* ftpfs.c: Likewise.
* mcfs.c: Likewise.
* mcserv.c: Likewise.
* tar.c: Likewise.
* util-alone.c: Likewise.
* vfs.c: Likewise. Include xdirentry.h.
ftp servers can't store it;
(command): g_strdup_vprintf() and g_strconcat() replaced
by g_strdup_vprintf(), g_realloc() and strcpy()
to reduce memory usage when trailing "\r\n" added;
(ftpfs_set_debug, ftp_data): ftp_data.logfile assigned with logfile
value to log servers replies
* tar.c (read_header): memory leaking for empty symlink's names fixed
* utilvfs.c (vfs_split_url): *host is not assigned if host is null
* ftpfs.c (login_server): new features of vfs_split_url () used,
my_get_host_and_username became macro
* vfs.c (mc_opendir, mc_chdir): unneeded calls to concat_dir_and_file
removed (vfs_canon removes trailing '/')
* sfs.c (vfmake, redirect): allocated memory realeased on errors
* direntry.c (vfs_s_find_entry_tree): segfault fixed when root is NULL
(vfs_s_new_inode, vfs_s_new_entry): g_new replaced by g_new0
* ftpfs.c (dir_load): ent->name is free()d for "." and ".."
(ftpfs_directory_timeout): default value changed to 900
(netrc_next): "const char * const keywords" go to rodata and is shared
* ftpfs.c (netrc_next): "const char * keywords" is pretty nice.
* ftpfs.c (dir_load): At last, found place, that broke handling
directories with spaces in name. Problem was in prepending "/"
to "." for current directory. Which was, obviously, wrong. Hacked
to make just "LIST -la ." instead.
* vfs.c: Changed to BUF_* constants in some places.
* utilfs.c (vfs_split_url): don't assign *pass if pass is NULL
* fish.c (archive_open, archive_same): memory allocated by
vfs_split_url () must be released after use, don't strdup()
values allocated by vfs_split_url () and NULL passed to
vfs_split_url () when password value is unused
* ftpfs.c (archive_open, archive_same): ditto plus same for
ftpfs_get_proxy_host_and_port ()
* ftpfs.c (netrc_next): Turned strange "const char * const keywords"
into more alike "const char const * keywords". Still, think, it's
too strict.
* smbfs.c: Add #define BOOL_DEFINED before inclusion of samba headers.
Libncurses(or slang?) defines BOOL and that can cause problems. (In fact,
I can't find references to that const, but sure, I hade reason to do that:)
* util-alone.h: Declare load_anon_passwd() to avoid warnings.
* vfs.c (mc_def_getlocalcopy): free() replaced by g_free() to prevent
crushes with mad, thanks to Timur I. Bakeyev <timur@bat.ru>
* fish.c (linear_start): name wasn't freed after usage
* cpio.c (cpio_ungetlocalcopy): return type changed to int,
function return 0 now
* direntry.c (vfs_s_close, vfs_s_resolve_symlink): memory, allocated
by vfs_s_fullpath () is freed after use
* ftpfs.c (linear_start): ditto;
Patch by Andrew V. Samoilov <sav@bcs.zp.ua>
* vfs.[ch] (vfs_canon, mc_open, vfs_file_is_local,
mc_(un)?getlocalcopy): added const qualifier
(mc_def_getlocalcopy): tempnam() returns malloc()ed buffer,
so, free() it, not g_free();
(vfs_canon): prepend filename by cwd when tilde '~' cannot be expanded;