#! /bin/bash # # This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. ######################################################################## # # mozilla/security/nss/tests/crmf/crmf.sh # # Script to test NSS crmf library (a static library) # # needs to work on all Unix and Windows platforms # # special strings # --------------- # FIXME ... known problems, search for this string # NOTE .... unexpected behavior # ######################################################################## ############################## smime_init ############################## # local shell function to initialize this script ######################################################################## crmf_init() { SCRIPTNAME=crmf.sh # sourced - $0 would point to all.sh if [ -z "${CLEANUP}" ] ; then # if nobody else is responsible for CLEANUP="${SCRIPTNAME}" # cleaning this script will do it fi if [ -z "${INIT_SOURCED}" -o "${INIT_SOURCED}" != "TRUE" ]; then cd ../common . ./init.sh fi if [ ! -r $CERT_LOG_FILE ]; then # we need certificates here cd ../cert . ./cert.sh fi html_head "CRMF/CMMF Tests" # cmrf uses the S/MIME certs to test with grep "SUCCESS: SMIME passed" $CERT_LOG_FILE >/dev/null || { Exit 11 "Fatal - S/MIME of cert.sh needs to pass first" } CRMFDIR=${HOSTDIR}/crmf R_CRMFDIR=../crmf mkdir -p ${CRMFDIR} cd ${CRMFDIR} } ############################## crmf_main ############################## # local shell function to test basic CRMF request and CMMF responses # from 1 --> 2" ######################################################################## crmf_main() { echo "$SCRIPTNAME: CRMF/CMMF Tests ------------------------------" echo "crmftest -d ${P_R_BOBDIR} -p Bob -e dave@example.com -s TestCA -P nss crmf decode" ${BINDIR}/crmftest -d ${P_R_BOBDIR} -p Bob -e dave@example.com -s TestCA -P nss crmf decode html_msg $? 0 "CRMF test" "." echo "crmftest -d ${P_R_BOBDIR} -p Bob -e dave@example.com -s TestCA -P nss cmmf" ${BINDIR}/crmftest -d ${P_R_BOBDIR} -p Bob -e dave@example.com -s TestCA -P nss cmmf html_msg $? 0 "CMMF test" "." # Add tests for key recovery and challange as crmftest's capabilities increase } ############################## crmf_cleanup ########################### # local shell function to finish this script (no exit since it might be # sourced) ######################################################################## crmf_cleanup() { html "
" cd ${QADIR} . common/cleanup.sh } ################## main ################################################# crmf_init crmf_main crmf_cleanup