Commit Graph

208 Commits

Author SHA1 Message Date
Ryo Nakamura
235ba41c5b default chunk size is filesize/(nr_conn*4) (Issue #20)
and clean-up chunk_sz related parts.
2024-04-29 19:36:22 +09:00
Ryo Nakamura
675126a836 manpage: improve descriptions for MaxStartups 2024-04-29 18:27:56 +09:00
Ryo Nakamura
ab6649f29e add available ciphers and hmacs on help print (#20) 2024-04-29 18:03:41 +09:00
Ryo Nakamura
7c5314ea11 change default minimum chunk size to 16MB (Issue #20) 2024-04-26 23:44:46 +09:00
Ryo Nakamura
01fe30efc7 remove limitation that min/max chunk size must be a multiple of page size
Also mentioned by Issue #20.
2024-04-26 23:44:46 +09:00
Ryo Nakamura
61199acc7b support k, m, g for -s, -S, and -b options (Issue #20) 2024-04-26 23:44:46 +09:00
Ryo Nakamura
dd99bc0ac9 connect SSH before starting copy threads in resume transfer
The first ssh connection attempt intends to get ssh password/passphrase
for following ssh connections spawned by copy threads (Issue #17 and #18).
2024-04-26 23:44:17 +09:00
Ryo Nakamura
a5bca0ebe0 resume: fix increment idx only when path is added (#16) 2024-04-15 22:09:25 +09:00
Ryo Nakamura
4ce62079cf add -J proxyjump option (#15) 2024-04-14 16:22:31 +09:00
Ryo Nakamura
e47d5b76e6 fix too few arguments for priv_set_errv 2024-04-13 19:26:15 +09:00
Ryo Nakamura
a1b9afefe5 add -o SSH_OPTION option 2024-04-12 23:08:22 +09:00
Ryo Nakamura
59b90d80bd drop -H disable host key checking option
It can be done by ssh_config instead.
2024-04-11 20:30:46 +09:00
Ryo Nakamura
a281dfd9e9 fix bitrate factor should be 1 when unit is not specified 2024-04-10 23:07:50 +09:00
Ryo Nakamura
2bfd599ad9 add -L limit bitrate option (#14) 2024-04-10 20:57:11 +09:00
Ryo Nakamura
9b8ba69a61 add ssh keyboard interactive authentication
Supporting keyboard-interactive authentication enables login with Cisco
DUO MFA (#2).
2024-03-31 16:47:55 +09:00
Ryo Nakamura
262a715e5e fix: add config.h in platform.h
to build htonll and ntohll correctly.
2024-03-30 14:37:43 +09:00
Ryo Nakamura
07a6cbf039 chmod after truncate and setutimes on the remote side.
When the source file permission is r--r--r--, truncate and setutimes
AFTER chmod fail due to permission deined. So, do chmod after truncate
and setutimes.
2024-03-16 00:12:14 +09:00
Ryo Nakamura
63fb5a7474 add a description for checkpoint file structure 2024-03-14 12:47:17 +09:00
Ryo Nakamura
9d02fc9122 sftp_async_write: bit cleanup error messaging 2024-03-09 16:06:44 +09:00
Ryo Nakamura
dfdad6bca5 update doc for checkpoint 2024-02-20 20:43:57 +09:00
Ryo Nakamura
fc0ced1828 checkpoint includes username 2024-02-20 16:14:26 +09:00
Ryo Nakamura
0695c1e2e4 put magic code at the head of checkpoint 2024-02-20 15:12:05 +09:00
Ryo Nakamura
692ea1d4e4 add validate for path object and update manpage 2024-02-18 22:26:38 +09:00
Ryo Nakamura
19c73af09d update console output and doc 2024-02-18 21:34:41 +09:00
Ryo Nakamura
5f628b64e3 add -W and -R option for resume checkpoint 2024-02-18 14:48:30 +09:00
Ryo Nakamura
2f9c2c0f10 ready to implement the main-side 2024-02-17 13:25:07 +09:00
Ryo Nakamura
f71c7a145a add checkpoint.c and .h 2024-02-17 12:39:19 +09:00
Ryo Nakamura
4e895bb72e add htonll and ntohll 2024-02-12 00:54:28 +09:00
Ryo Nakamura
f152236844 tiny fix on pool 2024-02-11 22:09:23 +09:00
Ryo Nakamura
b756654f6e little cleanup 2024-02-11 22:04:59 +09:00
Ryo Nakamura
a828ca3f5a change chunk_pool from list to pool 2024-02-11 21:28:03 +09:00
Ryo Nakamura
d65a49768c cleanup mscp_scan_thread related codes 2024-02-11 20:33:35 +09:00
Ryo Nakamura
d6f437bcb1 change thread_list to thread_pool 2024-02-11 14:11:47 +09:00
Ryo Nakamura
bfc955a9a7 change path_list to path_pool 2024-02-11 14:11:47 +09:00
Ryo Nakamura
d2e061fd97 add pool strcture and move src list to pool 2024-02-11 14:08:56 +09:00
Ryo Nakamura
f8f8cf1994 remove unnecessary \n 2024-02-07 16:58:17 +09:00
Ryo Nakamura
b2628b54fb add -4 and -6 options to use either IPv4 or IPv6 2024-02-07 15:14:27 +09:00
Ryo Nakamura
96084004b6 cleanup error message handling
The top-level funtion in a thread should print errors using
priv_get_err(), while lower-level functions should set error messages
using priv_set_err() except that error mesesages should be printed
immediately, e.g., under walk_src_path().
2024-02-07 13:29:45 +09:00
Ryo Nakamura
93f155cffe add .clang-format from Linux kernel and format sources
The exception is that ColumnLimit is 90.
2024-02-06 23:09:59 +09:00
Ryo Nakamura
4f0669f8f8 refactor error message-related functions
split message print fuctions (mpr_*), strerrno, and mscp_get/set_error
into print.c/h and strerrno.c/h.

ToDo: revise usages of priv_set_errv and pr_* functions.
2024-02-06 21:54:04 +09:00
Ryo Nakamura
a7f8ad948b add -p option, preserving file timestamps 2024-02-06 16:15:43 +09:00
Ryo Nakamura
ff45d9d71b add two env vars to pass password/keyphrase (#9)
MSCP_SSH_AUTH_PASSWORD passes a password, and MSCP_SSH_AUTH_PASSPHRASE
passes a passphrase for publickey auth. They enable avoiding interactive
password input. Test cases are also added.
2024-02-06 10:35:38 +09:00
Ryo Nakamura
9908fb309d passing options via pointers in mscp_ssh_opts
We do not need static buf because we have already dropped python biding
support.
2024-02-05 23:36:59 +09:00
Ryo Nakamura
c95e6a4fff do not passing msg_fp via mscp opts
instead, mpr_* functions print messages to stdout or stderr directly.
2024-02-04 20:23:08 +09:00
Ryo Nakamura
d57ed4149d drop python binding support 2024-02-04 16:18:27 +09:00
Ryo Nakamura
7ab5cc3ce9 make it buildable at FreeBSD 2024-01-21 04:50:34 +09:00
Ryo Nakamura
9bdbfe8487 add SPDX-License-Identifier to source files 2024-01-18 12:59:49 +09:00
Ryo Nakamura
bba53fab03 don't allocate char[PATH_MAX] for each file
This commit makes struct path allocation use strndup().
It reduices the memory footprint for struct path per file (issue #8).
2024-01-18 12:59:49 +09:00
Ryo Nakamura
5cbf3ad648 fix wrong dst path for source path under '/'
When a source file path is /FILE, its dest path would be dst/ILE.
This commit fixes this issue (#8).
2024-01-18 12:59:49 +09:00
Ryo Nakamura
68a8f3724f print warn messages when stat and opendir failed
during scanning src paths due to, e.g., too many levels of
symbolic links, too long path, and permission deineid.
2024-01-18 12:59:48 +09:00