diff options
author | Gaurav Shah <gauravsh@chromium.org> | 2010-03-19 16:19:09 -0700 |
---|---|---|
committer | Gaurav Shah <gauravsh@chromium.org> | 2010-03-19 16:19:09 -0700 |
commit | 445925fe0f11280c585879247eada43de32090ca (patch) | |
tree | 99038ddd0545394f0f473080e363a7d903839a00 /tests/gen_test_cases.sh | |
parent | 528a2c113e76b795ec907b4c3412ef3ef1630783 (diff) | |
download | vboot-445925fe0f11280c585879247eada43de32090ca.tar.gz |
Vboot Reference: Spring cleaning of test scripts.
Moved duplicated code to "common.sh". Make directory detection more robust.
Review URL: http://codereview.chromium.org/1101004
Diffstat (limited to 'tests/gen_test_cases.sh')
-rwxr-xr-x | tests/gen_test_cases.sh | 50 |
1 files changed, 20 insertions, 30 deletions
diff --git a/tests/gen_test_cases.sh b/tests/gen_test_cases.sh index b15921d6..bad7e334 100755 --- a/tests/gen_test_cases.sh +++ b/tests/gen_test_cases.sh @@ -6,49 +6,39 @@ # Generate test cases for use for the RSA verify benchmark. -KEY_DIR=testkeys -TESTCASE_DIR=testcases -UTIL_DIR=../utils/ -TEST_FILE=test_file -TEST_FILE_SIZE=1000000 +# Load common constants and variables. +. "$(dirname "$0")/common.sh" -hash_algos=( sha1 sha256 sha512 ) -key_lengths=( 1024 2048 4096 8192 ) +TEST_FILE=${TESTCASE_DIR}/test_file +TEST_FILE_SIZE=1000000 -# Generate public key signatures and digest on an input file for -# various combinations of message digest algorithms and RSA key sizes. +# Generate public key signatures on an input file for various combinations +# of message digest algorithms and RSA key sizes. function generate_test_signatures { + echo "Generating test signatures..." algorithmcounter=0 for keylen in ${key_lengths[@]} do for hashalgo in ${hash_algos[@]} do - openssl dgst -${hashalgo} -binary -out $1.${hashalgo}.digest $1 - ${UTIL_DIR}/signature_digest $algorithmcounter $1 | openssl rsautl -sign \ - -pkcs -inkey ${KEY_DIR}/key_rsa${keylen}.pem \ - > $1.rsa${keylen}_${hashalgo}.sig + openssl dgst -${hashalgo} -binary ${TEST_FILE} > \ + ${TEST_FILE}.${hashalgo}.digest + ${UTIL_DIR}/signature_digest_utility $algorithmcounter \ + ${TEST_FILE} | openssl rsautl \ + -sign -pkcs -inkey ${TESTKEY_DIR}/key_rsa${keylen}.pem \ + > ${TEST_FILE}.rsa${keylen}_${hashalgo}.sig let algorithmcounter=algorithmcounter+1 done done } -function pre_work { - # Generate a file with random bytes for signature tests. +# Generate a file with random bytes for signature tests. +function generate_test_file { echo "Generating test file..." - dd if=/dev/urandom of=${TESTCASE_DIR}/${TEST_FILE} bs=${TEST_FILE_SIZE} count=1 + dd if=/dev/urandom of=${TEST_FILE} bs=${TEST_FILE_SIZE} count=1 } -if [ ! -d "$KEY_DIR" ] -then - echo "You must run gen_test_cases.sh to generate test keys first." - exit 1 -fi - -if [ ! -d "$TESTCASE_DIR" ] -then - mkdir "$TESTCASE_DIR" -fi - -pre_work -echo "Generating test signatures..." -generate_test_signatures ${TESTCASE_DIR}/$TEST_FILE +mkdir -p ${TESTCASE_DIR} +check_test_keys +generate_test_file +generate_test_signatures |