Commit Graph

13515 Commits

Author SHA1 Message Date
Andrew Borodin
8190c906ee Merge branch '3574_open_silent'
* 3574_open_silent:
  Ticket #3574: fix XDG silent open in background.
2016-02-14 08:47:05 +03:00
Xander Ziiryanoff
9296f0bd6d Ticket #3574: fix XDG silent open in background.
This bug was introduced in 0516ccd325.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-14 08:45:58 +03:00
Andrew Borodin
ab0c2afba5 Merge branch '3581_sftp_fixes'
* 3581_sftp_fixes:
  sftpfs: fix bad pointer arithmetic in config parser.
  (sftpfs_fill_config_entity_from_config): fix read of config file.
  Use LIBSSH2_INVALID_SOCKET macro.
  libssh2_session_startup() is deprecated in libssh2 >= 1.2.8.
  SFTP: refactoring.
  SFTP: minor refactoring.
  (sftpfs_close_connection): fix connection memleaks.
  (sftpfs_close_connection): fix connection memleaks.
  Ticket #3581: various SFTP fixes.
2016-02-13 16:40:13 +03:00
Andreas Mohr
924a84a3b4 sftpfs: fix bad pointer arithmetic in config parser.
When reading ssh_config with matching host entry mc do bad pointer arithmetic.
Fix it! (Also move offsetof values into struct to reduce human mistakes.)

==18689==ERROR: AddressSanitizer: heap-use-after-free on address 0x604000004910 at pc 0x000000641a8b bp 0x7ffca4ab65e0 sp 0x7ffca4ab65d8
WRITE of size 8 at 0x604000004910 thread T0
    #0 0x641a8a in sftpfs_fill_config_entity_from_string /tmp/portage/app-misc/mc-9999/work/mc-9999/src/vfs/sftpfs/config_parser.c:169:30
    #1 0x6413cf in sftpfs_fill_config_entity_from_config /tmp/portage/app-misc/mc-9999/work/mc-9999/src/vfs/sftpfs/config_parser.c:271:13
    #2 0x640b73 in sftpfs_get_config_entity /tmp/portage/app-misc/mc-9999/work/mc-9999/src/vfs/sftpfs/config_parser.c:310:14
    #3 0x64067d in sftpfs_fill_connection_data_from_config /tmp/portage/app-misc/mc-9999/work/mc-9999/src/vfs/sftpfs/config_parser.c:354:21
    #4 0x61ef95 in sftpfs_cb_open_connection /tmp/portage/app-misc/mc-9999/work/mc-9999/src/vfs/sftpfs/vfs_subclass.c:111:5
    #5 0x7f1340c31beb in vfs_s_get_path /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/vfs/direntry.c:1139:18
    #6 0x7f1340c3685c in vfs_s_inode_from_path /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/vfs/direntry.c:380:9
    #7 0x7f1340c34807 in vfs_s_opendir /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/vfs/direntry.c:409:11
    #8 0x7f1340c34ce8 in vfs_s_chdir /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/vfs/direntry.c:476:12
    #9 0x7f1340c3a29f in mc_chdir /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/vfs/interface.c:687:14
    #10 0x530f64 in _do_panel_cd /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/panel.c:3250:9
    #11 0x530e4e in do_panel_cd /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/panel.c:4627:9
    #12 0x532d34 in do_cd /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/panel.c:5027:11
    #13 0x50b64b in do_cd_command /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/command.c:445:14
    #14 0x50c516 in enter /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/command.c:265:9
    #15 0x52704c in midnight_callback /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/midnight.c:1473:17
    #16 0x7f1340c4c761 in dlg_key_event /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/widget/dialog.c:505:15
    #17 0x7f1340c4cc32 in frontend_dlg_run /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/widget/dialog.c:570:9
    #18 0x7f1340c4c935 in dlg_run /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/widget/dialog.c:1267:5
    #19 0x52654d in do_nc /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/midnight.c:1757:9
    #20 0x4f7d8a in main /tmp/portage/app-misc/mc-9999/work/mc-9999/src/main.c:401:21
    #21 0x7f133f1b8953 in __libc_start_main (/lib64/libc.so.6+0x20953)
    #22 0x427368 in _start (/tmp/portage/app-misc/mc-9999/work/mc-9999/src/.libs/mc+0x427368)

