diff --git a/tests/spread/integration/libnss3/Test.java b/tests/spread/integration/libnss3/Test.java new file mode 100644 index 000000000..558cc43df --- /dev/null +++ b/tests/spread/integration/libnss3/Test.java @@ -0,0 +1,23 @@ +import java.io.ByteArrayInputStream; +import java.security.Security; +import sun.security.pkcs11.SunPKCS11; + +public class Test { + public static void main(String[] args){ + String config = "library=/usr/lib/x86_64-linux-gnu/nss/libsoftokn3.so" + "\n" + + "name=\"Soft Token\"\n" + + "slot=2\n" + + "attributes=compatibility\n" + + "allowSingleThreadedModules=true\n" + + "showInfo=true\n" + + "nssArgs=\"configdir='./conf' " + + "certPrefix='' " + + "keyPrefix='' " + + "secmod='secmod.db' " + + "flags='readOnly'\"" + + "\n"; + + SunPKCS11 provider = new SunPKCS11(new ByteArrayInputStream(config.getBytes())); + Security.insertProviderAt(provider, 1); + } +} diff --git a/tests/spread/integration/libnss3/conf/cert8.db b/tests/spread/integration/libnss3/conf/cert8.db new file mode 100644 index 000000000..b80a6e7e4 Binary files /dev/null and b/tests/spread/integration/libnss3/conf/cert8.db differ diff --git a/tests/spread/integration/libnss3/conf/cert9.db b/tests/spread/integration/libnss3/conf/cert9.db new file mode 100644 index 000000000..57acfb4d1 Binary files /dev/null and b/tests/spread/integration/libnss3/conf/cert9.db differ diff --git a/tests/spread/integration/libnss3/conf/key3.db b/tests/spread/integration/libnss3/conf/key3.db new file mode 100644 index 000000000..ca8e43dd8 Binary files /dev/null and b/tests/spread/integration/libnss3/conf/key3.db differ diff --git a/tests/spread/integration/libnss3/conf/key4.db b/tests/spread/integration/libnss3/conf/key4.db new file mode 100644 index 000000000..c68eaf0e7 Binary files /dev/null and b/tests/spread/integration/libnss3/conf/key4.db differ diff --git a/tests/spread/integration/libnss3/conf/secmod.db b/tests/spread/integration/libnss3/conf/secmod.db new file mode 100644 index 000000000..5418eea41 Binary files /dev/null and b/tests/spread/integration/libnss3/conf/secmod.db differ diff --git a/tests/spread/integration/libnss3/task.yaml b/tests/spread/integration/libnss3/task.yaml new file mode 100644 index 000000000..4607314ef --- /dev/null +++ b/tests/spread/integration/libnss3/task.yaml @@ -0,0 +1,21 @@ +summary: Integration tests for libnss3 + +environment: + SLICE/nss: "nss" + +execute: | + # Test core slice installation + echo "SLICE=${SLICE}" + rootfs="$(install-slices openjdk-8-jre-headless_security libnss3_${SLICE})" + sudo apt-get update + sudo apt-get install -y openjdk-8-jdk-headless + javac Test.java + cp Test.class ${rootfs}/ + cp -r conf ${rootfs}/ + cd ${rootfs} + + mkdir -p proc/self + for java in `find usr/lib/jvm -name java`; do + ln -sf /${java} proc/self/exe + chroot . ${java} -cp . Test + done