]> git.proxmox.com Git - mirror_ubuntu-focal-kernel.git/blobdiff - crypto/testmgr.h
crypto: ofb - fix handling partial blocks and make thread-safe
[mirror_ubuntu-focal-kernel.git] / crypto / testmgr.h
index 7f4dae7a57a1c985c8b76932cc271083ceb56453..ca8e8ebef309d01fbb74b9cb02fa859aea015a74 100644 (file)
@@ -16681,8 +16681,7 @@ static const struct cipher_testvec aes_ctr_rfc3686_tv_template[] = {
 };
 
 static const struct cipher_testvec aes_ofb_tv_template[] = {
-        /* From NIST Special Publication 800-38A, Appendix F.5 */
-       {
+       { /* From NIST Special Publication 800-38A, Appendix F.5 */
                .key    = "\x2b\x7e\x15\x16\x28\xae\xd2\xa6"
                          "\xab\xf7\x15\x88\x09\xcf\x4f\x3c",
                .klen   = 16,
@@ -16705,6 +16704,31 @@ static const struct cipher_testvec aes_ofb_tv_template[] = {
                          "\x30\x4c\x65\x28\xf6\x59\xc7\x78"
                          "\x66\xa5\x10\xd9\xc1\xd6\xae\x5e",
                .len    = 64,
+               .also_non_np = 1,
+               .np     = 2,
+               .tap    = { 31, 33 },
+       }, { /* > 16 bytes, not a multiple of 16 bytes */
+               .key    = "\x2b\x7e\x15\x16\x28\xae\xd2\xa6"
+                         "\xab\xf7\x15\x88\x09\xcf\x4f\x3c",
+               .klen   = 16,
+               .iv     = "\x00\x01\x02\x03\x04\x05\x06\x07"
+                         "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f",
+               .ptext  = "\x6b\xc1\xbe\xe2\x2e\x40\x9f\x96"
+                         "\xe9\x3d\x7e\x11\x73\x93\x17\x2a"
+                         "\xae",
+               .ctext  = "\x3b\x3f\xd9\x2e\xb7\x2d\xad\x20"
+                         "\x33\x34\x49\xf8\xe8\x3c\xfb\x4a"
+                         "\x77",
+               .len    = 17,
+       }, { /* < 16 bytes */
+               .key    = "\x2b\x7e\x15\x16\x28\xae\xd2\xa6"
+                         "\xab\xf7\x15\x88\x09\xcf\x4f\x3c",
+               .klen   = 16,
+               .iv     = "\x00\x01\x02\x03\x04\x05\x06\x07"
+                         "\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f",
+               .ptext  = "\x6b\xc1\xbe\xe2\x2e\x40\x9f",
+               .ctext  = "\x3b\x3f\xd9\x2e\xb7\x2d\xad",
+               .len    = 7,
        }
 };