diff options
author | slavomir.katuscak%sun.com <devnull@localhost> | 2007-01-25 12:49:08 +0000 |
---|---|---|
committer | slavomir.katuscak%sun.com <devnull@localhost> | 2007-01-25 12:49:08 +0000 |
commit | d784a28b380cf850ca4740d7521cf932e18e443c (patch) | |
tree | 87a1bd44d9d4aaba445663bfcc1fd73360960b38 | |
parent | 823c35d27972cf59c5c8e2d3b1dbfbb218a9aec0 (diff) | |
download | nss-hg-d784a28b380cf850ca4740d7521cf932e18e443c.tar.gz |
Bug 193386: Patch to fips.sh to use temporary library for mangle test. r=alexei, sr=nelson
-rwxr-xr-x | security/nss/tests/fips/fips.sh | 59 |
1 files changed, 35 insertions, 24 deletions
diff --git a/security/nss/tests/fips/fips.sh b/security/nss/tests/fips/fips.sh index 71dd9a28c..8c44782a0 100755 --- a/security/nss/tests/fips/fips.sh +++ b/security/nss/tests/fips/fips.sh @@ -174,29 +174,41 @@ fips_140() certutil -d ${P_R_FIPSDIR} -K -f ${R_FIPSPWFILE} 2>&1 html_msg $? 0 "List the FIPS module keys (certutil -K)" -# -# This test was interfering with QA running on more than one machine pointing -# to the same binary file. Turn it off for now. -# -# echo "$SCRIPTNAME: Detect mangled database --------------------------" -# SOFTOKEN=${DIST}/${OBJDIR}/lib/${DLL_PREFIX}softokn3.${DLL_SUFFIX} -# echo "cp ${SOFTOKEN} ${TMP}/softokn3.sav" -# cp ${SOFTOKEN} ${TMP}/softokn3.sav -# echo "mangling ${SOFTOKEN}" -# echo "mangle -i ${SOFTOKEN} -o 60000 -b 5" -# mangle -i ${SOFTOKEN} -o 60000 -b 5 2>&1 -# if [ $? -eq 0 ]; then -# echo "dbtest -r -d ${P_R_FIPSDIR} " -# suppress the expected failure message -# dbtest -r -d ${P_R_FIPSDIR} > ${TMP}/dbtestoutput.txt 2>&1 -# html_msg $? 46 "Init NSS with a corrupted library (dbtest -r)" -# echo "cp ${TMP}/softokn3.sav ${SOFTOKEN}" -# cp ${TMP}/softokn3.sav ${SOFTOKEN} -# else -# html_msg 0 0 "Skipping corruption test, can't open ${DLL_PREFIX}softokn3.${DLL_SUFFIX}" -# fi -# echo "rm ${TMP}/softokn3.sav" -# rm ${TMP}/softokn3.sav + LIBDIR="${DIST}/${OBJDIR}/lib" + MANGLEDIR="${FIPSDIR}/mangle" + + # There are different versions of cp command on different systems, some of them + # copies only symlinks, others doesn't have option to disable links, so there + # is needed to copy files one by one. + echo "mkdir ${MANGLEDIR}" + mkdir ${MANGLEDIR} + for lib in `ls ${LIBDIR}`; do + echo "cp ${LIBDIR}/${lib} ${MANGLEDIR}" + cp ${LIBDIR}/${lib} ${MANGLEDIR} + done + + echo "$SCRIPTNAME: Detect mangled database --------------------------" + SOFTOKEN=${MANGLEDIR}/${DLL_PREFIX}softokn3.${DLL_SUFFIX} + + echo "mangling ${SOFTOKEN}" + echo "mangle -i ${SOFTOKEN} -o 60000 -b 5" + mangle -i ${SOFTOKEN} -o 60000 -b 5 2>&1 + if [ $? -eq 0 ]; then + if [ "${OS_ARCH}" = "WINNT" ]; then + DBTEST=`which dbtest` + echo "PATH=${MANGLEDIR} ${DBTEST} -r -d ${P_R_FIPSDIR}" + PATH="${MANGLEDIR}" ${DBTEST} -r -d ${P_R_FIPSDIR} > ${TMP}/dbtestoutput.txt 2>&1 + RESULT=$? + else + echo "LD_LIBRARY_PATH=${MANGLEDIR} dbtest -r -d ${P_R_FIPSDIR}" + LD_LIBRARY_PATH="${MANGLEDIR}" dbtest -r -d ${P_R_FIPSDIR} > ${TMP}/dbtestoutput.txt 2>&1 + RESULT=$? + fi + + html_msg ${RESULT} 46 "Init NSS with a corrupted library (dbtest -r)" + else + html_msg 0 0 "Skipping corruption test, can't open ${DLL_PREFIX}softokn3.${DLL_SUFFIX}" + fi } ############################## fips_cleanup ############################ @@ -213,7 +225,6 @@ fips_cleanup() ################## main ################################################# fips_init - fips_140 fips_cleanup |