Signed-off-by: Andreas Mohr <and@gmx.li>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-13 16:38:40 +03:00
Andrew Borodin
0fb104d2b3 (sftpfs_fill_config_entity_from_config): fix read of config file.
Also fix memory leak.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-13 16:37:49 +03:00
Andrew Borodin
8b5f62d244 Use LIBSSH2_INVALID_SOCKET macro.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-13 16:37:49 +03:00
Andrew Borodin
b3f5a0ae5e libssh2_session_startup() is deprecated in libssh2 >= 1.2.8.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-13 16:35:13 +03:00
Andreas Mohr
e740c7d3e5 SFTP: refactoring.
Re-order open_connection and reverse re-order close_connection steps.

Signed-off-by: Andreas Mohr <and@gmx.li>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-13 16:35:13 +03:00
Andreas Mohr
ece1d020fa SFTP: minor refactoring.
sftpfs_super_data created at sftpfs_cb_open_connection() was freed at sftpfs_close_connection().
It should be sftpfs_cb_close_connection() for logical right location.

Signed-off-by: Andreas Mohr <and@gmx.li>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-13 16:35:13 +03:00
Andreas Mohr
298273b8f5 (sftpfs_close_connection): fix connection memleaks.
mc missing to free up sftp session data.
This disclose that mc misleadingly freed an internal libssh2.

Signed-off-by: Andreas Mohr <and@gmx.li>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-13 16:35:13 +03:00
Andreas Mohr
49b59018c9 (sftpfs_close_connection): fix connection memleaks.
When sftpfs_open_connection failed free elements at sftpfs_close_connection().
This was not happen when mcerror was set.

Signed-off-by: Andreas Mohr <and@gmx.li>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-13 16:35:13 +03:00
Andrew Borodin
0376fb50e0 Ticket #3581: various SFTP fixes.
(sftpfs_cb_open_connection): initialise sftpfs_super_data_t::socket_handle correctrly.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-13 16:35:13 +03:00
Denys Vlasenko
9dcf03342a doc: man pages fixes
sentitive -> sensitive
cusor     -> cursor
toglle    -> toggle
"the the" -> the

