440 Commits

Author SHA1 Message Date
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
c5afb99d67 fix wrong description for mscp_add_src_path and mscp_set_dst_path 2024-02-11 14:08:56 +09:00
Ryo Nakamura
45ba6b077e install-build-deps.sh has --dont-install and --platform options.
All docker files do not call isntall-build-deps.sh. Instead, cmake passes
REQUIREDPKGS to Dockerfiles, which is derived from the output of
./scripts/install-build-deps.sh --dont-install --platform PLATFORM.
This change enables caching package installaion during docker build.
2024-02-11 14:04:43 +09:00
Ryo Nakamura
d819f715c8 update REAMDE to fix the URL for single binary mscp 2024-02-07 17:19:14 +09:00
Ryo Nakamura
22150c268d update REAMDE to fix the URL for single binary mscp 2024-02-07 17:15:30 +09:00
Ryo Nakamura
f8f8cf1994 remove unnecessary \n 2024-02-07 16:58:17 +09:00
Ryo Nakamura
758c5e92b3 update doc/mscp.rst 2024-02-07 16:55:12 +09:00
Ryo Nakamura
2ef4267f72 bump version to 0.1.4 v0.1.4 2024-02-07 16:16:40 +09:00
Ryo Nakamura
1d8d853b30 fix manpage to add -g option 2024-02-07 15:14:29 +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
a9c59f744a update man and doc for adjusting to -p option 2024-02-07 14:32:36 +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
5119d5ae26 remove unused FindGSSAPI.cmake module 2024-02-06 23:24:57 +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
76892a69f9 do not build strlcat.c if HAVE_STRLCAT is true 2024-02-06 16:25:05 +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
304e71d5a0 remove (accidentally added) build-srpm.Dockerfile 2024-02-04 17:37:57 +09:00
Ryo Nakamura
ec663cc966 bump up container image versions and drop using CPack
We have already provided DEB packages in launchpad PPA and RPM packages
in COPR. Thus, we need no more deb/rpm packages in Github releases. The
single binary build of mscp is an execptio.

Updated container image versions:
- almalinux	8.8  -> 9.3
- rocky		8.8  -> 8.9, and 9.3 is added
- alpine	3.17 -> 3.19
2024-02-04 17:22:31 +09:00
Ryo Nakamura
d57ed4149d drop python binding support 2024-02-04 16:18:27 +09:00
Ryo Nakamura
7f5fcc617c add doc/DEVELOP.md instead of doc/README.md 2024-02-04 12:05:18 +09:00
Ryo Nakamura
36e45cd5f3 change build target update-mscp-rst to update-rst 2024-02-04 11:50:14 +09:00
Ryo Nakamura
25207cf865 build deb sources inside a container
A new build target `build-deb` builds mscp deb inside a docker
container. All debuild -us -uc outputs are copied to build/debbuild
directory.
2024-02-04 11:35:20 +09:00
Ryo Nakamura
306a00ced5 build source rpm inside a container
A new build target `build-srpm` builds mscp src.rpm inside a docker
container. The src.rpm can be published at COPR.
2024-02-04 10:58:11 +09:00
Ryo Nakamura
65025b9022 update README for building on FreeBSD 2024-01-20 22:09:02 +09:00
Ryo Nakamura
bbc2fbdacf fix install-build-deps.sh to run on FreeBSD 2024-01-20 22:05:39 +09:00
Ryo Nakamura
331bab6b41 run build on freebsd action in dev and main branches 2024-01-20 21:42:44 +09:00
Ryo Nakamura
1e375abb88 add github actions to build mscp in FreeBSD 2024-01-21 05:56:53 +09:00
Ryo Nakamura
7ab5cc3ce9 make it buildable at FreeBSD 2024-01-21 04:50:34 +09:00
Ryo Nakamura
60977a8e7a update doc version
and remove --dirty from git-describe-based versioning
2024-01-18 13:52:26 +09:00
Ryo Nakamura
020dadfbaf bump version to 0.1.3 v0.1.3 2024-01-18 13:20:02 +09:00
Ryo Nakamura
16086ffdb3 import rpm pgp key before yum install in Alama
See https://cloudlinux.zendesk.com/hc/en-us/articles/12225072530204-yum-update-error-Error-GPG-check-FAILED
2024-01-18 13:17:57 +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
4b34118a88 add a test case test_copy_file_under_root_to_dir
Coping a file under / (root) to a remote directory causes
corrupted remote path (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
Ryo Nakamura
1479607efe add manpage for mscp
doc/mscp.rst is generate from mscp.1 by make generate-mscp-rst.
README is also updateded to reference doc/mscp.rst.
2024-01-14 18:07:17 +09:00
Ryo Nakamura
6f4038a480 bump libssh to libssh-0.10.6-2-g6f1b1e76
libssh 0.10.6 has a regression in IPv6 parsing, so we pick
stable-0.10 that includes the fixes.

https://gitlab.com/libssh/libssh-mirror/-/issues/227
2024-01-06 15:11:20 +09:00
Ryo Nakamura
71a0998e9b bump libssh to 0.10.6
libssh 0.10.6 includes some security fixes, e.g., CVE-2023-48795.
2024-01-04 21:17:16 +09:00
Ryo Nakamura
e3484dbc05 update README
install mscp from ppa for ubuntu
2023-12-10 23:56:20 +09:00
Ryo Nakamura
a107681da0 fix Description in debian/control 2023-12-10 23:18:58 +09:00
Ryo Nakamura
e0f412722b add debian directory 2023-12-10 22:14:45 +09:00
Ryo Nakamura
eb5a9e3035 dockerfile: do not run ldconfig in alpine 2023-12-10 21:17:31 +09:00
Ryo Nakamura
a6501a16bf dockerfile: do ldconfig after pymscp installation 2023-12-10 20:56:38 +09:00
Ryo Nakamura
abe94897ae cmake: add INSTALL_EXECUTABLE_ONLY option 2023-12-10 17:06:57 +09:00