11305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood#!/bin/sh 21305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood# $OpenBSD: scp-ssh-wrapper.sh,v 1.2 2005/12/14 04:36:39 dtucker Exp $ 31305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood# Placed in the Public Domain. 41305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 51305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodprintname () { 61305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood NAME=$1 71305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood save_IFS=$IFS 81305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood IFS=/ 91305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood set -- `echo "$NAME"` 101305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood IFS="$save_IFS" 111305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood while [ $# -ge 1 ] ; do 121305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood if [ "x$1" != "x" ]; then 131305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "D0755 0 $1" 141305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood fi 151305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood shift; 161305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood done 171305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood} 181305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 191305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood# Discard all but last argument. We use arg later. 201305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodwhile test "$1" != ""; do 211305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood arg="$1" 221305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood shift 231305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwooddone 241305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 251305e95ba6ff9fa202d0818caf10405df4b0f648Mike LockwoodBAD="../../../../../../../../../../../../../${DIR}/dotpathdir" 261305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 271305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodcase "$SCPTESTMODE" in 281305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodbadserver_0) 291305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "D0755 0 /${DIR}/rootpathdir" 301305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "C755 2 rootpathfile" 311305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "X" 321305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood ;; 331305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodbadserver_1) 341305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "D0755 0 $BAD" 351305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "C755 2 file" 361305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "X" 371305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood ;; 381305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodbadserver_2) 391305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "D0755 0 $BAD" 401305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "C755 2 file" 411305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "X" 421305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood ;; 431305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodbadserver_3) 441305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood printname $BAD 451305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "C755 2 file" 461305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "X" 471305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood ;; 481305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodbadserver_4) 491305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood printname $BAD 501305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "D0755 0 .." 511305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "C755 2 file" 521305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood echo "X" 531305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood ;; 541305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood*) 551305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood exec $arg 561305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood ;; 571305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodesac 58