Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas De Schampheleire <patrickdepinguin@gmail.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 07/11] support/download: implement source-check in scp backend
Date: Thu,  3 Jan 2019 21:40:22 +0100	[thread overview]
Message-ID: <20190103204026.23512-8-patrickdepinguin@gmail.com> (raw)
In-Reply-To: <20190103204026.23512-1-patrickdepinguin@gmail.com>

From: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>

Note that this reintroduces BR2_SSH removed with
db9473bf6cd7bd12aa1f9faad0a917c973c33827 ("core/download: drop the SSH
command").

Signed-off-by: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
---
 Config.in               |  4 ++++
 package/pkg-download.mk |  1 +
 support/download/scp    | 13 +++++++++++++
 3 files changed, 18 insertions(+)

diff --git a/Config.in b/Config.in
index f965e9d6d8..03e4eb3928 100644
--- a/Config.in
+++ b/Config.in
@@ -136,6 +136,10 @@ config BR2_SCP
 	string "Secure copy (scp) command"
 	default "scp"
 
+config BR2_SSH
+	string "Secure shell (ssh) command"
+	default "ssh"
+
 config BR2_HG
 	string "Mercurial (hg) command"
 	default "hg"
diff --git a/package/pkg-download.mk b/package/pkg-download.mk
index cc04e316e2..e9506ae2a5 100644
--- a/package/pkg-download.mk
+++ b/package/pkg-download.mk
@@ -15,6 +15,7 @@ export BZR := $(call qstrip,$(BR2_BZR))
 export GIT := $(call qstrip,$(BR2_GIT))
 export HG := $(call qstrip,$(BR2_HG))
 export SCP := $(call qstrip,$(BR2_SCP))
+export SSH := $(call qstrip,$(BR2_SSH))
 export LOCALFILES := $(call qstrip,$(BR2_LOCALFILES))
 
 DL_WRAPPER = support/download/dl-wrapper
diff --git a/support/download/scp b/support/download/scp
index 55f588e157..c8fa58f952 100755
--- a/support/download/scp
+++ b/support/download/scp
@@ -7,17 +7,20 @@ set -e
 #
 # Options:
 #   -q          Be quiet.
+#   -C          Only check that the file exists remotely
 #   -o FILE     Copy to local file FILE.
 #   -f FILE     Copy from remote file FILE.
 #   -u URL      Download file at URL.
 #
 # Environment:
 #   SCP       : the scp command to call
+#   SSH       : the ssh command to use for checkonly
 
 verbose=
 while getopts "${BR_BACKEND_DL_GETOPTS}" OPT; do
     case "${OPT}" in
     q)  verbose=-q;;
+    C)  checkonly=1;;
     o)  output="${OPTARG}";;
     f)  filename="${OPTARG}";;
     u)  uri="${OPTARG}";;
@@ -33,6 +36,16 @@ shift $((OPTIND-1)) # Get rid of our options
 _scp() {
     eval ${SCP} "${@}"
 }
+_ssh() {
+    eval ${SSH} "${@}"
+}
+
+if [ -n "${checkonly}" ]; then
+    domain="${uri%%:*}"
+    path="${uri#*:}"
+    _ssh ${verbose} "${@}" "'${domain}'" ls "'${path}'" > /dev/null
+    exit ${?}
+fi
 
 # Remove any scheme prefix
 uri="${uri##scp://}"
-- 
2.18.1

  parent reply	other threads:[~2019-01-03 20:40 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-03 20:40 [Buildroot] [PATCH 00/11] support/download: fix scp and reintroduce source-check Thomas De Schampheleire
2019-01-03 20:40 ` [Buildroot] [PATCH 01/11] support/download: fix scp downloads Thomas De Schampheleire
2019-01-03 20:55   ` Yann E. MORIN
2019-01-03 21:03     ` Thomas De Schampheleire
2019-01-03 21:26       ` Yann E. MORIN
2019-01-03 21:07   ` Thomas Petazzoni
2019-01-24 10:47   ` Peter Korsgaard
2019-01-03 20:40 ` [Buildroot] [PATCH 02/11] support/download: fix scp download with scheme prefix 'scp://' Thomas De Schampheleire
2019-01-03 21:32   ` Yann E. MORIN
2019-01-03 20:40 ` [Buildroot] [PATCH 03/11] support/download: reintroduce 'source-check' target Thomas De Schampheleire
2019-01-03 21:17   ` Yann E. MORIN
2019-01-03 21:41     ` Peter Korsgaard
2019-01-04  9:07       ` Thomas De Schampheleire
2019-01-08 12:11         ` Thomas De Schampheleire
2019-01-15 10:59           ` Thomas De Schampheleire
2019-01-03 20:40 ` [Buildroot] [PATCH 04/11] support/download: implement source-check in hg backend Thomas De Schampheleire
2019-01-03 20:40 ` [Buildroot] [PATCH 05/11] support/download: implement source-check in wget backend Thomas De Schampheleire
2019-01-03 20:40 ` [Buildroot] [PATCH 06/11] support/download: implement source-check in file backend Thomas De Schampheleire
2019-01-03 20:40 ` Thomas De Schampheleire [this message]
2019-01-03 20:40 ` [Buildroot] [PATCH 08/11] support/download: implement source-check in git backend Thomas De Schampheleire
2019-01-03 20:59   ` Thomas Petazzoni
2019-01-03 22:18     ` Yann E. MORIN
2019-01-08 12:12     ` Thomas De Schampheleire
2019-01-03 20:40 ` [Buildroot] [PATCH 09/11] support/download: implement source-check in bzr backend Thomas De Schampheleire
2019-01-03 20:40 ` [Buildroot] [PATCH 10/11] support/download: implement source-check in cvs backend Thomas De Schampheleire
2019-01-03 20:40 ` [Buildroot] [PATCH 11/11] support/download: implement source-check in svn backend Thomas De Schampheleire
2019-01-03 20:46 ` [Buildroot] [PATCH 00/11] support/download: fix scp and reintroduce source-check Thomas Petazzoni
2019-01-03 20:54   ` Thomas De Schampheleire
2019-01-03 20:57     ` Thomas Petazzoni
2019-01-28  2:25       ` Ricardo Martincoski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190103204026.23512-8-patrickdepinguin@gmail.com \
    --to=patrickdepinguin@gmail.com \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox