diff options
Diffstat (limited to 'checks')
-rwxr-xr-x | checks/checkit | 109 | ||||
-rw-r--r-- | checks/distfiles | 8 | ||||
-rw-r--r-- | checks/plain-1.asc | 35 | ||||
-rw-r--r-- | checks/plain-2.asc | 39 | ||||
-rw-r--r-- | checks/plain-3.asc | 12 |
5 files changed, 157 insertions, 46 deletions
diff --git a/checks/checkit b/checks/checkit index 3ffce35c4..09cf7ac8d 100755 --- a/checks/checkit +++ b/checks/checkit @@ -13,7 +13,6 @@ usrpass2="abc" plain_files="plain-1 plain-2 plain-3" data_files="" exp_files="" -last_command="" #-------------------------------- @@ -27,7 +26,6 @@ fatal () { error () { echo "$pgmname:" $* >&2 - echo "($last_command) failed" >&2 exit 1 } @@ -39,9 +37,19 @@ chdir () { cd $1 || fatal "cannot cd to $1" } +cleanup () { + rm $data_files x y z 2>/dev/null + echo "#empty" >./.g10/options +} + + run_g10 () { - last_command="HOME=. ../g10/g10 $*" eval HOME=. ../g10/g10 $* + if [ $? != 0 ] ; then + g10_err=$? + echo "(HOME=. ../g10/g10 $*) failed" >&2 + error "g10 failed: $g10_err" >&2 + fi } #-------------------------------- @@ -50,6 +58,8 @@ run_g10 () { set -e pgmname=$(basename $0) +#trap cleanup EXIT SIGHUP SIGINT SIGQUIT + # some checks [ -d "./.g10" ] || fatal "subdirectory .g10 missing" @@ -59,6 +69,7 @@ done for i in $exp_files; do [ -f $i ] || fatal "$i: script missing" done +# create the keyrings cat <<EOF >./.g10/options no-greeting @@ -68,71 +79,80 @@ EOF # print the G10 version run_g10 --version +# intialize the trustdb -info Checking cleartext signatures -# There is a minor glitch, which appends a lf to the cleartext. -# I do not consider that a bug, but I have to use the head .. mimic. -# It is not clear what should happen to leading LFs, we must -# change the defintion of cleartext, so that only 1 empty line -# must follow the headers, but some specs say: any number of empty lines .. -# clean-sat removes leading LFs -# I know that this does not work for random data files (due to large lines -# or what ever) - I hope we can live with it. -for i in $plain_files; do - echo "$usrpass1" | run_g10 --passphrase-fd 0 -sat -o x --yes $i || error "g10 failed: $?" - run_g10 -o y --yes x || error "g10 failed: $?" - ../tools/clean-sat < $i > z - head -c $[ $(cat y | wc -c) - 1 ] y | diff - z || error "$i: mismatch" +info Checking decryption +for i in $plain_files ; do + echo "$usrpass1" | run_g10 --passphrase-fd 0 -o y --yes $i.asc + cmp $i y || error "$i: mismatch" done +#info Checking cleartext signatures +## There is a minor glitch, which appends a lf to the cleartext. +## I do not consider that a bug, but I have to use the head .. mimic. +## It is not clear what should happen to leading LFs, we must +## change the defintion of cleartext, so that only 1 empty line +## must follow the headers, but some specs say: any number of empty lines .. +## clean-sat removes leading LFs +## I know that this does not work for random data files (due to large lines +## or what ever) - I hope we can live with it. +#for i in $plain_files; do +# echo "$usrpass1" | run_g10 --passphrase-fd 0 -sat -o x --yes $i +# run_g10 -o y --yes x +# ../tools/clean-sat < $i > z +# head -c $[ $(cat y | wc -c) - 1 ] y | diff - z || error "$i: mismatch" +#done + info Creating some random data files for i in 500 9000 32000 80000; do head -c $i /dev/urandom >data-$i data_files="$data_files data-$i" done -info Checking armored signatures -for i in $plain_files $data_files ; do - echo "$usrpass1" | run_g10 --passphrase-fd 0 -sa -o x --yes $i || error "g10 failed: $?" - run_g10 -o y --yes x || error "g10 failed: $?" - cmp $i y || error "$i: mismatch" -done - -info Checking signatures -for i in $plain_files $data_files; do - echo "$usrpass1" | run_g10 --passphrase-fd 0 -s -o x --yes $i || error "g10 failed: $?" - run_g10 -o y --yes x || error "g10 failed: $?" - cmp $i y || error "$i: mismatch" -done +#info Checking armored signatures +#for i in $plain_files $data_files ; do +# echo "$usrpass1" | run_g10 --passphrase-fd 0 -sa -o x --yes $i +# run_g10 -o y --yes x +# cmp $i y || error "$i: mismatch" +#done +# +#info Checking signatures +#for i in $plain_files $data_files; do +# echo "$usrpass1" | run_g10 --passphrase-fd 0 -s -o x --yes $i +# run_g10 -o y --yes x +# cmp $i y || error "$i: mismatch" +#done info Checking armored encryption for i in $plain_files $data_files ; do - run_g10 -ea -o x --yes -r "$usrname2" $i || error "g10 failed: $?" - run_g10 -o y --yes x || error "g10 failed: $?" + info "file $i" + run_g10 -v -ea -o x --yes -r "$usrname2" $i + run_g10 -v -o y --yes x cmp $i y || error "$i: mismatch" done info Checking armored encryption with a pipe for i in $plain_files $data_files ; do + info "file $i" run_g10 -ea --yes -r "$usrname2" < $i | tee x \ - | run_g10 -o y --yes || error "g10 failed: $?" + | run_g10 -o y --yes cmp $i y || error "$i: mismatch" - run_g10 --yes < x > y || error "g10 failed: $?" + run_g10 --yes < x > y cmp $i y || error "$i: mismatch" done info Checking encryption for i in $plain_files $data_files ; do - run_g10 -e -o x --yes -r "$usrname2" $i || error "g10 failed: $?" - run_g10 -o y --yes x || error "g10 failed: $?" + run_g10 -e -o x --yes -r "$usrname2" $i + run_g10 -o y --yes x cmp $i y || error "$i: mismatch" done info Checking encryption with a pipe for i in $plain_files $data_files ; do run_g10 -e --yes -r "$usrname2" < $i \ - | run_g10 --yes > y || error "g10 failed: $?" + | run_g10 --yes > y cmp $i y || error "$i: mismatch" done @@ -141,43 +161,42 @@ info Checking signing and encryption for i in $plain_files $data_files ; do echo "$usrpass1" \ | run_g10 --passphrase-fd 0 -se -o x --yes -r "$usrname2" $i - run_g10 -o y --yes x || error "g10 failed: $?" + run_g10 -o y --yes x cmp $i y || error "$i: mismatch" done info Checking armored signing and encryption for i in $plain_files $data_files ; do echo "$usrpass1" \ - | run_g10 --passphrase-fd 0 -sae -o x --yes -r "$usrname2" $i || error "g10 failed: $?" - run_g10 -o y --yes x || error "g10 failed: $?" + | run_g10 --passphrase-fd 0 -sae -o x --yes -r "$usrname2" $i + run_g10 -o y --yes x cmp $i y || error "$i: mismatch" done info Checking armored detached signatures for i in $plain_files $data_files ; do - echo "$usrpass1" | run_g10 --passphrase-fd 0 -sab -o x --yes $i || error "g10 failed: $?" + echo "$usrpass1" | run_g10 --passphrase-fd 0 -sab -o x --yes $i run_g10 -o /dev/null --yes x <$i || error "$i: bad signature" done info Checking detached signatures for i in $plain_files $data_files ; do - echo "$usrpass1" | run_g10 --passphrase-fd 0 -sb -o x --yes $i || error "g10 failed: $?" + echo "$usrpass1" | run_g10 --passphrase-fd 0 -sb -o x --yes $i run_g10 -o /dev/null --yes x <$i || error "$i: bad signature" done info Checking detached signatures of multiple files i="$plain_files $data_files" -echo "$usrpass1" | run_g10 --passphrase-fd 0 -sb -o x --yes $i || error "g10 failed: $?" +echo "$usrpass1" | run_g10 --passphrase-fd 0 -sb -o x --yes $i cat $i | run_g10 -o /dev/null --yes x || error "$i: bad signature" info Checking armored detached signatures of multiple files i="$plain_files $data_files" -echo "$usrpass1" | run_g10 --passphrase-fd 0 -sab -o x --yes $i || error "g10 failed: $?" +echo "$usrpass1" | run_g10 --passphrase-fd 0 -sab -o x --yes $i cat $i | run_g10 -o /dev/null --yes x || error "$i: bad signature" -rm $data_files x y z info "All tests passed." exit 0 diff --git a/checks/distfiles b/checks/distfiles index d7edce90a..ad5e919ef 100644 --- a/checks/distfiles +++ b/checks/distfiles @@ -1 +1,7 @@ -checkit plain-1 plain-2 plain-3 +checkit +plain-1 +plain-2 +plain-3 +plain-1.asc +plain-2.asc +plain-3.asc diff --git a/checks/plain-1.asc b/checks/plain-1.asc new file mode 100644 index 000000000..663f335dc --- /dev/null +++ b/checks/plain-1.asc @@ -0,0 +1,35 @@ +-----BEGIN PGP MESSAGE----- +Version: G10 pre-release 0.2.4 +Comment: This is an alpha test version! + +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 +OZftvAldIC5J+aGu/+vxCgAA +=/QU7 +-----END PGP MESSAGE----- diff --git a/checks/plain-2.asc b/checks/plain-2.asc new file mode 100644 index 000000000..29404df50 --- /dev/null +++ b/checks/plain-2.asc @@ -0,0 +1,39 @@ +-----BEGIN PGP MESSAGE----- +Version: G10 pre-release 0.2.4 +Comment: This is an alpha test version! + +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 +CaWZFd9J +=dnGq +-----END PGP MESSAGE----- diff --git a/checks/plain-3.asc b/checks/plain-3.asc new file mode 100644 index 000000000..8889b6d44 --- /dev/null +++ b/checks/plain-3.asc @@ -0,0 +1,12 @@ +-----BEGIN PGP MESSAGE----- +Version: G10 pre-release 0.2.4 +Comment: This is an alpha test version! + +0CIjQ3JlYXRlZCBieSBHMTAgcHJlLXJlbGVhc2UgMC4yLjN4owJ4nAEYAef+hM4D5Wgqyz74hKMQ +AvsFSIJc61wZiLEJfQkxLlWuFAZPqOgKuPg+TFV4oI3Xfn7hiQ7xUPOFn9l0sXRC0HuSmCSbqWb1 +bkfhYUcmHJdVuf5pbv12Zphowb7HuWPLSjfuxpMTl+Xj4+Q2FQjnvgkC+wTAoDEnOj1O2cJPrgcO +T+ZMLr498SXrQORhG9hw8ZlhQ74ie8Tsx0OXFyhO9neK1VmGvlNJymnXl1gmWzK9x6Wmm69MiAb5 +6FAKKp64CRwm28ufIzWcea3zDycE1kdtxqRG8E5z/gsts5c2CZxMFhIf7JDyzmacu90eRneOtM+k +ClZmfcSevxsU0z+1/lMCqXVGOoenfyPVcQfV4aqzyagjuFAC7aDOgFNJig0= +=VYLP +-----END PGP MESSAGE----- |