6155daa
From 0cfefe50373cd5f7da5b49f1a1380ba8b5baf825 Mon Sep 17 00:00:00 2001
6155daa
From: Rob Crittenden <rcritten@redhat.com>
6155daa
Date: Tue, 9 Jan 2018 22:14:53 -0500
6155daa
Subject: [PATCH 3/6] NSS in rawhide (F28) was switched to sqlite, fix
6155daa
 assumptions
6155daa
6155daa
Previous releases of NSS had dbm as the default storage type.
6155daa
Certain assumptions were built into the tests. Make the default
6155daa
scheme more explicit, leaving it as dbm for now.
6155daa
6155daa
https://pagure.io/certmonger/issue/88
6155daa
---
6155daa
 tests/007-certsave-dbm/expected.out |  4 ++--
6155daa
 tests/007-certsave/expected.out     |  4 ++--
6155daa
 tests/007-certsave/run.sh           | 47 +++++++++++++++++++------------------
6155daa
 tests/025-casave/run.sh             | 36 ++++++++++++++--------------
6155daa
 tests/034-perms/expected.out        | 36 ++++++++++++++--------------
6155daa
 tests/034-perms/run.sh              |  2 ++
6155daa
 6 files changed, 66 insertions(+), 63 deletions(-)
6155daa
6155daa
diff --git a/tests/007-certsave-dbm/expected.out b/tests/007-certsave-dbm/expected.out
6155daa
index e0978c66..ed6b4ede 100644
6155daa
--- a/tests/007-certsave-dbm/expected.out
6155daa
+++ b/tests/007-certsave-dbm/expected.out
6155daa
@@ -37,7 +37,7 @@ Testing setting trust to C,c,p:
6155daa
  wrong nickname, right subject: cert ,, 
6155daa
  wrong subject, right nickname: cert ,, 
6155daa
 [nss:rosubdir]
6155daa
-Failed to save (NSS:${tmpdir}/rosubdir), filesystem permissions error.
6155daa
+Failed to save (NSS:dbm:${tmpdir}/rosubdir), filesystem permissions error.
6155daa
 [nss:rwsubdir]
6155daa
-Failed to save (NSS:${tmpdir}/rwsubdir), filesystem permissions error.
6155daa
+Failed to save (NSS:dbm:${tmpdir}/rwsubdir), filesystem permissions error.
6155daa
 Test complete.
6155daa
diff --git a/tests/007-certsave/expected.out b/tests/007-certsave/expected.out
6155daa
index e0978c66..ed6b4ede 100644
6155daa
--- a/tests/007-certsave/expected.out
6155daa
+++ b/tests/007-certsave/expected.out
6155daa
@@ -37,7 +37,7 @@ Testing setting trust to C,c,p:
6155daa
  wrong nickname, right subject: cert ,, 
6155daa
  wrong subject, right nickname: cert ,, 
6155daa
 [nss:rosubdir]
6155daa
-Failed to save (NSS:${tmpdir}/rosubdir), filesystem permissions error.
6155daa
+Failed to save (NSS:dbm:${tmpdir}/rosubdir), filesystem permissions error.
6155daa
 [nss:rwsubdir]
6155daa
-Failed to save (NSS:${tmpdir}/rwsubdir), filesystem permissions error.
6155daa
+Failed to save (NSS:dbm:${tmpdir}/rwsubdir), filesystem permissions error.
6155daa
 Test complete.
6155daa
diff --git a/tests/007-certsave/run.sh b/tests/007-certsave/run.sh
6155daa
index bea8341a..29b02152 100755
6155daa
--- a/tests/007-certsave/run.sh
6155daa
+++ b/tests/007-certsave/run.sh
6155daa
@@ -2,8 +2,9 @@
6155daa
 
6155daa
 cd "$tmpdir"
6155daa
 
6155daa
+scheme="${scheme:-dbm}"
6155daa
 source "$srcdir"/functions
6155daa
-initnssdb ${scheme:+${scheme}:}$tmpdir
6155daa
+initnssdb $scheme:$tmpdir
6155daa
 
6155daa
 wrongcert='-----BEGIN CERTIFICATE-----
