#!/bin/sh # Copyright (C) 2001 by Martin Pool # This program is distributable under the terms of the GNU GPL (see # COPYING) # We don't really want to start the server listening, because that # might interfere with the security or operation of the test machine. # Instead we use the fake-connect feature to dynamically assign a pair # of ports. # Having started the server we try some basic operations against it: # getting a list of module # listing files in a module # retrieving a module # uploading to a module # checking the log file # password authentication # TODO: Put the common framework in a common file, so that we can have # subtests fail and keep going. . "$suitedir/rsync.fns" SSH="$scratchdir/pretend-ssh" cat >"$SSH" <<'EOT' while : ; do case "$1" in -*) shift ;; localhost) shift; break ;; *) exit 1 ;; esac done eval "${@}" EOT chmod +x "$SSH" build_rsyncd_conf cd "$scratchdir" ln -s test-rsyncd.conf rsyncd.conf $RSYNC -ve $SSH --rsync-path="$RSYNC" localhost:: RSYNC_CONNECT_PROG="$RSYNC --config=$conf --daemon" export RSYNC_CONNECT_PROG $RSYNC -v localhost::