Skip to content

Commit 956f057

Browse files
committed
scripts/pem.test: correctly compute and use SRC_DIR, and fix whitespace.
1 parent 7e67274 commit 956f057

1 file changed

Lines changed: 81 additions & 75 deletions

File tree

scripts/pem.test

Lines changed: 81 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,12 @@ if ! "$ASN1_EXE" --help >/dev/null 2>&1; then
3131
exit 77
3232
fi
3333

34+
SRC_DIR="$(dirname "$0")/.."
35+
if [ ! -d "${SRC_DIR}/certs" ]; then
36+
echo "certs not found at ${SRC_DIR}/certs -- skipping pem.test."
37+
exit 77
38+
fi
39+
3440
if grep -q -E '^#define HAVE_FIPS$' wolfssl/options.h; then
3541
HAVE_FIPS=1
3642
fi
@@ -355,7 +361,7 @@ der_pem_enc() {
355361
return 0
356362
fi
357363
PEM_TYPE="ENCRYPTED PRIVATE KEY"
358-
convert_to_pem -in ./certs/server-key.der -p yassl123 "$@" || return $?
364+
convert_to_pem -in "${SRC_DIR}/certs/server-key.der" -p yassl123 "$@" || return $?
359365
convert_to_der -in $tmp_pem_file -p yassl123 || return $?
360366
}
361367

@@ -387,122 +393,122 @@ done
387393

388394

389395
test_setup "Convert PEM certificate (first of many) to DER"
390-
convert_to_der -in ./certs/server-cert.pem
396+
convert_to_der -in "${SRC_DIR}/certs/server-cert.pem"
391397

392398
test_setup "Convert PEM certificate (second of many) to DER"
393-
convert_to_der -in ./certs/server-cert.pem --offset 6000
399+
convert_to_der -in "${SRC_DIR}/certs/server-cert.pem" --offset 6000
394400

395401
if [ "$HAVE_RSA" = 1 ]; then
396402
test_setup "RSA private key"
397-
pem_der_exp ./certs/server-key.pem \
398-
./certs/server-key.der "RSA PRIVATE KEY"
403+
pem_der_exp "${SRC_DIR}/certs/server-key.pem" \
404+
"${SRC_DIR}/certs/server-key.der" "RSA PRIVATE KEY"
399405
else
400-
echo ' Skipping RSA test'
406+
echo -e '\nSkipping RSA test'
401407
TEST_CNT=$((TEST_CNT+1))
402408
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
403409
fi
404410

405411
# failing 20260417:
406412
#
407413
# test_setup "RSA public key"
408-
# pem_der_exp ./certs/server-keyPub.pem \
409-
# ./certs/server-keyPub.der "RSA PUBLIC KEY"
414+
# pem_der_exp "${SRC_DIR}/certs/server-keyPub.pem" \
415+
# "${SRC_DIR}/certs/server-keyPub.der" "RSA PUBLIC KEY"
410416

411417
if [ "$HAVE_DH" = 1 ]; then
412418
test_setup "DH parameters"
413-
pem_der_exp ./certs/dh3072.pem \
414-
./certs/dh3072.der "DH PARAMETERS"
419+
pem_der_exp "${SRC_DIR}/certs/dh3072.pem" \
420+
"${SRC_DIR}/certs/dh3072.der" "DH PARAMETERS"
415421

416422
test_setup "X9.42 parameters"
417-
pem_der_exp ./certs/x942dh2048.pem \
418-
./certs/x942dh2048.der "X9.42 DH PARAMETERS"
423+
pem_der_exp "${SRC_DIR}/certs/x942dh2048.pem" \
424+
"${SRC_DIR}/certs/x942dh2048.der" "X9.42 DH PARAMETERS"
419425
else
420-
echo ' Skipping DH tests'
426+
echo -e '\nSkipping DH tests'
421427
TEST_CNT=$((TEST_CNT+2))
422428
TEST_SKIP_CNT=$((TEST_SKIP_CNT+2))
423429
fi
424430

425431
if [ "$HAVE_DSA" = 1 ]; then
426432
USAGE_STRING=" DSA PARAMETERS"
427433
test_setup "DSA parameters"
428-
pem_der_exp ./certs/dsaparams.pem \
429-
./certs/dsaparams.der "DSA PARAMETERS"
434+
pem_der_exp "${SRC_DIR}/certs/dsaparams.pem" \
435+
"${SRC_DIR}/certs/dsaparams.der" "DSA PARAMETERS"
430436