6155daa
  MIIDQTCCAimgAwIBAgIBBTANBgkqhkiG9w0BAQsFADASMRAwDgYDVQQDEwdwaWxs
6155daa
@@ -50,7 +51,7 @@ echo "$wrongcert" | sed -e 's,^$,,g' -e 's,^ ,,g' > cert.wrong
6155daa
 echo "[nss:wrongnick]"
6155daa
 cat > entry.nss << EOF
6155daa
 cert_storage_type=NSSDB
6155daa
-cert_storage_location=${scheme:+${scheme}:}$tmpdir
6155daa
+cert_storage_location=$scheme:$tmpdir
6155daa
 cert_nickname=wrongnick
6155daa
 cert=$cert
6155daa
 EOF
6155daa
@@ -59,7 +60,7 @@ $toolsdir/certsave entry.nss
6155daa
 echo "[nss:wrongcert]"
6155daa
 cat > entry.nss << EOF
6155daa
 cert_storage_type=NSSDB
6155daa
-cert_storage_location=${scheme:+${scheme}:}$tmpdir
6155daa
+cert_storage_location=$scheme:$tmpdir
6155daa
 cert_nickname=cert
6155daa
 cert=$wrongcert
6155daa
 EOF
6155daa
@@ -68,13 +69,13 @@ $toolsdir/certsave entry.nss
6155daa
 echo "[nss:right]"
6155daa
 cat > entry.nss << EOF
6155daa
 cert_storage_type=NSSDB
6155daa
-cert_storage_location=${scheme:+${scheme}:}$tmpdir
6155daa
+cert_storage_location=$scheme:$tmpdir
6155daa
 cert_nickname=cert
6155daa
 cert=$cert
6155daa
 EOF
6155daa
 $toolsdir/certsave entry.nss
6155daa
 $toolsdir/listnicks entry.nss
6155daa
-certutil -d ${scheme:+${scheme}:}$tmpdir -L -n cert -a > cert.nss
6155daa
+certutil -d $scheme:$tmpdir -L -n cert -a > cert.nss
6155daa
 # Save the wrong certificate to the PEM file.
6155daa
 echo "[openssl:wrong]"
6155daa
 cat > entry.openssl << EOF
6155daa
@@ -96,7 +97,7 @@ run_dos2unix cert.original
6155daa
 run_dos2unix cert.nss
6155daa
 run_dos2unix cert.openssl
6155daa
 if ! cmp cert.original cert.nss ; then
6155daa
-	echo Original and NSS disagree "(${scheme:+${scheme}:}$tmpdir)".
6155daa
+	echo Original and NSS disagree "($scheme:$tmpdir)".
6155daa
 	cat cert.original cert.nss
6155daa
 	exit 1
6155daa
 fi
6155daa
@@ -137,62 +138,62 @@ $toolsdir/certsave entry.openssl || true
6155daa
 for trust in ,, P,, ,P, CT,C, C,c,p ; do
6155daa
 	echo Testing setting trust to "$trust":
6155daa
 	# Save the right certificate to NSS's database and read it back.
6155daa
-	initnssdb ${scheme:+${scheme}:}$tmpdir
6155daa
+	initnssdb $scheme:$tmpdir
6155daa
 	cat > entry.nss <<- EOF
6155daa
 	cert_storage_type=NSSDB
6155daa
-	cert_storage_location=${scheme:+${scheme}:}$tmpdir
6155daa
+	cert_storage_location=$scheme:$tmpdir
6155daa
 	cert_nickname=cert
6155daa
 	cert=$cert
6155daa
 	EOF
6155daa
 	$toolsdir/certsave entry.nss
6155daa
-	certutil -d ${scheme:+${scheme}:}$tmpdir -M -n cert -t $trust
6155daa
+	certutil -d $scheme:$tmpdir -M -n cert -t $trust
6155daa
 	echo -n " baseline: "
6155daa
-	certutil -d ${scheme:+${scheme}:}$tmpdir -L | grep cert | sed -r 's,[ \t]+, ,g'
6155daa
+	certutil -d $scheme:$tmpdir -L | grep cert | sed -r 's,[ \t]+, ,g'
6155daa
 	$toolsdir/certsave entry.nss
6155daa
 	echo -n " right nickname, right subject: "
