# sm-sign+verify # # Creating a signature and verifying it # Requirements: a plain file "text-1.txt" srcdir = getenv srcdir plaintext = let $srcdir/text-1.txt in = openfile $plaintext out = createfile msg.sig in2 = openfile msg.sig out2 = createfile msg.unsig pipeserver $GPGSM send INPUT FD=$in expect-ok send OUTPUT FD=$out expect-ok send SIGN expect-ok send RESET expect-ok send INPUT FD=$in2 expect-ok send OUTPUT FD=$out2 expect-ok goodsig = count-status GOODSIG trusted = count-status TRUST_FULLY send VERIFY expect-ok echo goodsig=$goodsig trusted=$trusted fail-if !$goodsig fail-if !$trusted send BYE expect-ok # Unset variables so that the files get closed. in = out = in2 = out2= cmpfiles $plaintext msg.unsig fail-if !$? # Lets check it again with a new server instance, this time we keep # the server running to check whether the entire message has been # output after the VERIFY. in = openfile msg.sig out = createfile msg.unsig pipeserver $GPGSM send INPUT FD=$in expect-ok send OUTPUT FD=$out expect-ok goodsig = count-status GOODSIG trusted = count-status TRUST_FULLY send VERIFY expect-ok echo goodsig=$goodsig trusted=$trusted fail-if !$goodsig fail-if !$trusted cmpfiles $plaintext msg.unsig fail-if !$? send BYE expect-ok quit