431437
USAGE_STRING=" DSA PRIVATE KEY"
432438
test_setup "DSA private key"
433-
pem_der_exp ./certs/1024/dsa1024.pem \
434-
./certs/1024/dsa1024.der "DSA PRIVATE KEY"
439+
pem_der_exp "${SRC_DIR}/certs/1024/dsa1024.pem" \
440+
"${SRC_DIR}/certs/1024/dsa1024.der" "DSA PRIVATE KEY"
435441
else
436-
echo ' Skipping DSA tests'
442+
echo -e '\nSkipping DSA tests'
437443
TEST_CNT=$((TEST_CNT+2))
438444
TEST_SKIP_CNT=$((TEST_SKIP_CNT+2))
439445
fi
440446

441447
if [ "$HAVE_ECC" = 1 ]; then
442448
USAGE_STRING=" EC PRIVATE KEY"
443449
test_setup "ECC private key"
444-
pem_der_exp ./certs/ecc-keyPkcs8.pem \
445-
./certs/ecc-keyPkcs8.der "PRIVATE KEY"
450+
pem_der_exp "${SRC_DIR}/certs/ecc-keyPkcs8.pem" \
451+
"${SRC_DIR}/certs/ecc-keyPkcs8.der" "PRIVATE KEY"
446452

447453
USAGE_STRING=" EC PRIVATE KEY"
448454
test_setup "EC PRIVATE KEY"
449-
pem_der_exp ./certs/ecc-privkey.pem \
450-
./certs/ecc-privkey.der "EC PRIVATE KEY"
455+
pem_der_exp "${SRC_DIR}/certs/ecc-privkey.pem" \
456+
"${SRC_DIR}/certs/ecc-privkey.der" "EC PRIVATE KEY"
451457

452458
USAGE_STRING=" EC PARAMETERS"
453459
test_setup "ECC parameters"
454-
pem_der_exp ./certs/ecc-params.pem \
455-
./certs/ecc-params.der "EC PARAMETERS"
460+
pem_der_exp "${SRC_DIR}/certs/ecc-params.pem" \
461+
"${SRC_DIR}/certs/ecc-params.der" "EC PARAMETERS"
456462

457463
test_setup "ECC public key"
458-
pem_der_exp ./certs/ecc-keyPub.pem \
459-
./certs/ecc-keyPub.der "PUBLIC KEY"
464+
pem_der_exp "${SRC_DIR}/certs/ecc-keyPub.pem" \
465+
"${SRC_DIR}/certs/ecc-keyPub.der" "PUBLIC KEY"
460466
else
461-
echo ' Skipping ECC tests'
467+
echo -e '\nSkipping ECC tests'
462468
TEST_CNT=$((TEST_CNT+4))
463469
TEST_SKIP_CNT=$((TEST_SKIP_CNT+4))
464470
fi
465471

466472
if [ "$HAVE_ED25519" = 1 ]; then
467473
test_setup "Ed25519 public key"
468-
pem_der_exp ./certs/ed25519/client-ed25519-key.pem \
469-
./certs/ed25519/client-ed25519-key.der 'PUBLIC KEY'
474+
pem_der_exp "${SRC_DIR}/certs/ed25519/client-ed25519-key.pem" \
475+
"${SRC_DIR}/certs/ed25519/client-ed25519-key.der" 'PUBLIC KEY'
470476

471477
test_setup "Ed25519 private key"
472-
pem_der_exp ./certs/ed25519/client-ed25519-priv.pem \
473-
./certs/ed25519/client-ed25519-priv.der 'PRIVATE KEY'
478+
pem_der_exp "${SRC_DIR}/certs/ed25519/client-ed25519-priv.pem" \
479+
"${SRC_DIR}/certs/ed25519/client-ed25519-priv.der" 'PRIVATE KEY'
474480

475481
USAGE_STRING=" EDDSA PRIVATE KEY"
476482
test_setup "EdDSA private key"
477-
pem_der_exp ./certs/ed25519/eddsa-ed25519.pem \
478-
./certs/ed25519/eddsa-ed25519.der 'EDDSA PRIVATE KEY'
483+
pem_der_exp "${SRC_DIR}/certs/ed25519/eddsa-ed25519.pem" \
484+
"${SRC_DIR}/certs/ed25519/eddsa-ed25519.der" 'EDDSA PRIVATE KEY'
479485
else
480-
echo ' Skipping ED25519 tests'
486+
echo -e '\nSkipping ED25519 tests'
481487
TEST_CNT=$((TEST_CNT+3))
482488
TEST_SKIP_CNT=$((TEST_SKIP_CNT+3))
483489
fi
484490

485491
if [ "$HAVE_ED448" = 1 ]; then
486492
test_setup "Ed448 public key"
487-
pem_der_exp ./certs/ed448/client-ed448-key.pem \
488-
./certs/ed448/client-ed448-key.der 'PUBLIC KEY'
493+
pem_der_exp "${SRC_DIR}/certs/ed448/client-ed448-key.pem" \
494+
"${SRC_DIR}/certs/ed448/client-ed448-key.der" 'PUBLIC KEY'
489495