6155daa
-	certutil -d ${scheme:+${scheme}:}$tmpdir -L | grep cert | sed -r 's,[ \t]+, ,g'
6155daa
+	certutil -d $scheme:$tmpdir -L | grep cert | sed -r 's,[ \t]+, ,g'
6155daa
 	# Save the right certificate to NSS's database with the wrong nickname.
6155daa
-	initnssdb ${scheme:+${scheme}:}$tmpdir
6155daa
+	initnssdb $scheme:$tmpdir
6155daa
 	$toolsdir/certsave entry.nss
6155daa
 	cat > entry.nss <<- EOF
6155daa
 	cert_storage_type=NSSDB
6155daa
-	cert_storage_location=${scheme:+${scheme}:}$tmpdir
6155daa
+	cert_storage_location=$scheme:$tmpdir
6155daa
 	cert_nickname=wrongnick
6155daa
 	cert=$cert
6155daa
 	EOF
6155daa
 	$toolsdir/certsave entry.nss
6155daa
-	certutil -d ${scheme:+${scheme}:}$tmpdir -M -n wrongnick -t $trust
6155daa
+	certutil -d $scheme:$tmpdir -M -n wrongnick -t $trust
6155daa
 	# Save the right certificate to NSS's database and read it back.
6155daa
 	cat > entry.nss <<- EOF
6155daa
 	cert_storage_type=NSSDB
6155daa
-	cert_storage_location=${scheme:+${scheme}:}$tmpdir
6155daa
+	cert_storage_location=$scheme:$tmpdir
6155daa
 	cert_nickname=cert
6155daa
 	cert=$cert
6155daa
 	EOF
6155daa
 	$toolsdir/certsave entry.nss
6155daa
 	echo -n " wrong nickname, right subject: "
6155daa
-	certutil -d ${scheme:+${scheme}:}$tmpdir -L | grep cert | sed -r 's,[ \t]+, ,g'
6155daa
+	certutil -d $scheme:$tmpdir -L | grep cert | sed -r 's,[ \t]+, ,g'
6155daa
 	# Save the wrong certificate to NSS's database with the right nickname.
6155daa
-	initnssdb ${scheme:+${scheme}:}$tmpdir
6155daa
+	initnssdb $scheme:$tmpdir
6155daa
 	$toolsdir/certsave entry.nss
6155daa
 	cat > entry.nss <<- EOF
6155daa
 	cert_storage_type=NSSDB
6155daa
-	cert_storage_location=${scheme:+${scheme}:}$tmpdir
6155daa
+	cert_storage_location=$scheme:$tmpdir
6155daa
 	cert_nickname=cert
6155daa
 	cert=$wrongcert
6155daa
 	EOF
6155daa
 	$toolsdir/certsave entry.nss
6155daa
-	certutil -d ${scheme:+${scheme}:}$tmpdir -M -n cert -t $trust
6155daa
+	certutil -d $scheme:$tmpdir -M -n cert -t $trust
6155daa
 	# Save the right certificate to NSS's database and read it back.
6155daa
 	cat > entry.nss <<- EOF
6155daa
 	cert_storage_type=NSSDB
6155daa
-	cert_storage_location=${scheme:+${scheme}:}$tmpdir
6155daa
+	cert_storage_location=$scheme:$tmpdir
6155daa
 	cert_nickname=cert
6155daa
 	cert=$cert
6155daa
 	EOF
6155daa
 	$toolsdir/certsave entry.nss
6155daa
 	echo -n " wrong subject, right nickname: "
6155daa
-	certutil -d ${scheme:+${scheme}:}$tmpdir -L | grep cert | sed -r 's,[ \t]+, ,g'
6155daa
+	certutil -d $scheme:$tmpdir -L | grep cert | sed -r 's,[ \t]+, ,g'
6155daa
 done
6155daa
 
6155daa
 if test "$scheme" = sql ; then
6155daa
@@ -202,7 +203,7 @@ else
6155daa
 	echo "[nss:rosubdir]"
6155daa
 	cat > entry.nss <<- EOF
6155daa
 	cert_storage_type=NSSDB
6155daa
-	cert_storage_location=$tmpdir/rosubdir
6155daa
+	cert_storage_location=$scheme:$tmpdir/rosubdir
6155daa
 	cert_nickname=cert
