#!/bin/sh # $OpenBSD: scp-ssh-wrapper.sh,v 1.2 2005/12/14 04:36:39 dtucker Exp $ # Placed in the Public Domain. printname () { NAME=$1 save_IFS=$IFS IFS=/ set -- `echo "$NAME"` IFS="$save_IFS" while [ $# -ge 1 ] ; do if [ "x$1" != "x" ]; then echo "D0755 0 $1" fi shift; done } # Discard all but last argument. We use arg later. while test "$1" != ""; do arg="$1" shift done BAD="../../../../../../../../../../../../../${DIR}/dotpathdir" case "$SCPTESTMODE" in badserver_0) echo "D0755 0 /${DIR}/rootpathdir" echo "C755 2 rootpathfile" echo "X" ;; badserver_1) echo "D0755 0 $BAD" echo "C755 2 file" echo "X" ;; badserver_2) echo "D0755 0 $BAD" echo "C755 2 file" echo "X" ;; badserver_3) printname $BAD echo "C755 2 file" echo "X" ;; badserver_4) printname $BAD echo "D0755 0 .." echo "C755 2 file" echo "X" ;; *) exec $arg ;; esac