From 91502a5e019d431e3584fd34b7178fb7b58b5050 Mon Sep 17 00:00:00 2001 From: "Richard T. Carback III" <rick.carback@gmail.com> Date: Tue, 6 Sep 2022 21:57:51 +0000 Subject: [PATCH] Re-enable protouser test, fix it and update golds --- basice2e/clients.goldoutput/client25.txt | 29 +++++ basice2e/run.sh | 141 +++++++++++------------ 2 files changed, 99 insertions(+), 71 deletions(-) diff --git a/basice2e/clients.goldoutput/client25.txt b/basice2e/clients.goldoutput/client25.txt index e69de29..4f0e446 100644 --- a/basice2e/clients.goldoutput/client25.txt +++ b/basice2e/clients.goldoutput/client25.txt @@ -0,0 +1,29 @@ + +Message received: Hello from Jonah26, with E2E Encryption +Message received: Hello from Jonah26, with E2E Encryption +Message received: Hello from Jonah26, with E2E Encryption +Message received: Hello from Jonah26, with E2E Encryption +Message received: Hello from Jonah26, with E2E Encryption +Message received: Hello from Jonah26, with E2E Encryption +Message received: Hello from Jonah26, with E2E Encryption +Message received: Hello from Jonah26, with E2E Encryption +Message received: Hello from Jonah26, with E2E Encryption +Message received: Hello from Jonah26, with E2E Encryption +Message received: Hello from Josh25 to myself, without E2E Encryption +Received 0 +Received 0 +Received 0 +Received 1 +Received 5 +Received 5 +Sent: Hello from Josh25 to myself, without E2E Encryption +Sent: Hello from Josh25, with E2E Encryption +Sent: Hello from Josh25, with E2E Encryption +Sent: Hello from Josh25, with E2E Encryption +Sent: Hello from Josh25, with E2E Encryption +Sent: Hello from Josh25, with E2E Encryption +Sent: Hello from Josh25, with E2E Encryption +Sent: Hello from Josh25, with E2E Encryption +Sent: Hello from Josh25, with E2E Encryption +Sent: Hello from Josh25, with E2E Encryption +Sent: Hello from Josh25, with E2E Encryption diff --git a/basice2e/run.sh b/basice2e/run.sh index 60af66f..a93d867 100755 --- a/basice2e/run.sh +++ b/basice2e/run.sh @@ -620,85 +620,84 @@ echo "END BACKUP AND RESTORE..." # Generate contact and proto user file for client25 echo "TESTING PROTO USER FILE..." -CLIENTCMD="timeout 20s ../bin/client -l $CLIENTOUT/client25.log -s blob11420 --password hello --ndf results/ndf.json --writeContact $CLIENTOUT/josh25-contact.bin --protoUserOut $CLIENTOUT/client25Proto.json " -eval $CLIENTCMD >> $CLIENTOUT/client25.txt || true & +CLIENTCMD="timeout 60s ../bin/client -l $CLIENTOUT/client25.log -s blob11420 --password hello --ndf results/ndf.json --writeContact $CLIENTOUT/josh25-contact.bin --protoUserOut $CLIENTOUT/client25Proto.json --unsafe --sendCount 0 --receiveCount 0" +eval $CLIENTCMD >> $CLIENTOUT/client25.txt & PIDVAL=$! echo "$CLIENTCMD -- $PIDVAL" -echo "FIXME: The above exits uncleanly. This should be fixed!" wait $PIDVAL -# # Generate contact and proto user file for client 26 -# CLIENTCMD="timeout 20s ../bin/client -l $CLIENTOUT/client26.log -s blob11421 --password hello --ndf results/ndf.json --writeContact $CLIENTOUT/jonah26-contact.bin --protoUserOut $CLIENTOUT/client26Proto.json" -# eval $CLIENTCMD >> $CLIENTOUT/client26.txt & -# PIDVAL=$! -# echo "$CLIENTCMD -- $PIDVAL" -# wait $PIDVAL +# Generate contact and proto user file for client 26 +CLIENTCMD="timeout 60s ../bin/client -l $CLIENTOUT/client26.log -s blob11421 --password hello --ndf results/ndf.json --writeContact $CLIENTOUT/jonah26-contact.bin --protoUserOut $CLIENTOUT/client26Proto.json --unsafe --sendCount 0 --receiveCount 0" +eval $CLIENTCMD >> $CLIENTOUT/client26.txt & +PIDVAL=$! +echo "$CLIENTCMD -- $PIDVAL" +wait $PIDVAL -# # Clients will now load from the protoUser file and write to session -# CLIENTCMD="timeout 60s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client25.log -s blob25 --protoUserPath $CLIENTOUT/client25Proto.json" -# eval $CLIENTCMD >> $CLIENTOUT/client25.txt & -# PIDVAL=$! -# echo "$CLIENTCMD -- $PIDVAL" -# CLIENTCMD="timeout 60s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client26.log -s blob26 --protoUserPath $CLIENTOUT/client26Proto.json" -# eval $CLIENTCMD >> $CLIENTOUT/client26.txt & -# PIDVAL2=$! -# echo "$CLIENTCMD -- $PIDVAL2" -# wait $PIDVAL -# wait $PIDVAL2 +# Clients will now load from the protoUser file and write to session +CLIENTCMD="timeout 60s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client25.log -s blob25 --protoUserPath $CLIENTOUT/client25Proto.json --unsafe --sendCount 0 --receiveCount 0" +eval $CLIENTCMD >> $CLIENTOUT/client25.txt & +PIDVAL=$! +echo "$CLIENTCMD -- $PIDVAL" +CLIENTCMD="timeout 60s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client26.log -s blob26 --protoUserPath $CLIENTOUT/client26Proto.json --unsafe --sendCount 0 --receiveCount 0" +eval $CLIENTCMD >> $CLIENTOUT/client26.txt & +PIDVAL2=$! +echo "$CLIENTCMD -- $PIDVAL2" +wait $PIDVAL +wait $PIDVAL2 -# # Continue with E2E testing with session files loaded from proto -# CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client25.log -s blob25 --writeContact $CLIENTOUT/josh25-contact.bin --unsafe -m \"Hello from Josh25 to myself, without E2E Encryption\" " -# eval $CLIENTCMD >> $CLIENTOUT/client25.txt & -# PIDVAL=$! -# echo "$CLIENTCMD -- $PIDVAL" -# wait $PIDVAL -# CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client26.log -s blob26 --writeContact $CLIENTOUT/jonah26-contact.bin --destfile $CLIENTOUT/josh25-contact.bin --send-auth-request --sendCount 0 --receiveCount 0" -# eval $CLIENTCMD >> $CLIENTOUT/client26.txt & -# PIDVAL2=$! -# echo "$CLIENTCMD -- $PIDVAL" +# Continue with E2E testing with session files loaded from proto +CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client25.log -s blob25 --writeContact $CLIENTOUT/josh25-contact.bin --unsafe -m \"Hello from Josh25 to myself, without E2E Encryption\" " +eval $CLIENTCMD >> $CLIENTOUT/client25.txt & +PIDVAL=$! +echo "$CLIENTCMD -- $PIDVAL" +wait $PIDVAL +CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client26.log -s blob26 --writeContact $CLIENTOUT/jonah26-contact.bin --destfile $CLIENTOUT/josh25-contact.bin --send-auth-request --sendCount 0 --receiveCount 0" +eval $CLIENTCMD >> $CLIENTOUT/client26.txt & +PIDVAL2=$! +echo "$CLIENTCMD -- $PIDVAL" -# while [ ! -s $CLIENTOUT/jonah26-contact.bin ]; do -# sleep 1 -# echo -n "." -# done - -# # Print IDs to console -# TMPID=$(cat $CLIENTOUT/client25.log | grep -a "User\:" | awk -F' ' '{print $5}' | head -1) -# JOSHID=${TMPID} -# echo "JOSH ID: $JOSHID" -# TMPID=$(cat $CLIENTOUT/client26.log | grep -a "User\:" | awk -F' ' '{print $5}' | head -1) -# JONAHID=${TMPID} -# echo "JONAH ID: $JONAHID" - -# ## Client 25 will now wait for client 26's E2E Auth channel request and confirm -# CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client25.log -s blob25 --destfile $CLIENTOUT/jonah26-contact.bin --sendCount 0 --receiveCount 0" -# eval $CLIENTCMD >> $CLIENTOUT/client25.txt & -# PIDVAL=$! -# echo "$CLIENTCMD -- $PIDVAL" -# wait $PIDVAL -# wait $PIDVAL2 +while [ ! -s $CLIENTOUT/jonah26-contact.bin ]; do + sleep 1 + echo -n "." +done -# # Send E2E messages with written sessions -# CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client25.log -s blob25 --destid b64:$JONAHID --sendCount 5 --receiveCount 5 -m \"Hello from Josh25, with E2E Encryption\"" -# eval $CLIENTCMD >> $CLIENTOUT/client25.txt & -# PIDVAL=$! -# echo "$CLIENTCMD -- $PIDVAL" -# CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client26.log -s blob26 --destid b64:$JOSHID --sendCount 5 --receiveCount 5 -m \"Hello from Jonah26, with E2E Encryption\"" -# eval $CLIENTCMD >> $CLIENTOUT/client26.txt & -# PIDVAL2=$! -# echo "$CLIENTCMD -- $PIDVAL" -# wait $PIDVAL -# wait $PIDVAL2 -# CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client25.log -s blob25 --destid b64:$JONAHID --sendCount 5 --receiveCount 5 -m \"Hello from Josh25, with E2E Encryption\"" -# eval $CLIENTCMD >> $CLIENTOUT/client25.txt & -# PIDVAL=$! -# echo "$CLIENTCMD -- $PIDVAL" -# CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client26.log -s blob26 --destid b64:$JOSHID --sendCount 5 --receiveCount 5 -m \"Hello from Jonah26, with E2E Encryption\"" -# eval $CLIENTCMD >> $CLIENTOUT/client26.txt & -# PIDVAL2=$! -# echo "$CLIENTCMD -- $PIDVAL" -# wait $PIDVAL -# wait $PIDVAL2 +# Print IDs to console +TMPID=$(cat $CLIENTOUT/client25.log | grep -a "User\:" | awk -F' ' '{print $5}' | head -1) +JOSHID=${TMPID} +echo "JOSH ID: $JOSHID" +TMPID=$(cat $CLIENTOUT/client26.log | grep -a "User\:" | awk -F' ' '{print $5}' | head -1) +JONAHID=${TMPID} +echo "JONAH ID: $JONAHID" + +## Client 25 will now wait for client 26's E2E Auth channel request and confirm +CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client25.log -s blob25 --destfile $CLIENTOUT/jonah26-contact.bin --sendCount 0 --receiveCount 0" +eval $CLIENTCMD >> $CLIENTOUT/client25.txt & +PIDVAL=$! +echo "$CLIENTCMD -- $PIDVAL" +wait $PIDVAL +wait $PIDVAL2 + +# Send E2E messages with written sessions +CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client25.log -s blob25 --destid b64:$JONAHID --sendCount 5 --receiveCount 5 -m \"Hello from Josh25, with E2E Encryption\"" +eval $CLIENTCMD >> $CLIENTOUT/client25.txt & +PIDVAL=$! +echo "$CLIENTCMD -- $PIDVAL" +CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client26.log -s blob26 --destid b64:$JOSHID --sendCount 5 --receiveCount 5 -m \"Hello from Jonah26, with E2E Encryption\"" +eval $CLIENTCMD >> $CLIENTOUT/client26.txt & +PIDVAL2=$! +echo "$CLIENTCMD -- $PIDVAL" +wait $PIDVAL +wait $PIDVAL2 +CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client25.log -s blob25 --destid b64:$JONAHID --sendCount 5 --receiveCount 5 -m \"Hello from Josh25, with E2E Encryption\"" +eval $CLIENTCMD >> $CLIENTOUT/client25.txt & +PIDVAL=$! +echo "$CLIENTCMD -- $PIDVAL" +CLIENTCMD="timeout 240s ../bin/client $CLIENTOPTS -l $CLIENTOUT/client26.log -s blob26 --destid b64:$JOSHID --sendCount 5 --receiveCount 5 -m \"Hello from Jonah26, with E2E Encryption\"" +eval $CLIENTCMD >> $CLIENTOUT/client26.txt & +PIDVAL2=$! +echo "$CLIENTCMD -- $PIDVAL" +wait $PIDVAL +wait $PIDVAL2 ############################################################################### # Test Single Use -- GitLab