security/nss/tests/run_niscc.sh

branch
TOR_BUG_9701
changeset 15
b8a032363ba2
equal deleted inserted replaced
-1:000000000000 0:4b043c084b4d
1 #!/bin/bash
2 #
3 # This Source Code Form is subject to the terms of the Mozilla Public
4 # License, v. 2.0. If a copy of the MPL was not distributed with this
5 # file, You can obtain one at http://mozilla.org/MPL/2.0/.
6
7 #
8 # PRIOR TO RUNNING THIS SCRIPT
9 # you should adjust MAIL_COMMAND and QA_LIST
10 #
11 # External dependencies:
12 # - install the NISCC test files, e.g. at /niscc (readonly OK)
13 # - libfaketimeMT because the test certificates have expired
14 # - build environment for building NSS
15 # - gdb to analyze core files
16 # - a command line mail tool (e.g. mailx)
17 # - openssl to combine input PEM files into pkcs#12
18 # - curl for obtaining version information from the web
19 #
20
21 ################################################################################
22 # Print script usage
23 ################################################################################
24 usage()
25 {
26 cat << EOF
27 Usage: $0 [options]
28
29 Test NSS library against NISCC SMIME and TLS testcases.
30
31 Options:
32 -h, --help print this help message and exit
33 -v, --verbose enable extra verbose output
34 --niscc-home DIR use NISCC testcases from directory DIR (default /niscc)
35 --host HOST use host HOST (default '127.0.0.1')
36 --threads X set thread number to X (max. 10, default 10)
37 --out DIR set DIR as output directory (default '/out')
38 --mail ADDRESS send mail with test result to ADDRESS
39 --nss DIR set NSS directory to DIR (default '~/niscc-hg/nss')
40 --nss-hack DIR set hacked NSS directory to DIR (default '~/niscc-hg/nss_hack')
41 --log-store store all the logs (only summary by default)
42 --no-build-test don't pull and build tested NSS
43 --no-build-hack don't pull and build hacked NSS
44 --test-system test system installed NSS
45 --date DATE use DATE in log archive name and outgoing email
46 --libfaketime path.so use faketime library with LD_PRELOAD=path.so
47 --smallset test only a very small subset
48
49 All options are optional.
50 All options (and possibly more) can be also set through environment variables.
51 Commandline options have higher priority than environment variables.
52 For more information please refer to the source code of this script.
53
54 For a successfull run the script NEEDS the core file pattern to be 'core.*',
55 e.g. 'core.%t'. You can check the current pattern in
56 '/proc/sys/kernel/core_pattern'. Otherwise the test will be unable to detect
57 any failures and will pass every time.
58
59 It is recommended to use hacked and tested binaries in a location, where their
60 absolute path is max. 80 characters. If their path is longer and a core file is
61 generated, its properties may be incomplete.
62
63 Return value of the script indicates how many failures it experienced.
64
65 EOF
66 exit $1
67 }
68
69 ################################################################################
70 # Process command-line arguments
71 ################################################################################
72 process_args()
73 {
74 HELP="false"
75 args=`getopt -u -l "niscc-home:,host:,threads:,out:,verbose,mail:,nss:,nss-hack:,log-store,no-build-test,no-build-hack,help,test-system,date:,libfaketime:,smallset" -- "hv" $*`
76 [ "$?" != "0" ] && usage 1
77 set -- $args
78 for i; do
79 case "$i" in
80 -v|--verbose)
81 shift
82 VERBOSE="-v"
83 ;;
84 --niscc-home)
85 shift
86 NISCC_HOME="$1"
87 shift
88 ;;
89 --host)
90 shift
91 HOST="$1"
92 shift
93 ;;
94 --threads)
95 shift
96 THREADS="$1"
97 shift
98 ;;
99 --out)
100 shift
101 TEST_OUTPUT="$1"
102 shift
103 ;;
104 --mail)
105 shift
106 USE_MAIL="true"
107 QA_LIST="$1"
108 shift
109 ;;
110 --nss)
111 shift
112 LOCALDIST="$1"
113 shift
114 ;;
115 --nss-hack)
116 shift
117 NSS_HACK="$1"
118 shift
119 ;;
120 --log-store)
121 shift
122 LOG_STORE="true"
123 ;;
124 --no-build-test)
125 shift
126 NO_BUILD_TEST="true"
127 ;;
128 --no-build-hack)
129 shift
130 NO_BUILD_HACK="true"
131 ;;
132 -h|--help)
133 shift
134 HELP="true"
135 ;;
136 --test-system)
137 shift
138 TEST_SYSTEM="true"
139 ;;
140 --date)
141 shift
142 DATE="$1"
143 shift
144 ;;
145 --libfaketime)
146 shift
147 FAKETIMELIB="$1"
148 shift
149 ;;
150 --smallset)
151 shift
152 SMALLSET="true"
153 ;;
154 --)
155 ;;
156 *)
157 ;;
158 esac
159 done
160 [ $HELP = "true" ] && usage 0
161 }
162
163 ################################################################################
164 # Create and set needed and useful environment variables
165 ################################################################################
166 create_environment()
167 {
168 # Base location of NISCC testcases
169 export NISCC_HOME=${NISCC_HOME:-/niscc}
170
171 # Base location of NSS
172 export HG=${HG:-"$HOME/niscc-hg"}
173
174 # NSS being tested
175 export LOCALDIST=${LOCALDIST:-"${HG}/nss"}
176
177 # Hacked NSS - built with "NISCC_TEST=1"
178 export NSS_HACK=${NSS_HACK:-"${HG}/nss_hack"}
179
180 # Hostname of the testmachine
181 export HOST=${HOST:-127.0.0.1}
182
183 # Whether to store logfiles
184 export LOG_STORE=${LOG_STORE:-"false"}
185
186 # Whether to mail the summary
187 export USE_MAIL=${USE_MAIL:-"false"}
188
189 # How to mail summary
190 export MAIL_COMMAND=${MAIL_COMMAND:-"mailx -S smtp=smtp://your.smtp.server:25 -r your+niscc@email.address"}
191
192 # List of mail addresses where to send summary
193 export QA_LIST=${QA_LIST:-"result@recipient.address"}
194
195 # Whether to use 64b build
196 export USE_64=${USE_64:-1}
197
198 # Directory where to write all the output data (around 650MiB for each run)
199 export TEST_OUTPUT=${TEST_OUTPUT:-"$HOME/out"}
200
201 # How many threads to use in selfserv and strsclnt (max. 10)
202 export THREADS=${THREADS:-10}
203
204 # If true, do not build tthe tested version of NSS
205 export NO_BUILD_TEST=${NO_BUILD_TEST:-"false"}
206
207 # If true, do not build the special NSS version for NISCC
208 export NO_BUILD_HACK=${NO_BUILD_HACK:-"false"}
209
210 # If true, do not rebuild client and server directories
211 export NO_SETUP=${NO_SETUP:-"false"}
212
213 # Location of NISCC SSL/TLS testcases
214 export TEST=${TEST:-"${NISCC_HOME}/NISCC_SSL_testcases"}
215
216 # If true, then be extra verbose
217 export VERBOSE=${VERBOSE:-""}
218
219 # If true, test the system installed NSS
220 export TEST_SYSTEM=${TEST_SYSTEM:-"false"}
221 [ "$TEST_SYSTEM" = "true" ] && export NO_BUILD_TEST="true"
222
223 [ ! -z "$VERBOSE" ] && set -xv
224
225 # Real date for naming of archives (system date must be 2002-11-18 .. 2007-11-18 due to certificate validity
226 DATE=${DATE:-`date`}
227 export DATE=`date -d "$DATE" +%Y%m%d`
228
229 FAKETIMELIB=${FAKETIMELIB:-""}
230 export DATE=`date -d "$DATE" +%Y%m%d`
231
232 # Whether to test only a very small subset
233 export SMALLSET=${SMALLSET:-"false"}
234
235 # Create output dir if it doesn't exist
236 mkdir -p ${TEST_OUTPUT}
237 }
238
239 ################################################################################
240 # Do a HG pull of NSS
241 ################################################################################
242 hg_pull()
243 {
244 # Tested NSS - by default using HG default tip
245 if [ "$NO_BUILD_TEST" = "false" ]; then
246 echo "cloning NSS sources to be tested from HG"
247 [ ! -d "$LOCALDIST" ] && mkdir -p "$LOCALDIST"
248 cd "$LOCALDIST"
249 [ ! -d "$LOCALDIST/nspr" ] && hg clone --noupdate https://hg.mozilla.org/projects/nspr
250 cd nspr; hg pull; hg update -C -r default; cd ..
251 [ ! -d "$LOCALDIST/nss" ] && hg clone --noupdate https://hg.mozilla.org/projects/nss
252 cd nss; hg pull; hg update -C -r default; cd ..
253 #find . -exec touch {} \;
254 fi
255
256 # Hacked NSS - by default using some RTM version.
257 # Do not use HEAD for hacked NSS - it needs to be stable and bug-free
258 if [ "$NO_BUILD_HACK" = "false" ]; then
259 echo "cloning NSS sources for a hacked build from HG"
260 [ ! -d "$NSS_HACK" ] && mkdir -p "$NSS_HACK"
261 cd "$NSS_HACK"
262 NSPR_TAG=`curl --silent http://hg.mozilla.org/releases/mozilla-aurora/raw-file/default/nsprpub/TAG-INFO | head -1 | sed --regexp-extended 's/[[:space:]]//g' | awk '{print $1}'`
263 NSS_TAG=`curl --silent http://hg.mozilla.org/releases/mozilla-aurora/raw-file/default/security/nss/TAG-INFO | head -1 | sed --regexp-extended 's/[[:space:]]//g' | awk '{print $1}'`
264 [ ! -d "$NSS_HACK/nspr" ] && hg clone --noupdate https://hg.mozilla.org/projects/nspr
265 cd nspr; hg pull; hg update -C -r "$NSPR_TAG"; cd ..
266 [ ! -d "$NSS_HACK/nss" ] && hg clone --noupdate https://hg.mozilla.org/projects/nss
267 cd nss; hg pull; hg update -C -r "$NSS_TAG"; cd ..
268 #find . -exec touch {} \;
269 fi
270 }
271
272 ################################################################################
273 # Build NSS after setting make variable NISCC_TEST
274 ################################################################################
275 build_NSS()
276 {
277 # Tested NSS
278 if [ "$NO_BUILD_TEST" = "false" ]; then
279 echo "building NSS to be tested"
280 cd "$LOCALDIST"
281 unset NISCC_TEST
282 cd nss
283 gmake nss_clean_all &>> $TEST_OUTPUT/nisccBuildLog
284 gmake nss_build_all &>> $TEST_OUTPUT/nisccBuildLog
285 fi
286
287 # Hacked NSS
288 if [ "$NO_BUILD_HACK" = "false" ]; then
289 echo "building hacked NSS"
290 cd "$NSS_HACK"
291 export NISCC_TEST=1
292 cd nss
293 gmake nss_clean_all &>> $TEST_OUTPUT/nisccBuildLogHack
294 gmake nss_build_all &>> $TEST_OUTPUT/nisccBuildLogHack
295 fi
296
297 unset NISCC_TEST
298 }
299
300 ################################################################################
301 # Set build dir, bin and lib directories
302 ################################################################################
303 init()
304 {
305 # Enable useful core files to be generated in case of crash
306 ulimit -c unlimited
307
308 # Pattern of core files, they should be created in current directory
309 echo "core_pattern $(cat /proc/sys/kernel/core_pattern)" > "$TEST_OUTPUT/nisccLog00"
310
311 # gmake is needed in the path for this suite to run
312 echo "PATH $PATH" >> "$TEST_OUTPUT/nisccLog00"
313
314 # Find out hacked NSS version
315 DISTTYPE=`cd "$NSS_HACK/nss/tests/common"; gmake objdir_name`
316 echo "NSS_HACK DISTTYPE $DISTTYPE" >> "$TEST_OUTPUT/nisccLog00"
317 export HACKBIN="$NSS_HACK/dist/$DISTTYPE/bin"
318 export HACKLIB="$NSS_HACK/dist/$DISTTYPE/lib"
319
320 if [ "$TEST_SYSTEM" = "false" ]; then
321 # Find out nss version
322 DISTTYPE=`cd "$LOCALDIST/nss/tests/common"; gmake objdir_name`
323 echo "NSS DISTTYPE $DISTTYPE" >> "$TEST_OUTPUT/nisccLog00"
324 export TESTBIN="$LOCALDIST/dist/$DISTTYPE/bin"
325 export TESTLIB="$LOCALDIST/dist/$DISTTYPE/lib"
326 export TESTTOOLS="$TESTBIN"
327 else
328 # Using system installed NSS
329 echo "USING SYSTEM NSS" >> "$TEST_OUTPUT/nisccLog00"
330 export TESTBIN="/usr/bin"
331 if [ `uname -m` = "x86_64" ]; then
332 export TESTLIB="/usr/lib64"
333 export TESTTOOLS="/usr/lib64/nss/unsupported-tools"
334 else
335 export TESTLIB="/usr/lib"
336 export TESTTOOLS="/usr/lib/nss/unsupported-tools"
337 fi
338 fi
339
340 # Verify NISCC_TEST was set in the proper library
341 if strings "$HACKLIB/libssl3.so" | grep NISCC_TEST > /dev/null 2>&1; then
342 echo "$HACKLIB/libssl3.so contains NISCC_TEST" >> "$TEST_OUTPUT/nisccLog00"
343 else
344 echo "$HACKLIB/libssl3.so does NOT contain NISCC_TEST" >> "$TEST_OUTPUT/nisccLog00"
345 fi
346
347 if strings "$TESTLIB/libssl3.so" | grep NISCC_TEST > /dev/null 2>&1; then
348 echo "$TESTLIB/libssl3.so contains NISCC_TEST" >> "$TEST_OUTPUT/nisccLog00"
349 else
350 echo "$TESTLIB/libssl3.so does NOT contain NISCC_TEST" >> "$TEST_OUTPUT/nisccLog00"
351 fi
352 }
353
354 ################################################################################
355 # Setup simple client and server directory
356 ################################################################################
357 ssl_setup_dirs_simple()
358 {
359 [ "$NO_SETUP" = "true" ] && return
360
361 echo "Setting up working directories for SSL simple tests"
362
363 CLIENT="$TEST_OUTPUT/niscc_ssl/simple_client"
364 SERVER="$TEST_OUTPUT/niscc_ssl/simple_server"
365
366 # Generate .p12 files
367 openssl pkcs12 -export -inkey "$TEST/client_key.pem" -in "$TEST/client_crt.pem" -out "$TEST_OUTPUT/client_crt.p12" -passout pass:testtest1 -name "client_crt"
368 openssl pkcs12 -export -inkey "$TEST/server_key.pem" -in "$TEST/server_crt.pem" -out "$TEST_OUTPUT/server_crt.p12" -passout pass:testtest1 -name "server_crt"
369
370 # Setup simple client directory
371 rm -rf "$CLIENT"
372 mkdir -p "$CLIENT"
373 echo test > "$CLIENT/password-is-test.txt"
374 export LD_LIBRARY_PATH="$TESTLIB"
375 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
376 "${TESTBIN}/certutil" -N -d "$CLIENT" -f "$CLIENT/password-is-test.txt" >> "$TEST_OUTPUT/nisccLog00" 2>&1
377 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
378 "${TESTBIN}/certutil" -A -d "$CLIENT" -n rootca -i "$TEST/rootca.crt" -t "C,C," >> "$TEST_OUTPUT/nisccLog00" 2>&1
379 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
380 "${TESTBIN}/pk12util" -i "$TEST_OUTPUT/client_crt.p12" -d "$CLIENT" -k "$CLIENT/password-is-test.txt" -W testtest1 >> "$TEST_OUTPUT/nisccLog00" 2>&1
381 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
382 "${TESTBIN}/certutil" -L -d "$CLIENT" >> "$TEST_OUTPUT/nisccLog00" 2>&1
383
384 # File containg message used for terminating the server
385 echo "GET /stop HTTP/1.0" > "$CLIENT/stop.txt"
386 echo "" >> "$CLIENT/stop.txt"
387
388 # Setup simple server directory
389 rm -rf "$SERVER"
390 mkdir -p "$SERVER"
391 echo test > "$SERVER/password-is-test.txt"
392 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
393 "${TESTBIN}/certutil" -N -d "$SERVER" -f "$SERVER/password-is-test.txt" >> "$TEST_OUTPUT/nisccLog00" 2>&1
394 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
395 "${TESTBIN}/certutil" -A -d "$SERVER" -n rootca -i "$TEST/rootca.crt" -t "TC,C," >> "$TEST_OUTPUT/nisccLog00" 2>&1
396 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
397 "${TESTBIN}/pk12util" -i "$TEST_OUTPUT/server_crt.p12" -d "$SERVER" -k "$SERVER/password-is-test.txt" -W testtest1 >> "$TEST_OUTPUT/nisccLog00" 2>&1
398 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
399 "${TESTBIN}/certutil" -L -d "$SERVER" >> "$TEST_OUTPUT/nisccLog00" 2>&1
400
401 unset LD_LIBRARY_PATH
402 }
403
404 ################################################################################
405 # Setup resigned client and server directory
406 ################################################################################
407 ssl_setup_dirs_resigned()
408 {
409 [ "$NO_SETUP" = "true" ] && return
410
411 echo "Setting up working directories for SSL resigned tests"
412
413 CLIENT="$TEST_OUTPUT/niscc_ssl/resigned_client"
414 SERVER="$TEST_OUTPUT/niscc_ssl/resigned_server"
415
416 # Setup resigned client directory
417 rm -rf "$CLIENT"
418 mkdir -p "$CLIENT"
419 echo test > "$CLIENT/password-is-test.txt"
420 export LD_LIBRARY_PATH="$TESTLIB"
421 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
422 "${TESTBIN}/certutil" -N -d "$CLIENT" -f "$CLIENT/password-is-test.txt" >> "$TEST_OUTPUT/nisccLog00" 2>&1
423 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
424 "${TESTBIN}/certutil" -A -d "$CLIENT" -n rootca -i "$TEST/rootca.crt" -t "C,C," >> "$TEST_OUTPUT/nisccLog00" 2>&1
425 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
426 "${TESTBIN}/pk12util" -i "$TEST_OUTPUT/client_crt.p12" -d "$CLIENT" -k "$CLIENT/password-is-test.txt" -W testtest1 >> "$TEST_OUTPUT/nisccLog00" 2>&1
427 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
428 "${TESTBIN}/certutil" -L -d "$CLIENT" >> "$TEST_OUTPUT/nisccLog00" 2>&1
429
430 echo "GET /stop HTTP/1.0" > "$CLIENT/stop.txt"
431 echo "" >> "$CLIENT/stop.txt"
432
433 # Setup resigned server directory
434 rm -rf "$SERVER"
435 mkdir -p "$SERVER"
436 echo test > "$SERVER/password-is-test.txt"
437 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
438 "${TESTBIN}/certutil" -N -d "$SERVER" -f "$SERVER/password-is-test.txt" >> "$TEST_OUTPUT/nisccLog00" 2>&1
439 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
440 "${TESTBIN}/certutil" -A -d "$SERVER" -n rootca -i "$TEST/rootca.crt" -t "TC,C," >> "$TEST_OUTPUT/nisccLog00" 2>&1
441 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
442 "${TESTBIN}/pk12util" -i "$TEST_OUTPUT/server_crt.p12" -d "$SERVER" -k "$SERVER/password-is-test.txt" -W testtest1 >> "$TEST_OUTPUT/nisccLog00" 2>&1
443 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
444 "${TESTBIN}/certutil" -L -d "$SERVER" >> "$TEST_OUTPUT/nisccLog00" 2>&1
445
446 unset LD_LIBRARY_PATH
447 }
448
449 ################################################################################
450 # NISCC SMIME tests
451 ################################################################################
452 niscc_smime()
453 {
454 cd "$TEST_OUTPUT"
455 DATA="$NISCC_HOME/NISCC_SMIME_testcases"
456
457 [ ! -d niscc_smime ] && mkdir -p niscc_smime
458
459 export SMIME_CERT_DB_DIR=envDB
460 export NSS_STRICT_SHUTDOWN=1
461 export NSS_DISABLE_ARENA_FREE_LIST=1
462 export LD_LIBRARY_PATH="$TESTLIB"
463
464 # Generate .p12 files
465 openssl pkcs12 -export -inkey "$DATA/Client.key" -in "$DATA/Client.crt" -out Client.p12 -passout pass:testtest1 &>/dev/null
466 openssl pkcs12 -export -inkey "$DATA/CA.key" -in "$DATA/CA.crt" -out CA.p12 -passout pass:testtest1 &>/dev/null
467
468 # Generate envDB if needed
469 if [ ! -d "$SMIME_CERT_DB_DIR" ]; then
470 mkdir -p "$SMIME_CERT_DB_DIR"
471 echo testtest1 > password-is-testtest1.txt
472 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
473 "${TESTBIN}/certutil" -N -d "./$SMIME_CERT_DB_DIR" -f password-is-testtest1.txt > /dev/null 2>&1
474 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
475 "${TESTBIN}/certutil" -A -d "$SMIME_CERT_DB_DIR" -f password-is-testtest1.txt -i "$DATA/CA.crt" -n CA -t "TC,C,"
476 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
477 "${TESTBIN}/certutil" -A -d "$SMIME_CERT_DB_DIR" -f password-is-testtest1.txt -i "$DATA/Client.crt" -n Client -t "TC,C,"
478 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
479 "${TESTBIN}/pk12util" -i ./CA.p12 -d "$SMIME_CERT_DB_DIR" -k password-is-testtest1.txt -W testtest1
480 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
481 "${TESTBIN}/pk12util" -i ./Client.p12 -d "$SMIME_CERT_DB_DIR" -k password-is-testtest1.txt -W testtest1
482 fi
483
484 # if p7m-ed-m-files.txt does not exist, then generate it.
485 [ -f "$DATA/p7m-ed-m-files.txt" ] && sed "s|^|$DATA/|" "$DATA/p7m-ed-m-files.txt" > p7m-ed-m-files.txt
486 export P7M_ED_M_FILES=p7m-ed-m-files.txt
487 if [ "$SMALLSET" = "true" ]; then
488 [ ! -f "$P7M_ED_M_FILES" ] && find "$DATA"/p7m-ed-m-0* -type f -print | head -10 >> "$P7M_ED_M_FILES"
489 else
490 [ ! -f "$P7M_ED_M_FILES" ] && find "$DATA"/p7m-ed-m-0* -type f -print >> "$P7M_ED_M_FILES"
491 fi
492
493 # Test "p7m-ed-m*" testcases
494 echo "Testing SMIME enveloped data testcases"
495 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
496 "${TESTBIN}/cmsutil" $VERBOSE -D -d "$SMIME_CERT_DB_DIR" -p testtest1 -b -i "$P7M_ED_M_FILES" > niscc_smime/p7m-ed-m-results.txt 2>&1
497
498 export SMIME_CERT_DB_DIR=sigDB
499 # Generate sigDB if needed
500 if [ ! -d "$SMIME_CERT_DB_DIR" ]; then
501 mkdir -p "$SMIME_CERT_DB_DIR"
502 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
503 "${TESTBIN}/certutil" -N -d "$SMIME_CERT_DB_DIR" -f password-is-testtest1.txt
504 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
505 "${TESTBIN}/certutil" -A -d "$SMIME_CERT_DB_DIR" -i "$DATA/CA.crt" -n CA -t "TC,C,"
506 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
507 "${TESTBIN}/certutil" -A -d "$SMIME_CERT_DB_DIR" -i "$DATA/Client.crt" -n Client -t "TC,C,"
508 fi
509
510 # if p7m-sd-dt-files.txt does not exist, then generate it.
511 [ -f "$DATA/p7m-sd-dt-files.txt" ] && sed "s|^|$DATA/|" "$DATA/p7m-sd-dt-files.txt" > p7m-sd-dt-files.txt
512 export P7M_SD_DT_FILES=p7m-sd-dt-files.txt
513 if [ "$SMALLSET" = "true" ]; then
514 [ ! -f "$P7M_SD_DT_FILES" ] && find "$DATA"/p7m-sd-dt-[cm]-* -type f -print | head -10 >> "$P7M_SD_DT_FILES"
515 else
516 [ ! -f "$P7M_SD_DT_FILES" ] && find "$DATA"/p7m-sd-dt-[cm]-* -type f -print >> "$P7M_SD_DT_FILES"
517 fi
518
519 [ ! -f detached.txt ] && touch detached.txt
520
521 # Test "p7m-sd-dt*" testcases
522 echo "Testing SMIME detached signed data testcases"
523 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
524 "${TESTBIN}/cmsutil" $VERBOSE -D -d "$SMIME_CERT_DB_DIR" -c detached.txt -b -i "$P7M_SD_DT_FILES" > niscc_smime/p7m-sd-dt-results.txt 2>&1
525
526 # if p7m-sd-op-files.txt does not exist, then generate it.
527 [ -f "$DATA/p7m-sd-op-files.txt" ] && sed "s|^|$DATA/|" "$DATA/p7m-sd-op-files.txt" > p7m-sd-op-files.txt
528 export P7M_SD_OP_FILES=p7m-sd-op-files.txt
529 if [ "$SMALLSET" = "true" ]; then
530 [ ! -f "$P7M_SD_OP_FILES" ] && find "$DATA"/p7m-sd-op-[cm]-* -type f -print | head -10 >> "$P7M_SD_OP_FILES"
531 else
532 [ ! -f "$P7M_SD_OP_FILES" ] && find "$DATA"/p7m-sd-op-[cm]-* -type f -print >> "$P7M_SD_OP_FILES"
533 fi
534
535 # Test "p7m-sd-op*" testcases
536 echo "Testing SMIME opaque signed data testcases"
537 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
538 "${TESTBIN}/cmsutil" $VERBOSE -D -d "$SMIME_CERT_DB_DIR" -b -i "$P7M_SD_OP_FILES" > niscc_smime/p7m-sd-op-results.txt 2>&1
539
540 unset LD_LIBRARY_PATH
541 }
542
543 ################################################################################
544 # Set env variables for NISCC SSL tests
545 ################################################################################
546 niscc_ssl_init()
547 {
548 export NSS_STRICT_SHUTDOWN=1
549 export NSS_DISABLE_ARENA_FREE_LIST=1
550 cd "$TEST_OUTPUT"
551 }
552
553 force_crash()
554 {
555 echo "int main(int argc, char *argv[]) { int *i; i = (int*)(void*)1; *i = 1; }" > "$TEST_OUTPUT/crashme.c"
556 gcc -g -o "$TEST_OUTPUT/crashme" "$TEST_OUTPUT/crashme.c"
557 "$TEST_OUTPUT/crashme"
558 }
559
560 ################################################################################
561 # Do simple client auth tests
562 # Use an altered client against the server
563 ################################################################################
564 ssl_simple_client_auth()
565 {
566 echo "Testing SSL simple client auth testcases"
567 export CLIENT="$TEST_OUTPUT/niscc_ssl/simple_client"
568 export SERVER="$TEST_OUTPUT/niscc_ssl/simple_server"
569 export PORT=8443
570 export START_AT=1
571 if [ "$SMALLSET" = "true" ]; then
572 export STOP_AT=10
573 else
574 export STOP_AT=106160
575 fi
576 unset NISCC_TEST
577 export LD_LIBRARY_PATH="$TESTLIB"
578 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
579 "${TESTTOOLS}/selfserv" $VERBOSE -p $PORT -d "$SERVER" -n server_crt -rr -t $THREADS -w test > "$TEST_OUTPUT/nisccLog01" 2>&1 &
580
581 export NISCC_TEST="$TEST/simple_client"
582 export LD_LIBRARY_PATH="$HACKLIB"
583
584 for START in `seq $START_AT $THREADS $STOP_AT`; do
585 START_AT=$START \
586 STOP_AT=$(($START+$THREADS)) \
587 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
588 "${HACKBIN}/strsclnt" $VERBOSE -d "$CLIENT" -n client_crt -p $PORT -t $THREADS -c $THREADS -o -N -w test $HOST >> "$TEST_OUTPUT/nisccLog02" 2>&1
589 done
590
591 unset NISCC_TEST
592 echo "starting tstclnt to shutdown simple client selfserv process"
593 for i in `seq 5`; do
594 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
595 "${HACKBIN}/tstclnt" -h $HOST -p $PORT -d "$CLIENT" -n client_crt -o -f -w test < "$CLIENT/stop.txt" >> "$TEST_OUTPUT/nisccLog02" 2>&1
596 done
597
598 unset LD_LIBRARY_PATH
599
600 sleep 1
601 }
602
603 ################################################################################
604 # Do simple server auth tests
605 # Use an altered server against the client
606 ################################################################################
607 ssl_simple_server_auth()
608 {
609 echo "Testing SSL simple server auth testcases"
610 export CLIENT="$TEST_OUTPUT/niscc_ssl/simple_client"
611 export SERVER="$TEST_OUTPUT/niscc_ssl/simple_server"
612 export PORT=8444
613 export START_AT=00000001
614 if [ "$SMALLSET" = "true" ]; then
615 export STOP_AT=00000010
616 else
617 export STOP_AT=00106167
618 fi
619 export LD_LIBRARY_PATH="$HACKLIB"
620 export NISCC_TEST="$TEST/simple_server"
621 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
622 "${HACKBIN}/selfserv" $VERBOSE -p $PORT -d "$SERVER" -n server_crt -t $THREADS -w test > "$TEST_OUTPUT/nisccLog03" 2>&1 &
623
624 unset NISCC_TEST
625 export LD_LIBRARY_PATH="$TESTLIB"
626 for START in `seq $START_AT $THREADS $STOP_AT`; do
627 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
628 "${TESTTOOLS}/strsclnt" $VERBOSE -d "$CLIENT" -p $PORT -t $THREADS -c $THREADS -o -N $HOST >> "$TEST_OUTPUT/nisccLog04" 2>&1
629 done
630
631 echo "starting tstclnt to shutdown simple server selfserv process"
632 for i in `seq 5`; do
633 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
634 "${TESTTOOLS}/tstclnt" -h $HOST -p $PORT -d "$CLIENT" -n client_crt -o -f -w test < "$CLIENT/stop.txt" >> "$TEST_OUTPUT/nisccLog04" 2>&1
635 done
636
637 unset LD_LIBRARY_PATH
638
639 sleep 1
640 }
641
642 ################################################################################
643 # Do simple rootCA tests
644 # Use an altered server against the client
645 ################################################################################
646 ssl_simple_rootca()
647 {
648 echo "Testing SSL simple rootCA testcases"
649 export CLIENT="$TEST_OUTPUT/niscc_ssl/simple_client"
650 export SERVER="$TEST_OUTPUT/niscc_ssl/simple_server"
651 export PORT=8445
652 export START_AT=1
653 if [ "$SMALLSET" = "true" ]; then
654 export STOP_AT=10
655 else
656 export STOP_AT=106190
657 fi
658 export LD_LIBRARY_PATH="$HACKLIB"
659 export NISCC_TEST="$TEST/simple_rootca"
660 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
661 "${HACKBIN}/selfserv" $VERBOSE -p $PORT -d "$SERVER" -n server_crt -t $THREADS -w test > "$TEST_OUTPUT/nisccLog05" 2>&1 &
662
663 unset NISCC_TEST
664 export LD_LIBRARY_PATH="$TESTLIB"
665 for START in `seq $START_AT $THREADS $STOP_AT`; do
666 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
667 "${TESTTOOLS}/strsclnt" $VERBOSE -d "$CLIENT" -p $PORT -t $THREADS -c $THREADS -o -N $HOST >> "$TEST_OUTPUT/nisccLog06" 2>&1
668 done
669
670 echo "starting tstclnt to shutdown simple rootca selfserv process"
671 for i in `seq 5`; do
672 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
673 "${TESTTOOLS}/tstclnt" -h $HOST -p $PORT -d "$CLIENT" -n client_crt -o -f -w test < "$CLIENT/stop.txt" >> "$TEST_OUTPUT/nisccLog06" 2>&1
674 done
675
676 unset LD_LIBRARY_PATH
677
678 sleep 1
679 }
680
681 ################################################################################
682 # Do resigned client auth tests
683 # Use an altered client against the server
684 ################################################################################
685 ssl_resigned_client_auth()
686 {
687 echo "Testing SSL resigned client auth testcases"
688 export CLIENT="$TEST_OUTPUT/niscc_ssl/resigned_client"
689 export SERVER="$TEST_OUTPUT/niscc_ssl/resigned_server"
690 export PORT=8446
691 export START_AT=0
692 if [ "$SMALLSET" = "true" ]; then
693 export STOP_AT=9
694 else
695 export STOP_AT=99981
696 fi
697 unset NISCC_TEST
698 export LD_LIBRARY_PATH="$TESTLIB"
699 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
700 "${TESTTOOLS}/selfserv" $VERBOSE -p $PORT -d "$SERVER" -n server_crt -rr -t $THREADS -w test > "$TEST_OUTPUT/nisccLog07" 2>&1 &
701
702 export NISCC_TEST="$TEST/resigned_client"
703 export LD_LIBRARY_PATH="$HACKLIB"
704
705 for START in `seq $START_AT $THREADS $STOP_AT`; do
706 START_AT=$START \
707 STOP_AT=$(($START+$THREADS)) \
708 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
709 "${HACKBIN}/strsclnt" $VERBOSE -d "$CLIENT" -n client_crt -p $PORT -t $THREADS -c $THREADS -o -N -w test $HOST >> "$TEST_OUTPUT/nisccLog08" 2>&1
710 done
711
712 unset NISCC_TEST
713 echo "starting tstclnt to shutdown resigned client selfserv process"
714 for i in `seq 5`; do
715 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
716 "${HACKBIN}/tstclnt" -h $HOST -p $PORT -d "$CLIENT" -n client_crt -o -f -w test < "$CLIENT/stop.txt" >> "$TEST_OUTPUT/nisccLog08" 2>&1
717 done
718
719 unset LD_LIBRARY_PATH
720
721 sleep 1
722 }
723
724 ################################################################################
725 # Do resigned server auth tests
726 # Use an altered server against the client
727 ################################################################################
728 ssl_resigned_server_auth()
729 {
730 echo "Testing SSL resigned server auth testcases"
731 export CLIENT="$TEST_OUTPUT/niscc_ssl/resigned_client"
732 export SERVER="$TEST_OUTPUT/niscc_ssl/resigned_server"
733 export PORT=8447
734 export START_AT=0
735 if [ "$SMALLSET" = "true" ]; then
736 export STOP_AT=9
737 else
738 export STOP_AT=100068
739 fi
740 export LD_LIBRARY_PATH="$HACKLIB"
741 export NISCC_TEST="$TEST/resigned_server"
742 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
743 "${HACKBIN}/selfserv" $VERBOSE -p $PORT -d "$SERVER" -n server_crt -t $THREADS -w test > "$TEST_OUTPUT/nisccLog09" 2>&1 &
744
745 unset NISCC_TEST
746 export LD_LIBRARY_PATH="$TESTLIB"
747 for START in `seq $START_AT $THREADS $STOP_AT`; do
748 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
749 "${TESTTOOLS}/strsclnt" $VERBOSE -d "$CLIENT" -p $PORT -t $THREADS -c $THREADS -o -N $HOST >> "$TEST_OUTPUT/nisccLog10" 2>&1
750 done
751
752 echo "starting tstclnt to shutdown resigned server selfserv process"
753 for i in `seq 5`; do
754 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
755 "${TESTTOOLS}/tstclnt" -h $HOST -p $PORT -d "$CLIENT" -n client_crt -o -f -w test < "$CLIENT/stop.txt" >> "$TEST_OUTPUT/nisccLog10" 2>&1
756 done
757
758 unset LD_LIBRARY_PATH
759
760 sleep 1
761 }
762
763 ################################################################################
764 # Do resigned rootCA tests
765 # Use an altered server against the client
766 ################################################################################
767 ssl_resigned_rootca()
768 {
769 echo "Testing SSL resigned rootCA testcases"
770 export CLIENT="$TEST_OUTPUT/niscc_ssl/resigned_client"
771 export SERVER="$TEST_OUTPUT/niscc_ssl/resigned_server"
772 export PORT=8448
773 export START_AT=0
774 if [ "$SMALLSET" = "true" ]; then
775 export STOP_AT=9
776 else
777 export STOP_AT=99959
778 fi
779 export LD_LIBRARY_PATH="$HACKLIB"
780 export NISCC_TEST="$TEST/resigned_rootca"
781 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
782 "${HACKBIN}/selfserv" $VERBOSE -p $PORT -d "$SERVER" -n server_crt -t $THREADS -w test > "$TEST_OUTPUT/nisccLog11" 2>&1 &
783
784 unset NISCC_TEST
785 export LD_LIBRARY_PATH="$TESTLIB"
786 for START in `seq $START_AT $THREADS $STOP_AT`; do
787 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
788 "${TESTTOOLS}/strsclnt" $VERBOSE -d "$CLIENT" -p $PORT -t $THREADS -c $THREADS -o -N $HOST >> "$TEST_OUTPUT/nisccLog12" 2>&1
789 done
790
791 echo "starting tstclnt to shutdown resigned rootca selfserv process"
792 for i in `seq 5`; do
793 LD_PRELOAD=${FAKETIMELIB} NO_FAKE_STAT=1 FAKETIME="@2004-03-29 14:14:14" \
794 "${TESTTOOLS}/tstclnt" -h $HOST -p $PORT -d "$CLIENT" -n client_crt -o -f -w test < "$CLIENT/stop.txt" >> "$TEST_OUTPUT/nisccLog12" 2>&1
795 done
796
797 unset LD_LIBRARY_PATH
798
799 sleep 1
800 }
801
802 ################################################################################
803 # Email the test logfile, and if core found, notify of failure
804 ################################################################################
805 mail_testLog()
806 {
807 pushd "$TEST_OUTPUT"
808
809 # remove mozilla nss build false positives and core stored in previous runs
810 find . -name "core*" -print | grep -v coreconf | grep -v core_watch | grep -v archive >> crashLog
811 export SIZE=`cat crashLog | wc -l`
812
813 [ "$USE_MAIL" = "false" ] && return
814
815 # mail text
816 MT=mailText
817 rm -f $MT
818
819 if [ "$SIZE" -ne 1 ]; then
820 echo "### FAILED ###" >> $MT
821 echo "### Exactly one crash is expected." >> $MT
822 echo "### Zero means: crash detection is broken, fix the script!" >> $MT
823 echo "### > 1 means: robustness test failure, fix the bug! (check the logs)" >> $MT
824 cat crashLog >> nisccLogSummary
825 SUBJ="FAILED: NISCC TESTS (check file: crashLog)"
826 else
827 echo ":) PASSED :)" >> $MT
828 SUBJ="PASSED: NISCC tests"
829 fi
830
831 echo "Date used during test run: $DATE" >> $MT
832
833 echo "Count of lines in files:" >> $MT
834 wc -l crashLog nisccBuildLog nisccBuildLogHack nisccLog[0-9]* p7m-* |grep -vw total >> $MT
835 NUM=`cat nisccLog0[123456789] nisccLog1[12] | egrep -ic "success/passed"`
836 echo "Number of times the SSL tests reported success/passed (low expected): $NUM" >> $MT
837 NUM=`cat nisccLog0[123456789] nisccLog1[12] | egrep -ic "problem|failed|error"`
838 echo "Number of times the SSL tests reported problem/failed/error (high expected): $NUM" >> $MT
839 NUM=`cat niscc_smime/p7m*results.txt | egrep -ic "success/passed"`
840 echo "Number of times the S/MIME tests reported success/passed (low expected): $NUM" >> $MT
841 NUM=`cat niscc_smime/p7m*results.txt | egrep -ic "problem|failed|error"`
842 echo "Number of times the S/MIME tests reported problem/failed/error (high expected): $NUM" >> $MT
843 echo "==== tail of nisccBuildLog ====" >> $MT
844 tail -20 nisccBuildLog >> $MT
845 echo "===============================" >> $MT
846 echo "==== tail of nisccBuildLogHack ====" >> $MT
847 tail -20 nisccBuildLogHack >> $MT
848 echo "===================================" >> $MT
849
850 #NUM=``
851 #echo "Number of : $NUM" >> $MT
852
853 cat $MT | $MAIL_COMMAND -s "$SUBJ" $QA_LIST
854
855 popd
856 }
857
858 ################################################################################
859 # Summarize all logs
860 ################################################################################
861 log_summary()
862 {
863 echo "Summarizing all logs"
864 # Move old logs
865 [ -f "$TEST_OUTPUT/nisccLogSummary" ] && mv nisccLogSummary nisccLogSummary.old
866 [ -f "$TEST_OUTPUT/crashLog" ] && mv crashLog crashLog.old
867
868 for a in $TEST_OUTPUT/nisccLog[0-9]*; do
869 echo ================================== "$a"
870 grep -v using "$a" | sort | uniq -c | sort -b -n +0 -1
871 done > $TEST_OUTPUT/nisccLogSummary
872
873 for a in $TEST_OUTPUT/niscc_smime/p7m-*-results.txt; do
874 echo ================================== "$a"
875 grep -v using "$a" | sort | uniq -c | sort -b -n +0 -1
876 done >> $TEST_OUTPUT/nisccLogSummary
877 }
878
879 ################################################################################
880 # Process core files
881 ################################################################################
882 core_process()
883 {
884 echo "Processing core files"
885 cd "$TEST_OUTPUT"
886
887 for CORE in `cat crashLog`; do
888 FILE=`file "$CORE" | sed "s/.* from '//" | sed "s/'.*//"`
889 BINARY=`strings "$CORE" | grep "^${FILE}" | tail -1`
890 gdb "$BINARY" "$CORE" << EOF_GDB > "$CORE.details"
891 where
892 quit
893 EOF_GDB
894 done
895 }
896
897 ################################################################################
898 # Move the old log files to save them, delete extra log files
899 ################################################################################
900 move_files()
901 {
902 echo "Moving and deleting log files"
903 cd "$TEST_OUTPUT"
904
905 rm -rf TRASH
906 mkdir TRASH
907
908 if [ "$LOG_STORE" = "true" ]; then
909 BRANCH=`echo $LOCALDIST | sed "s:.*/\(security.*\)/builds/.*:\1:"`
910 if [ "$BRANCH" = "$LOCALDIST" ]; then
911 ARCHIVE="$TEST_OUTPUT/archive"
912 else
913 ARCHIVE="$TEST_OUTPUT/archive/$BRANCH"
914 fi
915
916 # Check for archive directory
917 if [ ! -d "$ARCHIVE" ]; then
918 mkdir -p "$ARCHIVE"
919 fi
920
921 # Determine next log storage point
922 slot=`ls -1 "$ARCHIVE" | grep $DATE | wc -l`
923 slot=`expr $slot + 1`
924 location="$ARCHIVE/$DATE.$slot"
925 mkdir -p "$location"
926
927 # Archive the logs
928 mv nisccBuildLog "$location" 2> /dev/null
929 mv nisccBuildLogHack "$location" 2> /dev/null
930 mv nisccLogSummary "$location"
931 mv nisccLog* "$location"
932 mv niscc_smime/p7m-ed-m-results.txt "$location"
933 mv niscc_smime/p7m-sd-dt-results.txt "$location"
934 mv niscc_smime/p7m-sd-op-results.txt "$location"
935
936 # Archive any core files produced
937 for core in `cat "$TEST_OUTPUT/crashLog"`; do
938 mv "$core" "$location"
939 mv "$core.details" "$location"
940 done
941 mv crashLog "$location"
942 else
943 # Logs not stored => summaries, crashlog and corefiles not moved, other logs deleted
944 mv nisccLog00 nisccLog01 nisccLog02 nisccLog03 nisccLog04 nisccLog05 nisccLog06 nisccLog07 nisccLog08 nisccLog09 nisccLog10 nisccLog11 nisccLog12 TRASH/
945 mv niscc_smime/p7m-ed-m-results.txt niscc_smime/p7m-sd-dt-results.txt niscc_smime/p7m-sd-op-results.txt TRASH/
946 fi
947 mv envDB sigDB niscc_smime niscc_ssl TRASH/
948 mv CA.p12 Client.p12 client_crt.p12 server_crt.p12 TRASH/
949 mv p7m-ed-m-files.txt p7m-sd-dt-files.txt p7m-sd-op-files.txt password-is-testtest1.txt detached.txt TRASH/
950 mv crashme.c crashme TRASH/
951 }
952
953 ################################################################################
954 # Main
955 ################################################################################
956 process_args $*
957 create_environment
958 hg_pull
959 build_NSS
960 init
961 niscc_smime
962 niscc_ssl_init
963 force_crash
964 ssl_setup_dirs_simple
965 ssl_simple_client_auth
966 ssl_simple_server_auth
967 ssl_simple_rootca
968 ssl_setup_dirs_resigned
969 ssl_resigned_client_auth
970 ssl_resigned_server_auth
971 ssl_resigned_rootca
972 # no idea what these commented-out lines are supposed to be!
973 #ssl_setup_dirs_update
974 # ssl_update_server_auth der
975 # ssl_update_client_auth der
976 # ssl_update_server_auth resigned-der
977 # ssl_update_client_auth resigned-der
978 log_summary
979 mail_testLog
980 core_process
981 move_files
982 exit $SIZE

mercurial