Add regression test
authorSam Hartman <hartmans@mit.edu>
Tue, 20 Nov 2001 00:59:19 +0000 (00:59 +0000)
committerSam Hartman <hartmans@mit.edu>
Tue, 20 Nov 2001 00:59:19 +0000 (00:59 +0000)
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@14010 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/crypto/ChangeLog
src/lib/crypto/Makefile.in
src/lib/crypto/t_prng.comments [new file with mode: 0644]
src/lib/crypto/t_prng.expected [new file with mode: 0644]
src/lib/crypto/t_prng.seed [new file with mode: 0644]

index 2e2bbbdb71e3a6a2d230cb73b29c4a6e410f4a75..4637a2f408fa1befc6a679c0de2602eeff3582dc 100644 (file)
@@ -1,3 +1,7 @@
+2001-11-19  Sam Hartman  <hartmans@mit.edu>
+
+       * Makefile.in (check-unix): Run t_prng
+
 2001-11-19  Danilo Almeida  <dalmeida@mit.edu>
 
        * Makefile.in: Do yarrow subdir on Windows.
index a3c96248b1e77f30076c159fc9d7fc9cc66e7f36..092cf5f76998535801f1176040ba37374d807b59 100644 (file)
@@ -146,6 +146,8 @@ clean-unix:: clean-liblinks clean-libs clean-libobjs
 check-unix:: t_nfold t_encrypt t_prng
        $(RUN_SETUP) ./t_nfold
        $(RUN_SETUP) ./t_encrypt
+       $(RUN_SETUP) ./t_prng <t_prng.seed >t_prng.output && \
+       diff t_prng.output t_prng.expected
 
 t_nfold$(EXEEXT): t_nfold.$(OBJEXT) nfold.$(OBJEXT)
        $(CC_LINK) -o $@ t_nfold.$(OBJEXT) nfold.$(OBJEXT)
@@ -159,6 +161,7 @@ t_prng$(EXEEXT): t_prng.$(OBJEXT)
 
 clean::
        $(RM) t_nfold.o t_nfold t_encrypt t_encrypt.o
+       -$(RM) t_prng.output
 
 all-windows::
        cd crc32
diff --git a/src/lib/crypto/t_prng.comments b/src/lib/crypto/t_prng.comments
new file mode 100644 (file)
index 0000000..1666b70
--- /dev/null
@@ -0,0 +1,14 @@
+Things this test tries to do:
+*adding data
+* getting random data
+* adding more data but not enough for reseed
+*getting more random data
+*adding enough to trigger a reseed
+*getting more random data
+* getting random data without a reseed inbetween
+* getting enough data to trigger a gate
+
+
+If you adjust the blocksize or the seeding parameters then this test
+should be adjusted.
+
diff --git a/src/lib/crypto/t_prng.expected b/src/lib/crypto/t_prng.expected
new file mode 100644 (file)
index 0000000..2699977
--- /dev/null
@@ -0,0 +1,4 @@
+41db7ffaf1e3767c35ac25af
+a472adc1444d4817f054bf211fbcd8f45ff26424
+69cf8b9268274aff90aacddcd864e4f1673c3d1af2668b9a50
+858774b8da94535da32b1e49872c324584383eba1b55356cae80bda3b8039894d326b8d8b4ef38d4431b0a0d4b1eed7842d2f577798bfc781e81ffec8fe6d367197966481d31e5ebf63b7dab2a4252f32ab6b8582ab6801c18b0033dc098edbfa4bf1a06b7001bac3a028e079507fd2d713099f63f71c59b18eaaddef9b3f687443cf8050e981cd5b4174ef0834fde470344117a75b544c6e4e6a8fa3d83555b3eb3d27e8dd22ef8557b2f482e63f8228000998c15df1f00ef3be9cb1c59bb82a355caccb712c85188bfc9e37997fc0605ca6551a0d06f4cc3f741c919ca575abf1813483fe1a94777ab4c726217b094a9c8dd9188855a7c4a847ba10c0002f743b88c3db8cd559cb8a3177cc41054f5316370d57571eafe1aee48184e626216ff10fb47307feed6c2e4e9932321783d2056e8a2a0e44f3d30f3a1786306c4dc25a38a7c82d4a1c950c6297afe346b21ad7d48035d1fc094bfafc5fc01dd54acad0de6c8b5c8de05d6149f1b08acc94f4ecbe98937d5d4c8650f736c1a07061d86d87b6317b32cc30b245b0f4d5186525524c4a249d3b5d1b23e34cfdd5801649689361e938f37d312b1aea55e88b5152e57c910e6413fde8c29aea6042d7992a6d74f402f7af68ffdf4a88c95a5558a5e4eafd4d4bc55a795f0df0895fc489efb6f56a5e33315b31157d03aae312b1c0a1b4676ecb81ce813fa6f2b83183d19
diff --git a/src/lib/crypto/t_prng.seed b/src/lib/crypto/t_prng.seed
new file mode 100644 (file)
index 0000000..0b3c703
--- /dev/null
@@ -0,0 +1,25 @@
+2
+20
+ c9 72 2b e4 90 e1 fa 4b da d4 2f 43 0d dd d9 91
+ 39 d0 23 c4
+0
+1
+24
+ 87 1c 4f d4 4a 8b b8 cf 54 4e eb 9b 1f bb 7a 8e
+ 9a 7d 8d 62
+ ca 41 18 00
+12
+0
+0
+20
+1
+24
+ 28 d4 bd d4 81 85 ca 70 d5 f0 e4 a4 f3 45 80 01
+ 6a 34 79 69 0e e0 cd 21
+25
+2
+40
+ de 7c f0 c5 6a 37 0b 34 f4 0c 3a 19 31 eb 66 f1
+ ae 5f c6 a3 64 3f 2e a9 76 e1 87 93 df b6 94 86
+ bd 96 57 3f 31 e6 88 8c
+512