Ryo Nakamura
e56c2d7050
Update README.md
2022-12-11 22:22:05 +09:00
Ryo Nakamura
38633e31bd
add 'z' to tar in release.yml...
...
and fix typo in README
2022-12-11 22:16:29 +09:00
Ryo Nakamura
f6d9a212b9
update README.md. add demo movie
2022-12-11 15:15:06 +09:00
Ryo Nakamura
a8db569fbd
bump version to 0.0.5 and update README
v0.0.5
2022-12-11 14:20:13 +09:00
Ryo Nakamura
3d98451bba
set default nr_threads to floor(log(cores) * 2) + 1)
...
This change prevents mscp from establishing too many ssh connections
on many-core machines in default.
2022-12-11 14:01:52 +09:00
Ryo Nakamura
d27db01d8d
use pthread_cleanup to acquire and release lock
...
In chunk_prepare(), if multiple threads wait for acquiring f->lock,
and then pthread_cancel() is called, the waiting threads are never
canceled because pthread_mutex_lock() is not a cancellation point.
So, use pthread_cleanup_push/pop to release the lock.
2022-12-11 13:23:41 +09:00
Ryo Nakamura
45cde99a85
allocate headroom for SFTP header
...
This commit makes ssh_buffer_new_size() can insert headroom. This
headroom can eliminate memcpy involved in ssh_buffer_prepend_data()
for inserting SFTP common header.
2022-12-10 21:48:24 +09:00
Ryo Nakamura
6ae3f0f9f1
set default NR_AHEAD to 32
2022-12-08 18:01:50 +09:00
Ryo Nakamura
847c80276a
fix final progress output
2022-12-06 20:04:04 +09:00
Ryo Nakamura
c4ea9a1e78
add ssh_buffer_new_size and ssh_buffer_add_func to libssh
...
sftp_async_write() with these functions reduces
1. realloc_buffer by ssh_buffer_new_size()
2. memcpy from read data to ssh buffer by ssh_buffer_add_func()
2022-12-06 15:02:14 +09:00
Ryo Nakamura
289293e812
change prompt for ssh key passphrase
2022-12-05 22:27:53 +09:00
Ryo Nakamura
1441873db6
reuse ctrl sftp session for the first copy thread
2022-12-05 21:47:00 +09:00
Ryo Nakamura
a2caa93d2a
update libssh build options
2022-12-05 19:46:02 +09:00
Ryo Nakamura
e1d14623f4
set TCP_NODELAY by default and introduce -N option to disable it
2022-12-04 21:32:48 +09:00
Ryo Nakamura
3b794ab51b
remove unused code and introduce -b buf_sz option
...
This commit removes ifdef ASYNC_WRITE. So, mscp always depends on
the patched libssh.
2022-12-03 20:48:43 +09:00
Ryo Nakamura
50c6781811
little cleanup
2022-12-02 23:35:45 +09:00
Ryo Nakamura
5846c6b6a9
cache passphrase for private key for later connections.
2022-12-02 23:20:23 +09:00
Ryo Nakamura
03a3a6dc4b
add auth callback for input passphrase of privkey
2022-12-02 22:28:56 +09:00
Ryo Nakamura
03b857b51a
add -M hmac option
2022-12-02 21:13:13 +09:00
Ryo Nakamura
d646fc1f89
use sigalrm for printing progress bar
2022-11-28 00:14:05 +09:00
Ryo Nakamura
5188cf6df6
add ETA to progress print
2022-11-27 20:36:24 +09:00
Ryo Nakamura
130e735e65
skip sftp_free() inappropriately
2022-11-27 19:48:13 +09:00
Ryo Nakamura
e3ed4f89d2
update REAMDE
2022-11-27 00:37:07 +09:00
Ryo Nakamura
db1431ed6a
only the last thread changes dst file permission
2022-11-27 00:06:39 +09:00
Ryo Nakamura
bf3ee25bae
add libssh-0.9.6.patch
2022-11-26 23:16:56 +09:00
Ryo Nakamura
8cc964ca8a
fix duplicate error message on ssh auth failed.
...
and fix the final \n with -q
2022-11-26 17:34:24 +09:00
Ryo Nakamura
e0fe88c9c4
update README for v0.0.4
2022-11-26 01:30:25 +09:00
Ryo Nakamura
73cfee29aa
bump version to 0.0.4
...
mistake for v0.0.3 releasing...
v0.0.4
2022-11-26 00:48:24 +09:00
Ryo Nakamura
392ffc0d0e
add workflow_dispatch to release.yml
v0.0.3
2022-11-26 00:21:06 +09:00
Ryo Nakamura
612c3c41d4
github: add source-release job
...
Default source tar balls in github releases do not include
submodules. source-release job uploads mscp tar ball with patched
libssh.
2022-11-26 00:13:49 +09:00
Ryo Nakamura
876a60382c
bump version to 0.0.2
v0.0.2
2022-11-24 23:27:02 +09:00
Ryo Nakamura
0f0354f848
fix comments on release.yml
2022-11-24 23:26:04 +09:00
Ryo Nakamura
33d1adcdbb
fix codeql.yml
2022-11-24 23:20:51 +09:00
Ryo Nakamura
adbcb3701e
update README
2022-11-24 23:18:40 +09:00
Ryo Nakamura
5495e5dd61
fix codeql.yml: init submodules and apply patch to libssh
2022-11-24 23:05:45 +09:00
Ryo Nakamura
52fc2a71b0
fix build-macos.yml
2022-11-24 23:03:22 +09:00
Ryo Nakamura
b46a6f15c1
update github workflows to fit patched libssh
2022-11-24 22:59:59 +09:00
Ryo Nakamura
6f9aaeab80
update README: use patch instead of git apply
2022-11-20 18:20:10 +09:00
Ryo Nakamura
fc2d34eaee
remove sudo
2022-11-20 18:13:26 +09:00
Ryo Nakamura
e22bc5523b
fix CPACK build dependency
2022-11-20 18:03:56 +09:00
Ryo Nakamura
b6b283f8b5
set WITH_EXAMPLES OFF
2022-11-20 17:04:22 +09:00
Ryo Nakamura
4b5d300fa4
update README for cmkae with libssh
2022-11-20 16:50:00 +09:00
Ryo Nakamura
dc0dd60287
build libssh-static from mscp cmake
2022-11-20 16:14:07 +09:00
Ryo Nakamura
4129a47a3a
add ignore dirty for libssh
2022-11-20 15:38:25 +09:00
Ryo Nakamura
7079ff6542
add libssh 0.10.4 as submodule
2022-11-20 15:37:15 +09:00
Ryo Nakamura
8e266517da
use list(LENGTH) to iterate DIST_ lists
2022-11-20 02:02:43 +09:00
Ryo Nakamura
8395c05d67
fix CMakeLists.txt
...
* install mscp from package at docker build phase.
* add docker-*-all custom targets.
2022-11-20 00:37:01 +09:00
Ryo Nakamura
04b7ec3e4b
cleanup docker-related commands in cmake
...
TODO: add bruild procedure for async_write
2022-11-19 23:40:29 +09:00
Ryo Nakamura
e3c9c82bb8
Merge branch 'async-write'
2022-11-18 22:33:13 +09:00
Ryo Nakamura
dca0241824
add O_TRUNC when the first open() for a file
2022-11-18 22:30:34 +09:00