xref: /freebsd/crypto/openssh/regress/sftp-badcmds.sh (revision 19261079b74319502c6ffa1249920079f0f69a72)
1*19261079SEd Maste#	$OpenBSD: sftp-badcmds.sh,v 1.7 2020/03/13 03:18:45 djm Exp $
2ce3adf43SDag-Erling Smørgrav#	Placed in the Public Domain.
3ce3adf43SDag-Erling Smørgrav
4ce3adf43SDag-Erling Smørgravtid="sftp invalid commands"
5ce3adf43SDag-Erling Smørgrav
6ce3adf43SDag-Erling SmørgravDATA2=/bin/sh${EXEEXT}
7ce3adf43SDag-Erling SmørgravNONEXIST=/NONEXIST.$$
8ce3adf43SDag-Erling SmørgravGLOBFILES=`(cd /bin;echo l*)`
9ce3adf43SDag-Erling Smørgrav
10ce3adf43SDag-Erling Smørgravrm -rf ${COPY} ${COPY}.1 ${COPY}.2 ${COPY}.dd
11ce3adf43SDag-Erling Smørgrav
12ce3adf43SDag-Erling Smørgravrm -f ${COPY}
13ce3adf43SDag-Erling Smørgravverbose "$tid: get nonexistent"
14ce3adf43SDag-Erling Smørgravecho "get $NONEXIST $COPY" | ${SFTP} -D ${SFTPSERVER} >/dev/null 2>&1 \
15ce3adf43SDag-Erling Smørgrav	|| fail "get nonexistent failed"
16ce3adf43SDag-Erling Smørgravtest -f ${COPY} && fail "existing copy after get nonexistent"
17ce3adf43SDag-Erling Smørgrav
18ce3adf43SDag-Erling Smørgravrm -f ${COPY}.dd/*
19ce3adf43SDag-Erling Smørgravverbose "$tid: glob get to nonexistent directory"
20ce3adf43SDag-Erling Smørgravecho "get /bin/l* $NONEXIST" | ${SFTP} -D ${SFTPSERVER} >/dev/null 2>&1 \
21ce3adf43SDag-Erling Smørgrav        || fail "get nonexistent failed"
22ce3adf43SDag-Erling Smørgravfor x in $GLOBFILES; do
23ce3adf43SDag-Erling Smørgrav        test -f ${COPY}.dd/$x && fail "existing copy after get nonexistent"
24ce3adf43SDag-Erling Smørgravdone
25ce3adf43SDag-Erling Smørgrav
26ce3adf43SDag-Erling Smørgravrm -f ${COPY}
27ce3adf43SDag-Erling Smørgravverbose "$tid: put nonexistent"
28ce3adf43SDag-Erling Smørgravecho "put $NONEXIST $COPY" | ${SFTP} -D ${SFTPSERVER} >/dev/null 2>&1 \
29ce3adf43SDag-Erling Smørgrav	|| fail "put nonexistent failed"
30ce3adf43SDag-Erling Smørgravtest -f ${COPY} && fail "existing copy after put nonexistent"
31ce3adf43SDag-Erling Smørgrav
32ce3adf43SDag-Erling Smørgravrm -f ${COPY}.dd/*
33ce3adf43SDag-Erling Smørgravverbose "$tid: glob put to nonexistent directory"
34ce3adf43SDag-Erling Smørgravecho "put /bin/l* ${COPY}.dd" | ${SFTP} -D ${SFTPSERVER} >/dev/null 2>&1 \
35ce3adf43SDag-Erling Smørgrav        || fail "put nonexistent failed"
36ce3adf43SDag-Erling Smørgravfor x in $GLOBFILES; do
37ce3adf43SDag-Erling Smørgrav        test -f ${COPY}.dd/$x && fail "existing copy after nonexistent"
38ce3adf43SDag-Erling Smørgravdone
39ce3adf43SDag-Erling Smørgrav
40ce3adf43SDag-Erling Smørgravrm -f ${COPY}
41ce3adf43SDag-Erling Smørgravverbose "$tid: rename nonexistent"
42ce3adf43SDag-Erling Smørgravecho "rename $NONEXIST ${COPY}.1" | ${SFTP} -D ${SFTPSERVER} >/dev/null 2>&1 \
43ce3adf43SDag-Erling Smørgrav	|| fail "rename nonexist failed"
44ce3adf43SDag-Erling Smørgravtest -f ${COPY}.1 && fail "file exists after rename nonexistent"
45ce3adf43SDag-Erling Smørgrav
46ce3adf43SDag-Erling Smørgravrm -rf ${COPY} ${COPY}.dd
47ce3adf43SDag-Erling Smørgravcp $DATA $COPY
48ce3adf43SDag-Erling Smørgravmkdir ${COPY}.dd
49ce3adf43SDag-Erling Smørgravverbose "$tid: rename target exists (directory)"
50ce3adf43SDag-Erling Smørgravecho "rename $COPY ${COPY}.dd" | ${SFTP} -D ${SFTPSERVER} >/dev/null 2>&1 \
51ce3adf43SDag-Erling Smørgrav	|| fail "rename target exists (directory) failed"
52ce3adf43SDag-Erling Smørgravtest -f ${COPY} || fail "oldname missing after rename target exists (directory)"
53ce3adf43SDag-Erling Smørgravtest -d ${COPY}.dd || fail "newname missing after rename target exists (directory)"
54ce3adf43SDag-Erling Smørgravcmp $DATA ${COPY} >/dev/null 2>&1 || fail "corrupted oldname after rename target exists (directory)"
55ce3adf43SDag-Erling Smørgrav
56ce3adf43SDag-Erling Smørgravrm -f ${COPY}.dd/*
57ce3adf43SDag-Erling Smørgravrm -rf ${COPY}
58ce3adf43SDag-Erling Smørgravcp ${DATA2} ${COPY}
59ce3adf43SDag-Erling Smørgravverbose "$tid: glob put files to local file"
60ce3adf43SDag-Erling Smørgravecho "put /bin/l* $COPY" | ${SFTP} -D ${SFTPSERVER} >/dev/null 2>&1
61*19261079SEd Mastecmp ${DATA2} ${COPY} || fail "put succeeded when it should have failed"
62ce3adf43SDag-Erling Smørgrav
63ce3adf43SDag-Erling Smørgravrm -rf ${COPY} ${COPY}.1 ${COPY}.2 ${COPY}.dd
64ce3adf43SDag-Erling Smørgrav
65ce3adf43SDag-Erling Smørgrav
66