6155daa
 	cert=$cert
6155daa
 	EOF
6155daa
@@ -216,7 +217,7 @@ else
6155daa
 	echo "[nss:rwsubdir]"
6155daa
 	cat > entry.nss <<- EOF
6155daa
 	cert_storage_type=NSSDB
6155daa
-	cert_storage_location=$tmpdir/rwsubdir
6155daa
+	cert_storage_location=$scheme:$tmpdir/rwsubdir
6155daa
 	cert_nickname=cert
6155daa
 	cert=$cert
6155daa
 	EOF
6155daa
diff --git a/tests/025-casave/run.sh b/tests/025-casave/run.sh
6155daa
index 44a08b06..aff1e6d9 100755
6155daa
--- a/tests/025-casave/run.sh
6155daa
+++ b/tests/025-casave/run.sh
6155daa
@@ -196,7 +196,7 @@ id=EntryD1
6155daa
 root_cert_files=
6155daa
 other_root_cert_files=
6155daa
 other_cert_files=
6155daa
-root_cert_dbs=$tmpdir/db1,$tmpdir/dba
6155daa
+root_cert_dbs=dbm:$tmpdir/db1,dbm:$tmpdir/dba
6155daa
 other_root_cert_dbs=
6155daa
 other_cert_dbs=
6155daa
 cert_roots=Per-certificate Signing Authority D1
6155daa
@@ -229,7 +229,7 @@ root_cert_files=
6155daa
 other_root_cert_files=
6155daa
 other_cert_files=
6155daa
 root_cert_dbs=
6155daa
-other_root_cert_dbs=$tmpdir/db2,$tmpdir/dba
6155daa
+other_root_cert_dbs=dbm:$tmpdir/db2,dbm:$tmpdir/dba
6155daa
 other_cert_dbs=
6155daa
 EOF
6155daa
 cat > $tmpdir/entryd3 <<- EOF
6155daa
@@ -239,7 +239,7 @@ other_root_cert_files=
6155daa
 other_cert_files=
6155daa
 root_cert_dbs=
6155daa
 other_root_cert_dbs=
6155daa
-other_cert_dbs=$tmpdir/db3,$tmpdir/dba
6155daa
+other_cert_dbs=dbm:$tmpdir/db3,dbm:$tmpdir/dba
6155daa
 cert_chain=Per-certificate Signing Authority D3
6155daa
  -----BEGIN CERTIFICATE-----
6155daa
  MIIDjjCCAnagAwIBAgIRALuVK2FuXklPuMP4qtRyQjUwDQYJKoZIhvcNAQELBQAw
6155daa
@@ -300,7 +300,7 @@ ca_name=CAD1
6155daa
 root_cert_files=
6155daa
 other_root_cert_files=
6155daa
 other_cert_files=
6155daa
-root_cert_dbs=$tmpdir/db1,$tmpdir/dba
6155daa
+root_cert_dbs=dbm:$tmpdir/db1,dbm:$tmpdir/dba
6155daa
 other_root_cert_dbs=
6155daa
 other_cert_dbs=
6155daa
 EOF
6155daa
@@ -311,7 +311,7 @@ root_cert_files=
6155daa
 other_root_cert_files=
6155daa
 other_cert_files=
6155daa
 root_cert_dbs=
6155daa
-other_root_cert_dbs=$tmpdir/db2,$tmpdir/dba
6155daa
+other_root_cert_dbs=dbm:$tmpdir/db2,dbm:$tmpdir/dba
6155daa
 other_cert_dbs=
6155daa
 EOF
6155daa
 cat > $tmpdir/entrycad3 <<- EOF
6155daa
@@ -322,7 +322,7 @@ other_root_cert_files=
6155daa
 other_cert_files=
6155daa
 root_cert_dbs=
6155daa
 other_root_cert_dbs=
6155daa
-other_cert_dbs=$tmpdir/db3,$tmpdir/dba
6155daa
+other_cert_dbs=dbm:$tmpdir/db3,dbm:$tmpdir/dba
6155daa
 EOF
6155daa
 
6155daa
 cat > $tmpdir/cab1 <<- EOF
