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