From 2b71c4bf8c8c072661dbe0c1a0e7bfe1539cb439 Mon Sep 17 00:00:00 2001 From: Ryo Nakamura Date: Sat, 25 Nov 2023 15:49:09 +0900 Subject: add -P, equivalent to -p for just compatibility and add a test case for -p and -P --- src/main.c | 6 ++++-- test/test_e2e.py | 8 ++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main.c b/src/main.c index 777dc2a..c51bcb4 100644 --- a/src/main.c +++ b/src/main.c @@ -47,7 +47,7 @@ void usage(bool print_help) { " -r no effect\n" "\n" " -l LOGIN_NAME login name\n" - " -p PORT port number\n" + " -p/-P PORT port number\n" " -F CONFIG path to user ssh config (default ~/.ssh/config)\n" " -i IDENTITY identity file for public key authentication\n" " -c CIPHER cipher spec\n" @@ -255,7 +255,7 @@ int main(int argc, char **argv) o.severity = MSCP_SEVERITY_WARN; while ((ch = getopt(argc, argv, - "n:m:u:I:s:S:a:b:vqDrl:p:i:F:c:M:C:g:HdNh")) != -1) { + "n:m:u:I:s:S:a:b:vqDrl:P:p:i:F:c:M:C:g:HdNh")) != -1) { switch (ch) { case 'n': o.nr_threads = atoi(optarg); @@ -305,6 +305,8 @@ int main(int argc, char **argv) } strncpy(s.login_name, optarg, MSCP_SSH_MAX_LOGIN_NAME - 1); break; + case 'P': + /* fallthough for compatibility with scp */ case 'p': if (strlen(optarg) > MSCP_SSH_MAX_PORT_STR - 1) { fprintf(stderr, "long port string: %s\n", optarg); diff --git a/test/test_e2e.py b/test/test_e2e.py index f01b55d..4332f6c 100644 --- a/test/test_e2e.py +++ b/test/test_e2e.py @@ -300,6 +300,14 @@ def test_dont_truncate_dst(mscp, src_prefix, dst_prefix): assert md5_before == md5_after f.cleanup() +@pytest.mark.parametrize("src_prefix, dst_prefix", param_remote_prefix) +@pytest.mark.parametrize("src, dst", param_single_copy) +def test_set_port(mscp, src_prefix, dst_prefix, src, dst): + src.make() + run2ng([mscp, "-H", "-vvv", "-p", 21, src_prefix + src.path, dst_prefix + dst.path]) + run2ng([mscp, "-H", "-vvv", "-P", 21, src_prefix + src.path, dst_prefix + dst.path]) + src.cleanup() + @pytest.mark.parametrize("src_prefix, dst_prefix", param_remote_prefix) def test_set_conn_interval(mscp, src_prefix, dst_prefix): srcs = [] -- cgit v1.2.3