PERFORCE change 1202972 for review
John-Mark Gurney
jmg at FreeBSD.org
Wed Nov 19 01:09:01 UTC 2014
http://p4web.freebsd.org/@@1202972?ac=10
Change 1202972 by jmg at 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"
More information about the p4-projects
mailing list