diff options
author | Daniel Friesel <derf@finalrewind.org> | 2018-09-30 10:14:33 +0200 |
---|---|---|
committer | Daniel Friesel <derf@finalrewind.org> | 2018-09-30 10:14:33 +0200 |
commit | 164a257c3e0af90736833e0febcfddd3ba2c285e (patch) | |
tree | dbb7d8adc0a58dee12936e5e8fef8c978374fb8d /examples/caretaker-ssh-command | |
parent | c968d64b95f3b953093c7020730717ea7e7123cc (diff) |
Support non-standard ssh ports without ~/.ssh/config adjustments
Diffstat (limited to 'examples/caretaker-ssh-command')
-rwxr-xr-x | examples/caretaker-ssh-command | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/examples/caretaker-ssh-command b/examples/caretaker-ssh-command index 456a97d..352d22e 100755 --- a/examples/caretaker-ssh-command +++ b/examples/caretaker-ssh-command @@ -10,15 +10,18 @@ # Change this to reflect your settings PKG_PROTO='ssh' -PKG_UAH='derf@aneurysm' +PKG_UAH='derf@pkgroot.finalrewind.org' PKG_PATH='/home/derf/var/packages_root' +PKG_PORT='2222' # Change this to the location of your pkglist script (if non-default) PKG_LIST=${PKG_PATH}/pkglist args=(${(z)SSH_ORIGINAL_COMMAND}) - +# Note: This check accepts connections on ports 22 (standard, PKG_PORT unset) +# and 2222 (non-standard, PKG_PORT set). You can remove the second block if you +# only use port 22. if [[ \ ( \ ${args[1]} == "PKG_PATH=\"${PKG_PATH}\"" && \ @@ -27,6 +30,13 @@ if [[ \ ${args[4]} == ${PKG_LIST} && \ ${#args} == 4 \ ) || ( \ + ${args[1]} == "PKG_PATH=\"${PKG_PATH}\"" && \ + ${args[2]} == "PKG_UAH=\"${PKG_UAH}\"" && \ + ${args[3]} == "PKG_PORT=\"${PKG_PORT}\"" && \ + ${args[4]} == "PKG_PROTO=\"${PKG_PROTO}\"" && \ + ${args[5]} == ${PKG_LIST} && \ + ${#args} == 5 \ + ) || ( \ ${args[1]} == 'git-'(upload|receive)'-pack' && \ ${args[2]} != *'../'* && \ ${args[2]} == \'${PKG_ROOT}/*\' && \ |