]> git.ipfire.org Git - thirdparty/openssh-portable.git/commitdiff
ssh-copy-id: add -x option (for debugging)
authorPhilip Hands <phil@hands.com>
Thu, 18 May 2023 16:20:55 +0000 (18:20 +0200)
committerDarren Tucker <dtucker@dtucker.net>
Thu, 25 May 2023 08:24:32 +0000 (18:24 +1000)
This option causes the ssh-copy-id to run with set -x

SSH-Copy-ID-Upstream: a0ee367ea8c0a29c8b4515245e408d2d349e7844

contrib/ssh-copy-id
contrib/ssh-copy-id.1

index 8ef1cc4b49b30e0d30f10e70203d7a993b32c25f..f29377e8c01901b99243ff032cf06eac93087cdc 100644 (file)
@@ -66,10 +66,11 @@ SSH="ssh -a -x"
 umask 0177
 
 usage () {
-  printf 'Usage: %s [-h|-?|-f|-n|-s] [-i [identity_file]] [-p port] [-F alternative ssh_config file] [[-o <ssh -o options>] ...] [user@]hostname\n' "$0" >&2
+  printf 'Usage: %s [-h|-?|-f|-n|-s|-x] [-i [identity_file]] [-p port] [-F alternative ssh_config file] [[-o <ssh -o options>] ...] [user@]hostname\n' "$0" >&2
   printf '\t-f: force mode -- copy keys without trying to check if they are already installed\n' >&2
   printf '\t-n: dry run    -- no keys are actually copied\n' >&2
   printf '\t-s: use sftp   -- use sftp instead of executing remote-commands. Can be useful if the remote only allows sftp\n' >&2
+  printf '\t-x: debug      -- enables -x in this shell, for debugging\n' >&2
   printf '\t-h|-?: print this help\n' >&2
   exit 1
 }
@@ -112,7 +113,7 @@ if [ -n "$SSH_AUTH_SOCK" ] && ssh-add -L >/dev/null 2>&1 ; then
   GET_ID="ssh-add -L"
 fi
 
-while getopts "i:o:p:F:fnsh?" OPT
+while getopts "i:o:p:F:fnsxh?" OPT
 do
   case "$OPT" in
     i)
@@ -135,6 +136,9 @@ do
     s)
       SFTP=sftp
       ;;
+    x)
+      set -x
+      ;;
     h|\?)
       usage
       ;;
index bf97e554126fcdad0dd5e11f6ecbe79ceb4846fc..79d976c773c8b3c369f5a784ac59d5e4b2c15427 100644 (file)
@@ -32,6 +32,7 @@ THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 .Op Fl f
 .Op Fl n
 .Op Fl s
+.Op Fl x
 .Op Fl i Op Ar identity_file
 .Op Fl p Ar port
 .Op Fl o Ar ssh_option
@@ -91,6 +92,11 @@ With this option the user's
 .Pa ~/.ssh/authorized_keys
 file will be downloaded, modified locally and uploaded with sftp.
 This option is useful if the server has restrictions on commands which can be used on the remote side.
+.It Fl x
+This option is for debugging the
+.Nm
+script itself.
+It sets the shell's -x flag, so that you can see the commands being run.
 .It Fl h , Fl ?
 Print Usage summary
 .It Fl p Ar port , Fl o Ar ssh_option