summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2024-02-18add validate for path object and update manpageRyo Nakamura
2024-02-18update console output and docRyo Nakamura
2024-02-18add -W and -R option for resume checkpointRyo Nakamura
2024-02-17ready to implement the main-sideRyo Nakamura
2024-02-17add checkpoint.c and .hRyo Nakamura
2024-02-12add htonll and ntohllRyo Nakamura
2024-02-11tiny fix on poolRyo Nakamura
2024-02-11little cleanupRyo Nakamura
2024-02-11change chunk_pool from list to poolRyo Nakamura
2024-02-11cleanup mscp_scan_thread related codesRyo Nakamura
2024-02-11change thread_list to thread_poolRyo Nakamura
2024-02-11change path_list to path_poolRyo Nakamura
2024-02-11add pool strcture and move src list to poolRyo Nakamura
2024-02-07remove unnecessary \nRyo Nakamura
2024-02-07add -4 and -6 options to use either IPv4 or IPv6Ryo Nakamura
2024-02-07cleanup error message handlingRyo Nakamura
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-06add .clang-format from Linux kernel and format sourcesRyo Nakamura
The exception is that ColumnLimit is 90.
2024-02-06refactor error message-related functionsRyo Nakamura
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-06add -p option, preserving file timestampsRyo Nakamura
2024-02-06add two env vars to pass password/keyphrase (#9)Ryo Nakamura
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-05passing options via pointers in mscp_ssh_optsRyo Nakamura
We do not need static buf because we have already dropped python biding support.
2024-02-04do not passing msg_fp via mscp optsRyo Nakamura
instead, mpr_* functions print messages to stdout or stderr directly.
2024-02-04drop python binding supportRyo Nakamura
2024-01-21make it buildable at FreeBSDRyo Nakamura
2024-01-18add SPDX-License-Identifier to source filesRyo Nakamura
2024-01-18don't allocate char[PATH_MAX] for each fileRyo Nakamura
This commit makes struct path allocation use strndup(). It reduices the memory footprint for struct path per file (issue #8).
2024-01-18fix wrong dst path for source path under '/'Ryo Nakamura
When a source file path is /FILE, its dest path would be dst/ILE. This commit fixes this issue (#8).
2024-01-18print warn messages when stat and opendir failedRyo Nakamura
during scanning src paths due to, e.g., too many levels of symbolic links, too long path, and permission deineid.
2023-11-25add -P, equivalent to -p for just compatibilityRyo Nakamura
and add a test case for -p and -P
2023-11-25add -I interval optionRyo Nakamura
-I INTERVAL option inserts sleep for interval (seconds) between SSH connection attempts (issue #7).
2023-11-01fix parsing user@host:path.Ryo Nakamura
This commit fixes issue #6. Now mscp command correctly parses [x::x] IPv6 address notation in hostname.
2023-11-01main: adopt rolling average of recent eight bps values to calculate ETARyo Nakamura
2023-11-01main: call only mscp_stop() when receives sigintRyo Nakamura
2023-11-01write total transferred bytes and number of filesRyo Nakamura
at the end of output when serverity is notice.
2023-11-01change msg: thread[%d] to thread:%dRyo Nakamura
2023-11-01print 1st decimal point in the progress barRyo Nakamura
2023-11-01add -g option to specify TCP cc algorithmRyo Nakamura
This commit introduce SSH_OPTIONS_CCALGO option to the libssh patch and add -g CONGESTION option to mscp.
2023-09-08fix: use off_t for lseekRyo Nakamura
2023-08-30fix libmscp python bindings.Ryo Nakamura
- fix libmscp install path by setup.py with data_files - fix return values of mscp_get_stats() - add examples directory for mscp python binding
2023-08-30fix mscp_opendir, do not use `tls_sftp`, use `sftp` isntead.Ryo Nakamura
The fixed issue causes mscp_opendir wrongly calls opendir() for local when tls_sftp is NULL although sftp is not NULL.
2023-08-04fix usage: "none" is not supported for -FRyo Nakamura
2023-08-04introduce git-based versioningRyo Nakamura
MSCP_BUILD_VERSION (`git describe --tags --dirty --match "v*"`) is passed through include/mscp_version.h.in and cmake. When git is failed, use VERSION file instead (for building from source tar balls that excludes .git).
2023-08-04do not set O_TRUNC when opening destination file.Ryo Nakamura
It prevents `mscp localhost:hoge ~/hoge` from truncating the source file. See https://bugzilla.mindrot.org/show_bug.cgi?id=3431. https://github.com/upa/mscp/issues/1
2023-08-04add -F ssh_config optionRyo Nakamura
2023-08-03use pseudo glob/globfree for remote-glob when muslRyo Nakamura
musllibc does not implement GLOB_ALTDIRFUNC, so do not call glob for remote sides when libc is musl. test_e2e.py skips test_glob_src_path when running on alpine.
2023-08-03add glob for source pathsRyo Nakamura
https://github.com/upa/mscp/issues/3
2023-08-03cleanup wrappers for file operationsRyo Nakamura
Previously wrapper functions for open(), opendir(), and stat(), etc, are implemneted in path.h, and now they are in fileops.h and fileops.c. This commit is a reparation for remote glob.
2023-05-07mscp: maintain mscp_thread structs in listRyo Nakamura
Instead of m->threads array, struct mscp_thread instanes are maintained in m->thread_list. This enables stable counter access via mscp_get_stats().
2023-04-05main: add a white space to the elapsed time outputRyo Nakamura
It adjusts the position of XX:XX in elapsed timeou output.
2023-04-05main: print elapsed time instead ETA at the endRyo Nakamura