In current implementation few issues were fixed making passive
connection scheme more reliable:
* If it's IPV4, try PASV first, as some servers and ALGs get
confused by EPSV, and only then EPSV as a fallback
* When trying PASV or EPSV, actually try to connect to the provided
port and if the connection fails, still try the next method
* PASV and EPSV response parsing code was factored out in separate
routines for clarity
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
* Fixed endianness issue introduced by IPV6 patch, which prevented
active connections to be established via PORT mechanism.
FTP server always expects to see the port broken down into bytes
in network byte order, so the transformation to host byte order is
only needed when using EPRT.
* Some IPV4 FTP servers and FTP ALGs / NATs with connection tracking
become confused when you try to use EPSV or EPRT instead of PASV or
PORT respectively.
This commit changes current FTP connection scheme: if we deal with
an IPV4 host, instead of first trying to use EPRT, first try to
use PORT and only if it fails try EPRT as a fallback.
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
Fixed modifiers and removed types recastin in envoronment
variables and messages forming.
Minor code cleanup.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
* m4: AC_CONFIG_SUBDIRS() macros should be always called without relation to enable/disable samba support
* vfs/samba: configure.ac: renamed --with-configdir to --with-smb-configdir
* vfs/samba: configure.ac: renamed --with-codepagedir to --with-smb-codepagedir
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
Removed mcserver and mcfs support.
Reasons:
(1) no longer builds
(2) no one is willing to support it
(3) possibly contains unfixed security holes
(4) makes no sense in view of the availability of FISH
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Some extfs script modes in the repository differ from the ones they get
when installed. This is annoying for those, who hardlink files to the
installed location instead of copying, because git status will show
these files as modified.
Fixing permissions in the repository will resolve this issue.
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
Split assignments and conditions. Type accuracy. Minor optimization.
Thanks Vit Rosin for original patch.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Changes into lib directory
* samba: handling result of system() call
* rpc: handling write errors
* ftpfs: ignoring result of fwrite() on logfile (make compiler happy ;-))
* fish: proper handling of file io calls
* ignoring result of fwrite() on logfile (make compiler happy ;-))
* lib/util.c: handling fwrite() call errors in mc_util_write_backup_content()
* lib/utilunix.c:
* handling possible error on dup() in close_error_pipe()
* handling possible error on getcwd() in mc_realpath()
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
My system wide .rarrc contains these switches
switches= -m5 -mdG -r -s -t -ol -tl
So whenever you list the contents of any archive or copy a file out of
it, RAR/UNRAR will traverse *all* sub directories (note -r, recursive
switch) in a current directory trying to find *all* archives with the
same name. So, the net result might be that unrar/rar will extract
the wrong file and spend a lot of time trying to find archives with
the same name.
That's why I strongly suggest disabling user/system configuration
for archive list and copyout operations (note the added -cfg switch).
I have contacted Eugene Roshal and he said that he won't disable -r switch
for extract and archive list operations, so, we can only fix this problem
on our side.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Fixed bug introduced in ad9c1daad8 commit:
incorrect handling of "." and ".." directories within atchives.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>