6155daa
@@ -564,9 +564,9 @@ ca_external_helper=$tmpdir/no-such-helper.sh
6155daa
 ca_root_cert_files=
6155daa
 ca_other_root_cert_files=
6155daa
 ca_other_cert_files=
6155daa
-ca_root_cert_dbs=$tmpdir/db1,$tmpdir/dba
6155daa
-ca_other_root_cert_dbs=$tmpdir/dba
6155daa
-ca_other_cert_dbs=$tmpdir/dba
6155daa
+ca_root_cert_dbs=dbm:$tmpdir/db1,dbm:$tmpdir/dba
6155daa
+ca_other_root_cert_dbs=dbm:$tmpdir/dba
6155daa
+ca_other_cert_dbs=dbm:$tmpdir/dba
6155daa
 ca_root_certs=Root Certificate D1
6155daa
  -----BEGIN CERTIFICATE-----
6155daa
  MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJJ
6155daa
@@ -639,9 +639,9 @@ ca_external_helper=$tmpdir/no-such-helper.sh
6155daa
 ca_root_cert_files=
6155daa
 ca_other_root_cert_files=
6155daa
 ca_other_cert_files=
6155daa
-ca_root_cert_dbs=$tmpdir/dba
6155daa
-ca_other_root_cert_dbs=$tmpdir/db2,$tmpdir/dba
6155daa
-ca_other_cert_dbs=$tmpdir/dba
6155daa
+ca_root_cert_dbs=dbm:$tmpdir/dba
6155daa
+ca_other_root_cert_dbs=dbm:$tmpdir/db2,dbm:$tmpdir/dba
6155daa
+ca_other_cert_dbs=dbm:$tmpdir/dba
6155daa
 ca_root_certs=Root Certificate D2
6155daa
  -----BEGIN CERTIFICATE-----
6155daa
  MIIEDzCCAvegAwIBAgIBATANBgkqhkiG9w0BAQUFADBKMQswCQYDVQQGEwJTSzET
6155daa
@@ -722,9 +722,9 @@ ca_external_helper=$tmpdir/no-such-helper.sh
6155daa
 ca_root_cert_files=
6155daa
 ca_other_root_cert_files=
6155daa
 ca_other_cert_files=
6155daa
-ca_root_cert_dbs=,$tmpdir/dba
6155daa
-ca_other_root_cert_dbs=,$tmpdir/dba,
6155daa
-ca_other_cert_dbs=$tmpdir/db3,$tmpdir/dba
6155daa
+ca_root_cert_dbs=,dbm:$tmpdir/dba
6155daa
+ca_other_root_cert_dbs=,dbm:$tmpdir/dba,
6155daa
+ca_other_cert_dbs=dbm:$tmpdir/db3,dbm:$tmpdir/dba
6155daa
 ca_root_certs=Root Certificate D3
6155daa
  -----BEGIN CERTIFICATE-----
6155daa
  MIICiTCCAg+gAwIBAgIQH0evqmIAcFBUTAGem2OZKjAKBggqhkjOPQQDAzCBhTEL
6155daa
@@ -796,9 +796,9 @@ ca_external_helper=$tmpdir/no-such-helper.sh
6155daa
 ca_root_cert_files=$tmpdir/bundle-all
6155daa
 ca_other_root_cert_files=
6155daa
 ca_other_cert_files=
6155daa
-ca_root_cert_dbs=$tmpdir/dba
6155daa
-ca_other_root_cert_dbs=,$tmpdir/dba
6155daa
-ca_other_cert_dbs=,$tmpdir/dba
6155daa
+ca_root_cert_dbs=dbm:$tmpdir/dba
6155daa
+ca_other_root_cert_dbs=,dbm:$tmpdir/dba
6155daa
+ca_other_cert_dbs=,dbm:$tmpdir/dba
6155daa
 ca_root_certs=Root Certificate DA
6155daa
  -----BEGIN CERTIFICATE-----
6155daa
  MIICiDCCAg2gAwIBAgIQNfwmXNmET8k9Jj1Xm67XVjAKBggqhkjOPQQDAzCBhDEL
