1# $OpenBSD: banner.sh,v 1.4 2021/08/08 06:38:33 dtucker Exp $ 2# Placed in the Public Domain. 3 4tid="banner" 5echo "Banner $OBJ/banner.in" >> $OBJ/sshd_proxy 6 7rm -f $OBJ/banner.out $OBJ/banner.in $OBJ/empty.in 8touch $OBJ/empty.in 9 10trace "test missing banner file" 11verbose "test $tid: missing banner file" 12( ${SSH} -F $OBJ/ssh_proxy otherhost true 2>$OBJ/banner.out && \ 13 cmp $OBJ/empty.in $OBJ/banner.out ) || \ 14 fail "missing banner file" 15 16for s in 0 10 100 1000 10000 100000 ; do 17 if [ "$s" = "0" ]; then 18 # create empty banner 19 touch $OBJ/banner.in 20 elif [ "$s" = "10" ]; then 21 # create 10-byte banner file 22 echo "abcdefghi" >$OBJ/banner.in 23 else 24 # increase size 10x 25 cp $OBJ/banner.in $OBJ/banner.out 26 for i in 0 1 2 3 4 5 6 7 8 ; do 27 cat $OBJ/banner.out >> $OBJ/banner.in 28 done 29 fi 30 31 trace "test banner size $s" 32 verbose "test $tid: size $s" 33 ( ${SSH} -F $OBJ/ssh_proxy otherhost true 2>$OBJ/banner.out && \ 34 cmp $OBJ/banner.in $OBJ/banner.out ) || \ 35 fail "banner size $s mismatch" 36done 37 38trace "test suppress banner (-q)" 39verbose "test $tid: suppress banner (-q)" 40# ssh-log-wrapper drops "-q" to preserve debug output so use ssh directly 41# for just this test. 42( ${REAL_SSH} -q -F $OBJ/ssh_proxy otherhost true 2>$OBJ/banner.out && \ 43 cmp $OBJ/empty.in $OBJ/banner.out ) || \ 44 fail "suppress banner (-q)" 45 46rm -f $OBJ/banner.out $OBJ/banner.in $OBJ/empty.in 47