Date: Wed, 19 Nov 2014 01:09:00 GMT From: John-Mark Gurney <jmg@FreeBSD.org> To: Perforce Change Reviews <perforce@FreeBSD.org> Subject: PERFORCE change 1202972 for review Message-ID: <201411190109.sAJ1902f087383@skunkworks.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://p4web.freebsd.org/@@1202972?ac=10 Change 1202972 by jmg@jmg_carbon2 on 2014/11/19 01:08:06 relocate all the test vectors to the soon to be commited nist-kat port... update runtests.sh so that it will skip the tests, but output a notice if the package is not installed... Sponsored by: FreeBSD Foundation Sponsored by: Netgate Affected files ... .. //depot/projects/opencrypto/tests/sys/opencrypto/CBCGFSbox128.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/CBCGFSbox192.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/CBCGFSbox256.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/CBCKeySbox128.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/CBCKeySbox192.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/CBCKeySbox256.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/CBCVarKey128.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/CBCVarKey192.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/CBCVarKey256.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/CBCVarTxt128.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/CBCVarTxt192.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/CBCVarTxt256.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/HMAC.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/Makefile#4 edit .. //depot/projects/opencrypto/tests/sys/opencrypto/TCBCinvperm.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/TCBCpermop.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/TCBCsubtab.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/TCBCvarkey.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/TCBCvartext.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/XTSGenAES128.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/XTSGenAES256.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/cryptotest.py#4 edit .. //depot/projects/opencrypto/tests/sys/opencrypto/gcmDecrypt128.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/gcmDecrypt192.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/gcmDecrypt256.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/gcmEncryptExtIV128.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/gcmEncryptExtIV192.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/gcmEncryptExtIV256.rsp#2 delete .. //depot/projects/opencrypto/tests/sys/opencrypto/runtests.sh#3 edit Differences ... ==== //depot/projects/opencrypto/tests/sys/opencrypto/Makefile#4 (text+ko) ==== @@ -11,31 +11,4 @@ FILESDIR= ${TESTSDIR} FILES= ${PYMODULES} -FILES+= CBCGFSbox128.rsp -FILES+= CBCGFSbox192.rsp -FILES+= CBCGFSbox256.rsp -FILES+= CBCKeySbox128.rsp -FILES+= CBCKeySbox192.rsp -FILES+= CBCKeySbox256.rsp -FILES+= CBCVarKey128.rsp -FILES+= CBCVarKey192.rsp -FILES+= CBCVarKey256.rsp -FILES+= CBCVarTxt128.rsp -FILES+= CBCVarTxt192.rsp -FILES+= CBCVarTxt256.rsp -FILES+= HMAC.rsp -FILES+= TCBCinvperm.rsp -FILES+= TCBCpermop.rsp -FILES+= TCBCsubtab.rsp -FILES+= TCBCvarkey.rsp -FILES+= TCBCvartext.rsp -FILES+= XTSGenAES128.rsp -FILES+= XTSGenAES256.rsp -FILES+= gcmDecrypt128.rsp -FILES+= gcmDecrypt192.rsp -FILES+= gcmDecrypt256.rsp -FILES+= gcmEncryptExtIV128.rsp -FILES+= gcmEncryptExtIV192.rsp -FILES+= gcmEncryptExtIV256.rsp - .include <bsd.test.mk> ==== //depot/projects/opencrypto/tests/sys/opencrypto/cryptotest.py#4 (text+ko) ==== @@ -2,11 +2,17 @@ import cryptodev import itertools +import os import struct import unittest from cryptodev import * from glob import iglob +katdir = '/usr/local/share/nist-kat' + +def katg(base, glob): + return iglob(os.path.join(katdir, base, glob)) + aesmodules = [ 'cryptosoft0', 'aesni0', ] desmodules = [ 'cryptosoft0', ] shamodules = [ 'cryptosoft0', ] @@ -23,18 +29,18 @@ ############### @unittest.skipIf(cname not in aesmodules, 'skipping AES on %s' % `cname`) def test_xts(self): - for i in iglob('XTS*.rsp'): + for i in katg('XTSTestVectors/format tweak value input - data unit seq no', '*.rsp'): self.runXTS(i, cryptodev.CRYPTO_AES_XTS) def test_cbc(self): - for i in iglob('CBC[GKV]*.rsp'): + for i in katg('KAT_AES', 'CBC[GKV]*.rsp'): self.runCBC(i) def test_gcm(self): - for i in iglob('gcmEncrypt*'): + for i in katg('gcmtestvectors', 'gcmEncrypt*'): self.runGCM(i, 'ENCRYPT') - for i in iglob('gcmDecrypt*'): + for i in katg('gcmtestvectors', 'gcmDecrypt*'): self.runGCM(i, 'DECRYPT') _gmacsizes = { 32: cryptodev.CRYPTO_AES_256_NIST_GMAC, @@ -158,7 +164,7 @@ ############### @unittest.skipIf(cname not in desmodules, 'skipping DES on %s' % `cname`) def test_tdes(self): - for i in iglob('TCBC[a-z]*.rsp'): + for i in katg('KAT_TDES', 'TCBC[a-z]*.rsp'): self.runTDES(i) def runTDES(self, fname): @@ -200,7 +206,8 @@ # self.runSHA(i) def test_sha1hmac(self): - self.runSHA1HMAC('HMAC.rsp') + for i in katg('hmactestvectors', 'HMAC.rsp'): + self.runSHA1HMAC(i) def runSHA1HMAC(self, fname): for bogusmode, lines in cryptodev.KATParser(fname, ==== //depot/projects/opencrypto/tests/sys/opencrypto/runtests.sh#3 (text+ko) ==== @@ -2,6 +2,11 @@ set -e +if [ ! -d /usr/local/share/nist-kat ]; then + echo 'Skipping, nist-kat package not installed for test vectors.' + exit 0 +fi + if kldload aesni 2>/dev/null; then unloadaesni=1 fi @@ -14,8 +19,7 @@ oldcdas=$(sysctl -e kern.cryptodevallowsoft) sysctl kern.cryptodevallowsoft=1 -cd "$(dirname "$0")" -python cryptotest.py +python $(dirname $0)/cryptotest.py sysctl "$oldcdas"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201411190109.sAJ1902f087383>