490496
test_setup "Ed448 private key"
491-
pem_der_exp ./certs/ed448/client-ed448-priv.pem \
492-
./certs/ed448/client-ed448-priv.der 'PRIVATE KEY'
497+
pem_der_exp "${SRC_DIR}/certs/ed448/client-ed448-priv.pem" \
498+
"${SRC_DIR}/certs/ed448/client-ed448-priv.der" 'PRIVATE KEY'
493499
else
494-
echo ' Skipping ED448 tests'
500+
echo -e '\nSkipping ED448 tests'
495501
TEST_CNT=$((TEST_CNT+2))
496502
TEST_SKIP_CNT=$((TEST_SKIP_CNT+2))
497503
fi
498504

499505
if [ "$WOLFSSL_CERT_REQ" = 1 ]; then
500506
USAGE_STRING=" CERTIFICATE REQUEST"
501507
test_setup "Certificate Request"
502-
pem_der_exp ./certs/csr.dsa.pem \
503-
./certs/csr.dsa.der 'CERTIFICATE REQUEST'
508+
pem_der_exp "${SRC_DIR}/certs/csr.dsa.pem" \
509+
"${SRC_DIR}/certs/csr.dsa.der" 'CERTIFICATE REQUEST'
504510
else
505-
echo ' Skipping certificate request test'
511+
echo -e '\nSkipping certificate request test'
506512
TEST_CNT=$((TEST_CNT+1))
507513
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
508514
fi
@@ -511,55 +517,55 @@ fi
511517
#
512518
# USAGE_STRING=" X509 CRL"
513519
# test_setup "X509 CRL"
514-
# pem_der_exp ./certs/crl/caEccCrl.pem \
515-
# ./certs/crl/caEccCrl.der 'X509 CRL'
520+
# pem_der_exp "${SRC_DIR}/certs/crl/caEccCrl.pem" \
521+
# "${SRC_DIR}/certs/crl/caEccCrl.der" 'X509 CRL'
516522

517523
if [ "$HAVE_FIPS" != 1 ] && [ "$HAVE_DES3" = 1 ]; then
518524
if [ "$HAVE_RSA" = 1 ]; then
519525
USAGE_STRING=$ENC_STRING
520526
test_setup "Encrypted Key with header"
521-
convert_to_der -in ./certs/server-keyEnc.pem -p yassl123 --padding
527+
convert_to_der -in "${SRC_DIR}/certs/server-keyEnc.pem" -p yassl123 --padding
522528
else
523-
echo ' Skipping DES && RSA test'
524-
TEST_CNT=$((TEST_CNT+1))
525-
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
529+
echo -e '\nSkipping DES && RSA test'
530+
TEST_CNT=$((TEST_CNT+1))
531+
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
526532
fi
527533

528534
if [ "$HAVE_MD5" = 1 ] && [ "$HAVE_RSA" = 1 ]; then
529535
USAGE_STRING=$ENC_STRING
530536
test_setup "Encrypted Key - PKCS#8"
531-
convert_to_der -in ./certs/server-keyPkcs8Enc.pem -p yassl123
537+
convert_to_der -in "${SRC_DIR}/certs/server-keyPkcs8Enc.pem" -p yassl123
532538

533539
USAGE_STRING=$ENC_STRING
534540
test_setup "Encrypted Key - PKCS#8 (PKCS#12 PBE)"
535-
convert_to_der -in ./certs/server-keyPkcs8Enc12.pem -p yassl123
541+
convert_to_der -in "${SRC_DIR}/certs/server-keyPkcs8Enc12.pem" -p yassl123
536542
else
537-
echo ' Skipping DES && MD5 && RSA tests'
538-
TEST_CNT=$((TEST_CNT+2))
539-
TEST_SKIP_CNT=$((TEST_SKIP_CNT+2))
543+
echo -e '\nSkipping DES && MD5 && RSA tests'
544+
TEST_CNT=$((TEST_CNT+2))
545+
TEST_SKIP_CNT=$((TEST_SKIP_CNT+2))
540546
fi
541547

542548
if [ "$HAVE_MD5" = 1 ]; then
543549
USAGE_STRING="PBES1_MD5_DES"
544550
test_setup "Encrypted Key - PKCS#8 (PKCS#5 PBES1-MD5-DES)"
545-
convert_to_der -in ./certs/ecc-keyPkcs8Enc.pem -p yassl123
551+
convert_to_der -in "${SRC_DIR}/certs/ecc-keyPkcs8Enc.pem" -p yassl123
546552
else
547-
echo ' Skipping DES && MD5 test'
548-
TEST_CNT=$((TEST_CNT+1))
549-
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
553+
echo -e '\nSkipping DES && MD5 test'
554+
TEST_CNT=$((TEST_CNT+1))
555+
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
550556
fi
551557