6155daa
diff --git a/tests/034-perms/expected.out b/tests/034-perms/expected.out
6155daa
index 4e2fbd71..c062d409 100644
6155daa
--- a/tests/034-perms/expected.out
6155daa
+++ b/tests/034-perms/expected.out
6155daa
@@ -41,54 +41,54 @@ $owner:$group|0755|ee.key.MARKER.key
6155daa
 $owner:$group|0662|ee.crt
6155daa
 $owner:$group|0620|ee.key
6155daa
 
6155daa
-[start]
6155daa
-[keygen]
6155daa
+[dbm:start]
6155daa
+[dbm:keygen]
6155daa
 $owner:$group|0600|cert8.db
6155daa
 $owner:$group|0620|key3.db
6155daa
-[reset]
6155daa
+[dbm:reset]
6155daa
 $owner:$group|0755|cert8.db
6155daa
 $owner:$group|0755|key3.db
6155daa
-[csrgen]
6155daa
+[dbm:csrgen]
6155daa
 $owner:$group|0755|cert8.db
6155daa
 $owner:$group|0620|key3.db
6155daa
-[reset]
6155daa
+[dbm:reset]
6155daa
 $owner:$group|0755|cert8.db
6155daa
 $owner:$group|0755|key3.db
6155daa
-[submit]
6155daa
+[dbm:submit]
6155daa
 $owner:$group|0755|cert8.db
6155daa
 $owner:$group|0755|key3.db
6155daa
-[reset]
6155daa
+[dbm:reset]
6155daa
 $owner:$group|0755|cert8.db
6155daa
 $owner:$group|0755|key3.db
6155daa
-[save]
6155daa
+[dbm:save]
6155daa
 $owner:$group|0662|cert8.db
6155daa
 $owner:$group|0620|key3.db
6155daa
-[rekey:start]
6155daa
-[rekey:keygen]
6155daa
+[rekey:dbm:start]
6155daa
+[rekey:dbm:keygen]
6155daa
 $owner:$group|0600|cert8.db
6155daa
 $owner:$group|0620|key3.db
6155daa
-[rekey:reset]
6155daa
+[rekey:dbm:reset]
6155daa
 $owner:$group|0755|cert8.db
6155daa
 $owner:$group|0755|key3.db
6155daa
-[rekey:keygen]
6155daa
+[rekey:dbm:keygen]
6155daa
 $owner:$group|0755|cert8.db
6155daa
 $owner:$group|0620|key3.db
6155daa
-[rekey:reset]
6155daa
+[rekey:dbm:reset]
6155daa
 $owner:$group|0755|cert8.db
6155daa
 $owner:$group|0755|key3.db
6155daa
-[rekey:csrgen]
6155daa
+[rekey:dbm:csrgen]
6155daa
 $owner:$group|0755|cert8.db
6155daa
 $owner:$group|0620|key3.db
6155daa
-[rekey:reset]
6155daa
+[rekey:dbm:reset]
6155daa
 $owner:$group|0755|cert8.db
6155daa
 $owner:$group|0755|key3.db
6155daa
-[rekey:submit]
6155daa
+[rekey:dbm:submit]
6155daa
 $owner:$group|0755|cert8.db
6155daa
 $owner:$group|0755|key3.db
6155daa
-[rekey:reset]
6155daa
+[rekey:dbm:reset]
6155daa
 $owner:$group|0755|cert8.db
6155daa
 $owner:$group|0755|key3.db
6155daa
-[rekey:save]
6155daa
+[rekey:dbm:save]
6155daa
 $owner:$group|0662|cert8.db
6155daa
 $owner:$group|0620|key3.db
6155daa
 OK
6155daa
diff --git a/tests/034-perms/run.sh b/tests/034-perms/run.sh
6155daa
index 7f349d3b..88eae19f 100755
6155daa
--- a/tests/034-perms/run.sh
6155daa
+++ b/tests/034-perms/run.sh
6155daa
@@ -1,6 +1,8 @@
6155daa
 #!/bin/bash
6155daa
 cd "$tmpdir"
6155daa
 
6155daa
+scheme="${scheme:-dbm:}"
6155daa
+
6155daa
 function list() {
6155daa
 	$toolsdir/ls *.* | sed -e "s~^$owner:$group|~\$owner:\$group|~g"
6155daa
 }
6155daa
-- 
6155daa
2.15.1
6155daa