Fixed bad English in a number of places.

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2016-02-11 21:41:17 +01:00
Andrew Borodin
c49d7f76b0 tests/lib/serialize.c: fix error codes.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-02 10:08:08 +03:00
Andrew Borodin
2fa5952097 Merge branch '3269_error_message'
* 3269_error_message:
  Update po/*.po files.
  Clarify some error messages using error code.
  Use meaningful errno or 0.
  Ticket #3269: only print meaningful error code.
2016-02-02 09:47:23 +03:00
Andrew Borodin
ba27f137e6 Update po/*.po files.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-02 09:46:20 +03:00
Andrew Borodin
6fac768fbf Clarify some error messages using error code.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-02 09:42:51 +03:00
Andreas Mohr
b9797d6637 Use meaningful errno or 0.
Use real errno or set it to 0 when no meaningful error code exists
for current user error message.

Signed-off-by: Andreas Mohr <and@gmx.li>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-02 09:42:51 +03:00
Andreas Mohr
842a723f9b Ticket #3269: only print meaningful error code.
Some error messages have no meaningful error code, don't display them.

Signed-off-by: Andreas Mohr <and@gmx.li>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-02 09:42:51 +03:00
Andrew Borodin
88b01bde42 Merge branch '3491_case_sens_search'
* 3491_case_sens_search:
  Ticket #3491: fix case insensitive search in non-unicode locales.
2016-02-02 09:37:48 +03:00
Andrew Borodin
98e66fe406 Ticket #3491: fix case insensitive search in non-unicode locales.
In non-unicode locales, search for non-latin symbols in any acharset was
case sensitive only.  This bug was introduced in
1a1496fc0d.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-02-02 09:37:15 +03:00
Andrew Borodin
f672aa859a Merge branch '2673_lzip'
* 2673_lzip:
  Ticket #2673: support LZIP compression.
2016-01-28 16:46:45 +03:00
Andrew Borodin
8fc0e1d76d Ticket #2673: support LZIP compression.
Thanks Matias A. Fonzo <selk at dragora.org> for the original patch.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-28 16:45:36 +03:00
Andrew Borodin
20bf50e776 Merge branch '3588_mini_format'
* 3588_mini_format:
  Ticket #2588: cannot set mini-format for "brief" listing type.
2016-01-28 16:28:47 +03:00
Mooffie
2347ac38b6 Ticket #2588: cannot set mini-format for "brief" listing type.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-28 16:28:30 +03:00
Andrew Borodin
b315bbc68e Merge branch '3582_info_panel_buffer_overflow'
* 3582_info_panel_buffer_overflow:
  Ticket #3582: fix infopanel overflow
2016-01-17 12:23:37 +03:00
Andreas Mohr
30b6888fcc Ticket #3582: fix infopanel overflow
Testcase: hit C-x i on a file and delete this file

==13429==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x607000031c48 at pc 0x0000005fd41b bp 0x7ffca3f466c0 sp 0x7ffca3f466b8
WRITE of size 4 at 0x607000031c48 thread T0
    #0 0x5fd41a in dirsize_status_deinit_cb /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/file.c:2557:24
    #1 0x7f333f2bda2f in status_msg_deinit /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/widget/wtools.c:619:9
    #2 0x602fe3 in panel_operate_init_totals /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/file.c:1352:9
    #3 0x5fe784 in panel_operate /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/file.c:2840:13
    #4 0x528328 in copy_cmd /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/cmd.c:797:9
    #5 0x528328 in midnight_execute_cmd /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/midnight.c:1139
    #6 0x7f333f291949 in buttonbar_callback /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/widget/buttonbar.c:172:42
    #7 0x7f333f296245 in send_message /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/widget/../../lib/widget/widget-common.h:167:15
    #8 0x7f333f296245 in dlg_try_hotkey /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/widget/dialog.c:464
    #9 0x7f333f296245 in dlg_key_event /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/widget/dialog.c:509
    #10 0x7f333f296245 in dlg_process_event /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/widget/dialog.c:1236
    #11 0x7f333f2979c7 in frontend_dlg_run /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/widget/dialog.c:570:9
    #12 0x7f333f296565 in dlg_run /tmp/portage/app-misc/mc-9999/work/mc-9999/lib/widget/dialog.c:1267:5
    #13 0x4fc7b8 in create_panels_and_run_mc /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/midnight.c:954:5
    #14 0x4fc7b8 in do_nc /tmp/portage/app-misc/mc-9999/work/mc-9999/src/filemanager/midnight.c:1757
    #15 0x4fc7b8 in main /tmp/portage/app-misc/mc-9999/work/mc-9999/src/main.c:401
    #16 0x7f333d7fc953 in __libc_start_main (/lib64/libc.so.6+0x20953)
    #17 0x4270e8 in _start (/tmp/portage/app-misc/mc-9999/work/mc-9999/src/.libs/mc+0x4270e8)

Signed-off-by: Andreas Mohr <and@gmx.li>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-17 12:22:57 +03:00
Andrew Borodin
0074e39a68 Merge branch '3433_zip_dir_perms'
* 3433_zip_dir_perms:
  Ticket #3433: extfs/uzip: adjust abnormal directory permission.
2016-01-17 10:50:30 +03:00
Andreas Mohr
2e04dfd8f6 Ticket #3433: extfs/uzip: adjust abnormal directory permission.
unzip 6.0 source reveal that unzip depends on filename and less on given zip object attribute.

zipinfo can show something like
    Unix file attributes (177777 octal):            ?rwsrwsrwt
but unzip handle this object as directory if filename ended on '/'.

In this case adjust permission string for reasonable extfs handling
for all other cases uzip remain conservative and relay on proper permission.

Signed-off-by: Andreas Mohr <and@gmx.li>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-17 10:49:50 +03:00
Andrew Borodin
27c4c474a7 Merge branch '3412_device_link_info'
* 3412_device_link_info:
  Ticket #3412: info panel: rely on realpath for device info.
2016-01-17 10:35:02 +03:00
Andreas Mohr
c1ea489753 Ticket #3412: info panel: rely on realpath for device info.
When cd_symlinks is enabled cwd_vpath isn't pointed to real path.
Hence device info may wrong.

(Support for local filesystems only.)

Signed-off-by: Andreas Mohr <and@gmx.li>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-17 10:28:33 +03:00
Andrew Borodin
1ba4e3015e Merge branch '3214_inode_info'
* 3214_inode_info:
  Ticket #3214: avoid invalid free nodes display.
2016-01-17 10:20:37 +03:00
Andreas Mohr
bcbea25234 Ticket #3214: avoid invalid free nodes display.
nfree and nodes can be -1. Don't print such numbers at info panel.

Signed-off-by: Andreas Mohr <and@gmx.li>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-17 10:18:01 +03:00
Yury V. Zaytsev
f74754c03d Merge branch '3578_mcext_fixes'
* 3578_mcext_fixes:
  Ticket #3115: add mc.ext patterns for initramfs / initrd (Red Hat and Debian)
  Ticket #3578: fix mc.ext patterns for different makefiles
  Ticket #3578: (regex_command_for) match filename, not full path in mc.ext
2016-01-12 21:11:41 +01:00
Yury V. Zaytsev
466a6f71bf Ticket #3115: add mc.ext patterns for initramfs / initrd (Red Hat and Debian)
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2016-01-10 16:59:47 +01:00
Yury V. Zaytsev
c27c5cf37d Ticket #3578: fix mc.ext patterns for different makefiles
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2016-01-10 16:59:47 +01:00
Andrew Borodin
e7bdd9c5b2 Ticket #3578: (regex_command_for) match filename, not full path in mc.ext
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Signed-off-by: Yury V. Zaytsev <yury@shurup.com>
2016-01-10 16:59:46 +01:00
Marco Ciampa
ac9dd488f9 Updated Italian translation 2016-01-08 21:49:17 +01:00
Andrew Borodin
209b616816 Merge branch '3569_listbox_fixups'
* 3569_listbox_fixups:
  Ticket #3161: WListbox: remember focus state.
  Ticket #3565: "External Panelize": use WListbox's notification. notification.
  Ticket #3563: "Directory hotlist": use WListbox's change notification.
  Ticket #3569: various fixups in WListbox engine.
2016-01-08 13:28:00 +03:00
Andreas Mohr
47590152fa Ticket #3161: WListbox: remember focus state.
When listbox is updated, e.g. new file match add MSG_DRAW event is triggered
but currently listbox re-draw has no knowledge about right focus state.
Fix it by remember current focus state.

Signed-off-by: Andreas Mohr <and@gmx.li>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-08 12:49:30 +03:00
Mooffie
755a2b820e Ticket #3565: "External Panelize": use WListbox's notification. notification.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-08 12:32:13 +03:00
Mooffie
e7fdb55005 Ticket #3563: "Directory hotlist": use WListbox's change notification.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-08 12:00:13 +03:00
Mooffie
aa693fb0c3 Ticket #3569: various fixups in WListbox engine.
Ticket #3562: Listbox should fire MSG_ACTION on mouse clicks too.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-08 11:40:42 +03:00
Phil Friderici
b4c550e23e Add Puppet v4 & stdlib keywords
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-07 09:04:35 +03:00
Andrew Borodin
f7b360d5a0 Fix typo.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-03 15:39:57 +03:00
Andrew Borodin
bc200742d1 Indentation.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-03 15:36:09 +03:00
Andrew Borodin
1fc5dd5986 Merge branch '3443_patch_xz'
* 3443_patch_xz:
  Ticket #3443: patchfs extfs: support xz compression.
2016-01-03 11:23:05 +03:00
Holger Bruenjes
d0435fcfee Ticket #3443: patchfs extfs: support xz compression.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-03 11:21:28 +03:00
Andrew Borodin
82e434de1d Merge branch '3527_uc1541'
* 3527_uc1541:
  Ticket #3527: uc1541 extfs: update version.
2016-01-03 10:50:05 +03:00
Andrew Borodin
6dcba5568f Ticket #3527: uc1541 extfs: update version.
The current version is 2.8: besides of some tweaks and fixes,
support for compressed disk images was introduced.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2016-01-03 10:47:23 +03:00