552558
if [ "$HAVE_SHA" = 1 ]; then
553559
USAGE_STRING=" DES3"
554560
test_setup "Encrypted Key - PKCS#8 (PKCS#5v2 PBE-SHA1-DES3)"
555-
convert_to_der -in ./certs/server-keyPkcs8Enc2.pem -p yassl123
561+
convert_to_der -in "${SRC_DIR}/certs/server-keyPkcs8Enc2.pem" -p yassl123
556562
else
557-
echo ' Skipping DES && SHA-1 test'
558-
TEST_CNT=$((TEST_CNT+1))
559-
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
563+
echo -e '\nSkipping DES && SHA-1 test'
564+
TEST_CNT=$((TEST_CNT+1))
565+
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
560566
fi
561567
else
562-
echo ' Skipping DES tests'
568+
echo -e '\nSkipping DES tests'
563569
TEST_CNT=$((TEST_CNT+5))
564570
TEST_SKIP_CNT=$((TEST_SKIP_CNT+5))
565571
fi
@@ -608,9 +614,9 @@ if [ "$HAVE_FIPS" != 1 ]; then
608614
test_setup "Encrypt Key - PKCS#8 (PKCS#5 PBES1-MD5-DES)"
609615
der_pem_enc --pbe PBES1_MD5_DES
610616
else
611-
echo ' Skipping DES && MD5 DER-to-PEM test'
612-
TEST_CNT=$((TEST_CNT+1))
613-
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
617+
echo -e '\nSkipping DES && MD5 DER-to-PEM test'
618+
TEST_CNT=$((TEST_CNT+1))
619+
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
614620
fi
615621

616622
if [ "$HAVE_DES3" = 1 ] && [ "$HAVE_SHA" = 1 ]; then
@@ -624,9 +630,9 @@ if [ "$HAVE_FIPS" != 1 ]; then
624630
test_setup "Encrypt Key - PKCS#8 (PKCS#12 PBE-SHA1-DES3)"
625631
der_pem_enc --pbe-ver PKCS12 --pbe SHA1_DES3
626632
else
627-
echo ' Skipping DES && SHA-1 DER-to-PEM tests'
628-
TEST_CNT=$((TEST_CNT+2))
629-
TEST_SKIP_CNT=$((TEST_SKIP_CNT+2))
633+
echo -e '\nSkipping DES && SHA-1 DER-to-PEM tests'
634+
TEST_CNT=$((TEST_CNT+2))
635+
TEST_SKIP_CNT=$((TEST_SKIP_CNT+2))
630636
fi
631637

632638
if [ "$HAVE_RC4" = 1 ] && [ "$HAVE_SHA" = 1 ]; then
@@ -635,9 +641,9 @@ if [ "$HAVE_FIPS" != 1 ]; then
635641
test_setup "Encrypt Key - PKCS#8 (PKCS#12 PBE-SHA1-RC4-128)"
636642
der_pem_enc --pbe-ver PKCS12 --pbe SHA1_RC4_128
637643
else
638-
echo ' Skipping RC4 && SHA-1 DER-to-PEM test'
639-
TEST_CNT=$((TEST_CNT+1))
640-
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
644+
echo -e '\nSkipping RC4 && SHA-1 DER-to-PEM test'
645+
TEST_CNT=$((TEST_CNT+1))
646+
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
641647
fi
642648

643649
if [ "$HAVE_RC2" = 1 ] && [ "$HAVE_SHA" = 1 ]; then
@@ -646,12 +652,12 @@ if [ "$HAVE_FIPS" != 1 ]; then
646652
test_setup "Encrypt Key - PKCS#8 (PKCS#12 PBE-SHA1-40RC2-CBC)"
647653
der_pem_enc --pbe-ver PKCS12 --pbe SHA1_40RC2_CBC
648654
else
649-
echo ' Skipping RC2 && SHA-1 DER-to-PEM test'
650-
TEST_CNT=$((TEST_CNT+1))
651-
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
655+
echo -e '\nSkipping RC2 && SHA-1 DER-to-PEM test'
656+
TEST_CNT=$((TEST_CNT+1))
657+
TEST_SKIP_CNT=$((TEST_SKIP_CNT+1))
652658
fi
653659
else
654-
echo ' Skipping DES/RC4/RC2 DER-to-PEM tests'
660+
echo -e '\nSkipping DES/RC4/RC2 DER-to-PEM tests'
655661
TEST_CNT=$((TEST_CNT+5))
656662
TEST_SKIP_CNT=$((TEST_SKIP_CNT+5))
657663
fi

0 commit comments

Comments
 (0)