Age | Commit message (Collapse) | Author | |
---|---|---|---|
2024-04-29 | default chunk size is filesize/(nr_conn*4) (Issue #20) | Ryo Nakamura | |
and clean-up chunk_sz related parts. | |||
2024-04-26 | change default minimum chunk size to 16MB (Issue #20) | Ryo Nakamura | |
2024-04-26 | remove limitation that min/max chunk size must be a multiple of page size | Ryo Nakamura | |
Also mentioned by Issue #20. | |||
2024-04-10 | add -L limit bitrate option (#14) | Ryo Nakamura | |
2024-02-20 | checkpoint includes username | Ryo Nakamura | |
2024-02-18 | add -W and -R option for resume checkpoint | Ryo Nakamura | |
2024-02-17 | ready to implement the main-side | Ryo Nakamura | |
2024-02-17 | add checkpoint.c and .h | Ryo Nakamura | |
2024-02-11 | tiny fix on pool | Ryo Nakamura | |
2024-02-11 | little cleanup | Ryo Nakamura | |
2024-02-11 | change chunk_pool from list to pool | Ryo Nakamura | |
2024-02-11 | cleanup mscp_scan_thread related codes | Ryo Nakamura | |
2024-02-11 | change thread_list to thread_pool | Ryo Nakamura | |
2024-02-11 | change path_list to path_pool | Ryo Nakamura | |
2024-02-11 | add pool strcture and move src list to pool | Ryo Nakamura | |
2024-02-07 | cleanup error message handling | Ryo 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-06 | add .clang-format from Linux kernel and format sources | Ryo Nakamura | |
The exception is that ColumnLimit is 90. | |||
2024-02-06 | refactor error message-related functions | Ryo 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-06 | add -p option, preserving file timestamps | Ryo Nakamura | |
2024-02-05 | passing options via pointers in mscp_ssh_opts | Ryo Nakamura | |
We do not need static buf because we have already dropped python biding support. | |||
2024-02-04 | do not passing msg_fp via mscp opts | Ryo Nakamura | |
instead, mpr_* functions print messages to stdout or stderr directly. | |||
2024-01-18 | add SPDX-License-Identifier to source files | Ryo Nakamura | |
2024-01-18 | don't allocate char[PATH_MAX] for each file | Ryo Nakamura | |
This commit makes struct path allocation use strndup(). It reduices the memory footprint for struct path per file (issue #8). | |||
2023-11-25 | add -I interval option | Ryo Nakamura | |
-I INTERVAL option inserts sleep for interval (seconds) between SSH connection attempts (issue #7). | |||
2023-11-01 | write total transferred bytes and number of files | Ryo Nakamura | |
at the end of output when serverity is notice. | |||
2023-11-01 | change msg: thread[%d] to thread:%d | Ryo Nakamura | |
2023-08-03 | use pseudo glob/globfree for remote-glob when musl | Ryo 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-03 | add glob for source paths | Ryo Nakamura | |
https://github.com/upa/mscp/issues/3 | |||
2023-08-03 | cleanup wrappers for file operations | Ryo 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-07 | mscp: maintain mscp_thread structs in list | Ryo 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-03-25 | fix error handling when scan thread failed. | Ryo Nakamura | |
set chunk pool to fill to invoke copy threads when scan failed. | |||
2023-03-15 | add sem_create(), wrappign sem_init() for linux and sem_open() for macOS | Ryo Nakamura | |
2023-03-15 | macOS does not support sem_init. use sem_open instead | Ryo Nakamura | |
2023-03-15 | add comment to mscp_scan(), why usleep(100) | Ryo Nakamura | |
2023-03-15 | rename mscp_prepare to mscp_scan | Ryo Nakamura | |
2023-03-15 | set m->tid_prepare 0 to avoid duble join | Ryo Nakamura | |
2023-03-15 | mscp: add -u max_startups option. | Ryo Nakamura | |
pymscp also accepts keyword 'max_startups' (int). | |||
2023-03-15 | fix: when msg_fd is 0, use STDOUT_FILENO | Ryo Nakamura | |
2023-03-15 | do not fdopen(msg_fd) if msg_fd < 0 | Ryo Nakamura | |
2023-03-15 | introduce semaphore for concurrent connecting ssh | Ryo Nakamura | |
instead of ssh_estab_queue (delay-based approach). MaxStartups in sshd_config limits number of conccurent incoming ssh connections. mscp_opts->max_startups adjusts this value. | |||
2023-03-15 | cleanup message print functions | Ryo Nakamura | |
2023-03-14 | rename ssh_connect_flag to ssh_estab_queue | Ryo Nakamura | |
2023-03-14 | implement ssh_connect_flag | Ryo Nakamura | |
Each copy thread establishes SSH/SFTP connection to remote host. A delay is inserted between SSH connecting to the remote. | |||
2023-03-14 | cleanup mscp_prepare-related code | Ryo Nakamura | |
2023-03-13 | mscp_prepare() scans source paths in a thread. | Ryo Nakamura | |
This commit runs mscp_prepare() in a pthread. mscp copy threads run aysnchronously with mscp_prepare(). So, when mscp_prepare() has not finished yet (due to too many source files), we can start to copy files. | |||
2023-03-13 | revise walk_src_path. | Ryo Nakamura | |
In new walk_src_path, resolve dst path and resolve chunks are invoked when adding a path. | |||
2023-03-12 | fix cleanup | Ryo Nakamura | |
2023-03-11 | move direction from mscp_opts to mscp_init argument | Ryo Nakamura | |
2023-03-10 | fix uninitialized dst_path_is_dir bool | Ryo Nakamura | |
2023-03-04 | add doxygen for mscp.h | Ryo Nakamura | |