Patrick Winnertz
0b0f8e6128
Revert "introduced new type SHELL_ESCAPED_STR for more type safety"
...
This reverts commit 90763ba82f
.
Conflicts:
ChangeLog
mhl/escape.h
src/complete.c
vfs/fish.c
Signed-off-by: Patrick Winnertz <winnie@debian.org>
2009-02-10 15:08:01 +01:00
Patrick Winnertz
8b7e47d9cc
Last bunch of reverts and removal of mhl/*
...
Signed-off-by: Patrick Winnertz <winnie@debian.org>
2009-02-10 14:11:41 +01:00
Patrick Winnertz
f237a14635
Revert some functions (mhl_mem_free to g_free, etc)
...
Signed-off-by: Patrick Winnertz <winnie@debian.org>
2009-02-10 13:52:53 +01:00
Sergei Trofimovich
c825c379c4
fish: cleanup: unboxed quoted strings when generate shell commands
...
Signed-off-by: Sergei Trofimovich <st@anti-virus.by>
2009-01-28 10:29:18 +02:00
Enrico Weigelt, metux IT service
90763ba82f
introduced new type SHELL_ESCAPED_STR for more type safety
2009-01-27 22:27:06 +01:00
Patrick Winnertz
e1572aefd3
Remove embedded function and use instead the regex directly as we doesn't need
...
more lines of code as really necessary.
The regex stuff is taken from this site:
http://www.slac.stanford.edu/slac/www/resource/how-to-use/cgi-rexx/cgi-esc.htm
2009-01-25 22:52:24 +01:00
Sergei Trofimovich
8a12b5e187
fish: fixed forgotten '\\' special char in perl escaping
...
Signed-off-by: Sergei Trofimovich <slyfox@inbox.ru>
2009-01-25 20:22:29 +01:00
Sergei Trofimovich
a8779af1aa
fish: fixed handling of files with spaces, quotes, etc.
...
Changes:
* removed "" from all operations, because shells do not like it:
$ LANG=C ls "//\ a\ -\>\ b\ \"\"\""
ls: cannot access //\ a\ -\>\ b\ """: No such file or directory
$ [sf] ~:LANG=C ls //\ a\ -\>\ b\ \"\"\"
// a -> b """
* transited to mhl escaping function in vfs/fish.c
* fixed vast majority of FISH ops in respect to special chars
Signed-off-by: Sergei Trofimovich <slyfox@inbox.ru>
2009-01-25 20:22:29 +01:00
Sergei Trofimovich
a944b8ca5b
fish: partially fixed perl backend for FISH
...
Broken:
* spacy files are still broken (like " a b")
Changes:
* vfs/fish.c learned to parse 'R' (raw filemode)
* fixed perl backend escaping
Signed-off-by: Sergei Trofimovich <slyfox@inbox.ru>
2009-01-25 20:22:29 +01:00
Sergei Trofimovich
636b1ff16f
fish: added handling for escaped characters
...
Changes:
* mhl/string.h achieved new function: mhl_str_dup_range
* fish: added handling for quoted string (:"enc" and :"enc1" -> "enc2")
Signed-off-by: Sergei Trofimovich <slyfox@inbox.ru>
2009-01-25 20:22:29 +01:00
Sergei Trofimovich
3884370289
fish: one step closer to working state
...
!!!WARNING!!!: FISH is still broken
Changes
* fixed sed fallback (added escaping)
* fixed FISH hangup (introduced earlier in perl changes)
* added FISH 500 if perl script dies somehow (no more FISH hangups on dir list path!)
* added '#if 0' in vfs/fish.c:fish_dir_load() - handy to debug
Signed-off-by: Sergei Trofimovich <slyfox@inbox.ru>
2009-01-25 20:22:29 +01:00
Patrick Winnertz
05a2491681
Argh.. we need even more escaping since this runs in c which executes
...
a shell script which executes then a perl script.... this uses then " as output in printf:
--> therefore we need up to 5 backslashes
2009-01-25 20:22:29 +01:00
Patrick Winnertz
61dee5baa3
Removed a % which I accidentially overviewed the first time
2009-01-25 20:22:29 +01:00
Patrick Winnertz
837aece56f
Some fixes to the new fish get dirlisting code. One issue is remaining.
2009-01-25 20:22:28 +01:00
Patrick Winnertz
b198432f06
Add some whitespace fixes which are also used to make symlinks work correctly
2009-01-25 20:22:28 +01:00
Patrick Winnertz
1667b696b7
Add new read dir stuff based on perl.
...
- please note that this patch won't work right now
2009-01-25 20:22:28 +01:00
Patrick Winnertz
01ef2aaf80
Revert slavaz patch because this was something unrelated to not working links via fish.
...
this indeed belongs into ticket:149.
2009-01-25 20:22:28 +01:00
Slava Zanko
a202cac66b
Changes in directory listing format:
...
- check if remote have a 'test' utility.
If 'test' exists - use it for recognize symlinks (test -L)
and forming "L<symlink>" string in output
- Restore part of source code for handling "L<symlink>"
- check if 'ls' command support option '-Q' and use it if supported
- FIXME: need to write fish_get_unquoted_filename
- FIXME: need to rewrite algorithm of parsing ' -> ' substring
(relative to -Q option)
New logic will correct show symlinks on lot of OSes, but in some
pure OSes need to review...
2009-01-25 20:22:28 +01:00
Patrick Winnertz
56e02e2848
Remove case 'L' check as this was never implemented as it seems...
2009-01-25 20:22:28 +01:00
Patrick Winnertz
5493da68a2
Remove vars which are not needed
2009-01-25 20:22:28 +01:00
Patrick Winnertz
b166e7f232
Update Slavaz patch to work correctly on files called "foo -> bar"
2009-01-25 20:22:28 +01:00
Pavel Tsekov
d2fb34f021
* vfs/fish.c (fish_dir_load): Check the exit status of the remote command
...
and fail with EACCES if it was unsuccessful.
Fix the value returned on error - must be -1 instead of 1.
2007-11-02 14:50:41 +00:00
Pavel Tsekov
7d113d0125
* vfs/fish.c (FISH_OP): Remove the second argument since it is unused.
...
Fix the macro usage troughout.
(XTEST): Remove unused macro.
2007-10-29 13:31:44 +00:00
Pavel Tsekov
4a895496c7
* vfs/fish.c (fish_linear_start): Fix a hang when retrieving unreadable
...
file. Fixes savannah bug #21331 .
2007-10-26 13:46:42 +00:00
Pavel Tsekov
56eccaadb4
* configure.ac: Determine the size of long',
long long' and
...
off_t.
* vfs/fish.c (fish_linear_start): Use strtol() or strtoll() to retrieve
the size of the file being retrieved.
2007-10-11 12:32:42 +00:00
Pavel Tsekov
2f3df3af4e
* edit/bookmark.c: Update copyright notice.
...
* edit/edit.c: Likewise.
* edit/editcmd.c: Likewise.
* edit/editdraw.c: Likewise.
* edit/editkeys.c: Likewise.
* edit/editlock.c: Likewise.
* edit/editmenu.c: Likewise.
* edit/editoptions.c: Likewise.
* edit/editwidget.c: Likewise.
* edit/syntax.c: Likewise.
* src/background.c: Likewise.
* src/boxes.c: Likewise.
* src/complete.c: Likewise.
* src/execute.c: Likewise.
* src/ext.c: Likewise.
* src/file.c: Likewise.
* src/filegui.c: Likewise.
* src/fileopctx.c: Likewise.
* src/find.c: Likewise.
* src/hotlist.c: Likewise.
* src/key.c: Likewise.
* src/keyxdef.c: Likewise.
* src/layout.c: Likewise.
* src/learn.c: Likewise.
* src/listmode.c: Likewise.
* src/main.c: Likewise.
* src/panelize.c: Likewise.
* src/slint.c: Likewise.
* src/textconf.c: Likewise.
* src/tree.c: Likewise.
* src/treestore.c: Likewise.
* src/tty.c: Likewise.
* src/util.c: Likewise.
* src/utilunix.c: Likewise.
* src/view.c: Likewise.
* src/widget.c: Likewise.
* src/wtools.c: Likewise.
* src/x11conn.c: Likewise.
* vfs/cpio.c: Likewise.
* vfs/extfs.c: Likewise.
* vfs/fish.c: Likewise.
* vfs/ftpfs.c: Likewise.
* vfs/gc.c: Likewise.
* vfs/mcfs.c: Likewise.
* vfs/mcserv.c: Likewise.
* vfs/smbfs.c: Likewise.
* vfs/tar.c: Likewise.
2007-09-25 15:33:35 +00:00
Pavel Tsekov
23361694b6
* src/background.c: Use the correct form of FSF's name in the copyright
...
notice.
* src/boxes.c: Ditto.
* src/complete.c: Ditto.
* src/execute.c: Ditto.
* src/ext.c: Ditto.
* src/file.c: Ditto.
* src/filegui.c: Ditto.
* src/fileopctx.c: Ditto.
* src/fileopctx.h: Ditto.
* src/find.c: Ditto.
* src/hotlist.c: Ditto.
* src/key.c: Ditto.
* src/keyxdef.c: Ditto.
* src/layout.c: Ditto.
* src/learn.c: Ditto.
* src/listmode.c: Ditto.
* src/main.c: Ditto.
* src/panelize.c: Ditto.
* src/slint.c: Ditto.
* src/textconf.c: Ditto.
* src/tree.c: Ditto.
* src/treestore.c: Ditto.
* src/tty.c: Ditto.
* src/util.c: Ditto.
* src/utilunix.c: Ditto.
* src/view.c: Ditto.
* src/widget.c: Ditto.
* src/wtools.c: Ditto.
* src/x11conn.c: Ditto.
* vfs/cpio.c: Ditto.
* vfs/extfs.c: Ditto.
* vfs/fish.c: Ditto.
* vfs/ftpfs.c: Ditto.
* vfs/gc.c: Ditto.
* vfs/mcfs.c: Ditto.
* vfs/mcserv.c: Ditto.
* vfs/smbfs.c: Ditto.
* vfs/tar.c: Ditto.
* vfs/undelfs.c: Ditto.
* vfs/utilvfs.c: Ditto.
* vfs/vfs.c: Ditto.
* edit/bookmark.c: Ditto.
* edit/edit.c: Ditto.
* edit/edit.h: Ditto.
* edit/editcmd.c: Ditto.
* edit/editdraw.c: Ditto.
* edit/editkeys.c: Ditto.
* edit/editlock.c: Ditto.
* edit/editmenu.c: Ditto.
* edit/editoptions.c: Ditto.
* edit/editwidget.c: Ditto.
* edit/syntax.c: Ditto.
2007-09-24 09:28:32 +00:00
Pavel Tsekov
e2424ae139
* src/filegui.c (rd_widgets) [_LARGE_FILES]: Use format string
...
capable of supporting 64 bit file sizes.
* vfs/fish.c (fish_linear_start) [_LARGE_FILES]: Use format string
capable of supporting 64 bit file sizes.
2007-08-23 13:16:39 +00:00
Pavel Tsekov
0be8302a3d
* vfs/fish.c: Remove all references to HAVE_HACKED_SSH.
2007-05-07 13:23:54 +00:00
Pavel Tsekov
9312932eea
* vfs/fish.c (fish_linear_start): Use _FILE_OFFSET_BITS to determine which
...
length modifier to pass to sscanf(). Use 'll' length modifier instead
of 'L' since 'L' is meant for doubles.
2007-04-26 15:10:02 +00:00
Leonard den Ottolander
7a9daa86b0
* vfs/fish.c (fish_file_store): Fix copy of file names with backticks to
...
remote host.
2006-11-09 17:59:39 +00:00
Pavel Tsekov
294e05e70e
* vfs/fish.c (fish_file_store): Do not create the target file before
...
determining which method (`head' or `dd') to use.
Do not use `head' to transfer data when resuming a file transfer - it is
not reliable enough.
2006-03-31 14:29:37 +00:00
Pavel Tsekov
407497fd43
* vfs/fish.c (fish_file_store): Improve the upload speed by using the
...
`head' utility when possible. Fallback to a new improved `dd' method
if `head' is not availaible or just stupid.
2006-03-30 14:39:33 +00:00
Pavel Tsekov
264697b010
* vfs/fish.h: New file.
...
* vfs/fish.c (fish_directory_timeout): Define new global variable.
(FISH_DIRECTORY_TIMEOUT): Eliminate - this macro is not used
anywhere.
(fish_dir_load): Use `fish_directory_timeout' to calculate the
expiration time of a newly created directory entries.
* src/setup.c [USE_NETCODE]: Include fish.h .
(int_options) [USE_NETCODE]: Add support for user configurable
expiration timeout of FISH directory cache entries.
* doc/mc.1.in: Document `fish_directory_timeout'.
2006-02-23 15:32:18 +00:00
Pavel Tsekov
c9f1b97869
* vfs/ftpfs.c (ftpfs_dir_uptodate): Remove.
...
(init_ftpfs): Adjust the code to reflect the removal of
`ftpfs_dir_uptodate'.
* vfs/fish.c (fish_dir_uptodate): Remove.
(init_fish): Adjust the code to reflect the removal of
`fish_dir_uptodate'.
* vfs/direntry.c (vfs_s_dir_uptodate): New function.
(vfs_s_init_class): Initialize the `dir_uptodate' field of
vfs_s_subclass.
2006-02-23 10:46:29 +00:00
Roland Illig
2390300034
* fish.c: Replaced the printf-like attribute with __printf__,
...
since GNU gettext defines a macro printf on some systems.
* ftpfs.c: Likewise.
2006-02-03 14:45:44 +00:00
Leonard den Ottolander
a03c48ffa4
fish.c, xdirentry.h: Fix 2 GB file size limit for fish.
2006-01-27 22:16:45 +00:00
Pavel Tsekov
c8494f41bb
* xdirentry.h (LS_LINEAR_PREOPEN): New macro definition.
...
* direntry.c (vfs_s_open): When opening a file in linear mode,
defer the actual open operation until the first read call.
(vfs_s_read): When reading in linear mode, open the file
on the first read operation.
(vfs_s_lseek): When in linear mode, make sure that seeking is
allowed only before the first read operation.
* ftpfs.c (ftpfs_ctl): Make the code aware of LS_LINEAR_PREOPEN.
* fish.c (fish_ctl): Likewise.
2006-01-25 14:04:27 +00:00
Leonard den Ottolander
0c2b46643d
* fish.c (fish_dir_load, fish_linear_start): Get numerical gid/uids from ls to
...
avoid wrong parsing of user/group names containging white space.
2005-10-19 11:34:56 +00:00
Roland Illig
290b842c86
* utilvfs.h (vfs_parse_filetype, vfs_parse_fileperms,
...
vfs_parse_filemode): Rewrote the functions to parse Unix file
modes.
* utilvfs.c: Likewise.
* fish.c: Using the new parsing functions.
2005-09-26 11:10:24 +00:00
Roland Illig
7e7b81b73e
* direntry.c: Added const qualifiers to work around gcc
...
warnings.
* extfs.c: Likewise.
* fish.c: Likewise.
* ftpfs.c: Likewise.
* sfs.c: Likewise.
* xdirentry.h: Likewise.
2005-09-05 00:52:56 +00:00
Roland Illig
5343037e83
* fish.c (fish_ctl): Commented out some unused code with
...
#if 0 ... #endif. This fixes a warning from SunPro.
2005-06-08 00:31:25 +00:00
Pavel Roskin
1f60f44145
Update postal address of Free Software Foundation.
2005-05-27 03:35:10 +00:00
Roland Illig
ebcd6129c6
* fish.c: Declared one more parameter as unused.
2005-02-22 18:38:58 +00:00
Roland Illig
d7e7ec48dd
* *.c: Declared unused variables with (void) to avoid the gcc
...
warnings.
* extfs.c (extfs_get_path_mangle, extfs_get_path): Removed unused
parameter.
* ftpfs.c (ftpfs_netrc_bad_mode): Likewise.
* vfs.c (mc_def_getlocalcopy): Likewise.
2005-02-22 18:35:22 +00:00
Roland Illig
54cccec688
* utilvfs.h: Removed unneeded #includes.
...
* *.c: Added the #includes that have been removed from utilvfs.h.
* tcputil.c: Just removed the unneeded #include "utilvfs.h".
2005-02-19 16:36:38 +00:00
Roland Illig
9558c7178f
* src/info.c (info_show_info): Enabled display of the device number,
...
for the case that the column in the directory listing is too
short. This had been disabled since 1994, for no obvious reason
and without any comment.
* src/screen.c (format_device_number): Added. Converts a device number
into a bounded string.
* screen.c (string_file_size): Support for larger device numbers
(and for non-Linux systems).
* vfs/cpio.c (cpio_read_crc_head): Fixed device number handling for
non-Linux systems.
* vfs/fish.c (fish_dir_load): Likewise.
* vfs/utilvfs.c (vfs_parse_ls_lga): Likewise.
2005-01-27 23:32:13 +00:00
Andrew V. Samoilov
b20f6b2dea
* fish.c (fish_linear_abort): Fix bug with FISH vfs. It freezes MC on
...
transfer abort.
2004-12-28 12:25:24 +00:00
Andrew V. Samoilov
e7b96a4600
* fish.c(fish_file_store): Fix typo fix
2004-11-29 20:15:22 +00:00
Andrew V. Samoilov
a2bcbdb52c
* fish.c (fish_file_store): Check write() more carefully.
...
(PREFIX): Fix memory leak.
(fish_##name): Likewise.
(fish_chown): Likewise.
2004-11-29 12:45:42 +00:00