11305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood# $OpenBSD: sftp-batch.sh,v 1.4 2009/08/13 01:11:55 djm Exp $ 21305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood# Placed in the Public Domain. 31305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 41305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodtid="sftp batchfile" 51305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 61305e95ba6ff9fa202d0818caf10405df4b0f648Mike LockwoodDATA=/bin/ls${EXEEXT} 71305e95ba6ff9fa202d0818caf10405df4b0f648Mike LockwoodCOPY=${OBJ}/copy 81305e95ba6ff9fa202d0818caf10405df4b0f648Mike LockwoodBATCH=${OBJ}/sftp.bb 91305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 101305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodrm -rf ${COPY} ${COPY}.1 ${COPY}.2 ${COPY}.dd ${BATCH}.* 111305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 121305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodcat << EOF > ${BATCH}.pass.1 131305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood get $DATA $COPY 141305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood put ${COPY} ${COPY}.1 151305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood rm ${COPY} 161305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood -put ${COPY} ${COPY}.2 171305e95ba6ff9fa202d0818caf10405df4b0f648Mike LockwoodEOF 181305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 191305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodcat << EOF > ${BATCH}.pass.2 201305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood # This is a comment 211305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 221305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood # That was a blank line 231305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood ls 241305e95ba6ff9fa202d0818caf10405df4b0f648Mike LockwoodEOF 251305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 261305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodcat << EOF > ${BATCH}.fail.1 271305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood get $DATA $COPY 281305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood put ${COPY} ${COPY}.3 291305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood rm ${COPY}.* 301305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood # The next command should fail 311305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood put ${COPY}.3 ${COPY}.4 321305e95ba6ff9fa202d0818caf10405df4b0f648Mike LockwoodEOF 331305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 341305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodcat << EOF > ${BATCH}.fail.2 351305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood # The next command should fail 361305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood jajajajaja 371305e95ba6ff9fa202d0818caf10405df4b0f648Mike LockwoodEOF 381305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 391305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodverbose "$tid: good commands" 401305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood${SFTP} -b ${BATCH}.pass.1 -D ${SFTPSERVER} >/dev/null 2>&1 \ 411305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood || fail "good commands failed" 421305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 431305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodverbose "$tid: bad commands" 441305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood${SFTP} -b ${BATCH}.fail.1 -D ${SFTPSERVER} >/dev/null 2>&1 \ 451305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood && fail "bad commands succeeded" 461305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 471305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodverbose "$tid: comments and blanks" 481305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood${SFTP} -b ${BATCH}.pass.2 -D ${SFTPSERVER} >/dev/null 2>&1 \ 491305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood || fail "comments & blanks failed" 501305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 511305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodverbose "$tid: junk command" 521305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood${SFTP} -b ${BATCH}.fail.2 -D ${SFTPSERVER} >/dev/null 2>&1 \ 531305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood && fail "junk command succeeded" 541305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 551305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwoodrm -rf ${COPY} ${COPY}.1 ${COPY}.2 ${COPY}.dd ${BATCH}.* 561305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 571305e95ba6ff9fa202d0818caf10405df4b0f648Mike Lockwood 58