From 0da05fe981d2a45caf556ed0d4485bb351eedb78 Mon Sep 17 00:00:00 2001 From: Ole Tange Date: Tue, 30 Aug 2022 23:43:46 +0200 Subject: [PATCH] Fixed bug #62924: Allow sshpass password in $SSHPASS. --- src/parallel | 1 + testsuite/tests-to-run/parallel-local-ssh1.sh | 2 ++ testsuite/wanted-results/parallel-local-ssh1 | 1 + 3 files changed, 4 insertions(+) diff --git a/src/parallel b/src/parallel index 32d464d3..11d3309e 100755 --- a/src/parallel +++ b/src/parallel @@ -6895,6 +6895,7 @@ sub new($$) { # user[:pass] if($userpw =~ s/:(.*)//) { $password = $1; + if($password eq "") { $password = $ENV{'SSHPASS'} } if(not ::which("sshpass")) { ::error("--sshlogin with password requires sshpass installed"); ::wait_and_exit(255); diff --git a/testsuite/tests-to-run/parallel-local-ssh1.sh b/testsuite/tests-to-run/parallel-local-ssh1.sh index fd9bb68d..e4d15b70 100644 --- a/testsuite/tests-to-run/parallel-local-ssh1.sh +++ b/testsuite/tests-to-run/parallel-local-ssh1.sh @@ -30,6 +30,8 @@ par_sshpass_with_password() { echo '### sshpass' echo OK | parallel -S "sshpass -p $withpassword ssh withpassword@lo:22" echo echo OK | parallel -S withpassword:"$withpassword"@lo:22 echo + export SSHPASS="$withpassword" + echo OK | parallel -S withpassword:@lo:22 echo } par_ssh_ssh() { diff --git a/testsuite/wanted-results/parallel-local-ssh1 b/testsuite/wanted-results/parallel-local-ssh1 index 2bc18daf..f72e6403 100644 --- a/testsuite/wanted-results/parallel-local-ssh1 +++ b/testsuite/wanted-results/parallel-local-ssh1 @@ -100,6 +100,7 @@ par_sshlogin_with_comma OK par_sshpass_with_password ### sshpass par_sshpass_with_password OK par_sshpass_with_password OK +par_sshpass_with_password OK par_stop_if_no_hosts_left ### Stop if all hosts are filtered and there are no hosts left to run on par_stop_if_no_hosts_left parallel: Warning: Removed no-such.host. par_stop_if_no_hosts_left parallel: Error: Cannot run any jobs.