X-Git-Url: https://www.tinc-vpn.org/git/browse?a=blobdiff_plain;f=test%2Fsptps-basic.test;h=56e3cd00e089a601227fff00acb6bceae0e1eb6d;hb=cfe507c299935bd231be698b8a426cc730f52936;hp=2abb99c0f6a010a366585eae59d8f6e2669bd4d0;hpb=2cd8e2b8e8d60fdeb633afe54eaf38e18afb04dc;p=tinc diff --git a/test/sptps-basic.test b/test/sptps-basic.test index 2abb99c0..56e3cd00 100755 --- a/test/sptps-basic.test +++ b/test/sptps-basic.test @@ -2,31 +2,43 @@ . ./testlib.sh -# Generate keys +echo [STEP] Skip this test if we did not compile sptps_test -mkdir -p $d1 +test -e "$SPTPS_TEST" -a -e "$SPTPS_KEYPAIR" || exit $EXIT_SKIP_TEST -openssl ecparam -genkey -name secp521r1 -noout -out $d1/server.priv -openssl ecparam -genkey -name secp521r1 -noout -out $d1/client.priv -yes '' | openssl req -new -pubkey -key $d1/server.priv -noout -out $d1/server.pub -echo -yes '' | openssl req -new -pubkey -key $d1/client.priv -noout -out $d1/client.pub -echo +port=30080 -# Test transfer of a simple file. +server_priv="$DIR_FOO/server.priv" +client_priv="$DIR_FOO/client.priv" +server_pub="$DIR_FOO/server.pub" +client_pub="$DIR_FOO/client.pub" -(sleep 1; $sptps_test -q $d1/client.priv $d1/server.pub localhost 32750 <../README) & -$sptps_test $d1/server.priv $d1/client.pub 32750 >$d1/out1 -cmp $d1/out1 ../README +echo [STEP] Generate keys -$sptps_test -q $d1/server.priv $d1/client.pub 32750 <../NEWS & -sleep 1 -$sptps_test $d1/client.priv $d1/server.pub localhost 32750 > $d1/out2 -cmp $d1/out2 ../NEWS +mkdir -p "$DIR_FOO" +$SPTPS_KEYPAIR "$server_priv" "$server_pub" +$SPTPS_KEYPAIR "$client_priv" "$client_pub" -# Datagram mode +echo [STEP] Test transfer of a simple file -$sptps_test -dq $d1/server.priv $d1/client.pub 32750 <../COPYING & -sleep 1 -sleep 1 | $sptps_test -dq $d1/client.priv $d1/server.pub localhost 32750 >$d1/out3 -cmp $d1/out3 ../COPYING +reference=testlib.sh + +( + sleep 3 + $SPTPS_TEST -4 -q "$client_priv" "$server_pub" localhost $port <"$reference" +) & + +$SPTPS_TEST -4 "$server_priv" "$client_pub" $port >"$DIR_FOO/out1" +diff -w "$DIR_FOO/out1" "$reference" + +$SPTPS_TEST -4 -q "$server_priv" "$client_pub" $port <"$reference" & +sleep 3 +$SPTPS_TEST -4 "$client_priv" "$server_pub" localhost $port >"$DIR_FOO/out2" +diff -w "$DIR_FOO/out2" "$reference" + +echo [STEP] Datagram mode + +$SPTPS_TEST -4 -dq "$server_priv" "$client_pub" $port <"$reference" & +sleep 3 +sleep 3 | $SPTPS_TEST -4 -dq "$client_priv" "$server_pub" localhost $port >"$DIR_FOO/out3" +diff -w "$DIR_FOO/out3" "$reference"