#!/bin/bash
# Copyright 2017 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

#### CATEGORY=Device management
### invoke sftp with the build ssh config

## usage: fx sftp <arguments to sftp>
##
## This command invokes sftp (one of SSH's file copy tools) with
## Fuchsia's SSH configuration.  Run "sftp -h" to see the options that
## sftp accepts.
##
## Example usage:
##
##   fx sftp "[$(fx get-device-addr)]:source_file" dest_file

source "$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"/lib/vars.sh || exit $?
fx-config-read

case $1 in
  -h|--help)
  fx-command-help
  exit 0
  ;;
esac

# Make sure the ssh config is present and has the expected private key
check-ssh-config

sftp -F "${FUCHSIA_BUILD_DIR}/ssh-keys/ssh_config" "$@"
