diff options
author | Herbert Xu <herbert@gondor.apana.org.au> | 2006-08-19 07:38:49 -0400 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2006-09-20 21:46:18 -0400 |
commit | e9d41164e2fdd897fe4520c2079ea0000f6e0ec3 (patch) | |
tree | da56da7216ac1cc7abc040b93ed6a358d374ef71 /crypto/tcrypt.h | |
parent | 0796ae061e6da5de7cfc1af57dfd42a73908b1bf (diff) |
[CRYPTO] tcrypt: Use HMAC template and hash interface
This patch converts tcrypt to use the new HMAC template rather than the
hard-coded version of HMAC. It also converts all digest users to use
the new cipher interface.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'crypto/tcrypt.h')
-rw-r--r-- | crypto/tcrypt.h | 23 |
1 files changed, 5 insertions, 18 deletions
diff --git a/crypto/tcrypt.h b/crypto/tcrypt.h index 408d5aad5864..a40c4411729e 100644 --- a/crypto/tcrypt.h +++ b/crypto/tcrypt.h | |||
@@ -36,16 +36,6 @@ struct hash_testvec { | |||
36 | unsigned char ksize; | 36 | unsigned char ksize; |
37 | }; | 37 | }; |
38 | 38 | ||
39 | struct hmac_testvec { | ||
40 | char key[128]; | ||
41 | char plaintext[128]; | ||
42 | char digest[MAX_DIGEST_SIZE]; | ||
43 | unsigned char tap[MAX_TAP]; | ||
44 | unsigned char ksize; | ||
45 | unsigned char psize; | ||
46 | unsigned char np; | ||
47 | }; | ||
48 | |||
49 | struct cipher_testvec { | 39 | struct cipher_testvec { |
50 | char key[MAX_KEYLEN] __attribute__ ((__aligned__(4))); | 40 | char key[MAX_KEYLEN] __attribute__ ((__aligned__(4))); |
51 | char iv[MAX_IVLEN]; | 41 | char iv[MAX_IVLEN]; |
@@ -65,7 +55,7 @@ struct cipher_speed { | |||
65 | unsigned int blen; | 55 | unsigned int blen; |
66 | }; | 56 | }; |
67 | 57 | ||
68 | struct digest_speed { | 58 | struct hash_speed { |
69 | unsigned int blen; /* buffer length */ | 59 | unsigned int blen; /* buffer length */ |
70 | unsigned int plen; /* per-update length */ | 60 | unsigned int plen; /* per-update length */ |
71 | }; | 61 | }; |
@@ -697,14 +687,13 @@ static struct hash_testvec tgr128_tv_template[] = { | |||
697 | }, | 687 | }, |
698 | }; | 688 | }; |
699 | 689 | ||
700 | #ifdef CONFIG_CRYPTO_HMAC | ||
701 | /* | 690 | /* |
702 | * HMAC-MD5 test vectors from RFC2202 | 691 | * HMAC-MD5 test vectors from RFC2202 |
703 | * (These need to be fixed to not use strlen). | 692 | * (These need to be fixed to not use strlen). |
704 | */ | 693 | */ |
705 | #define HMAC_MD5_TEST_VECTORS 7 | 694 | #define HMAC_MD5_TEST_VECTORS 7 |
706 | 695 | ||
707 | static struct hmac_testvec hmac_md5_tv_template[] = | 696 | static struct hash_testvec hmac_md5_tv_template[] = |
708 | { | 697 | { |
709 | { | 698 | { |
710 | .key = { [0 ... 15] = 0x0b }, | 699 | .key = { [0 ... 15] = 0x0b }, |
@@ -768,7 +757,7 @@ static struct hmac_testvec hmac_md5_tv_template[] = | |||
768 | */ | 757 | */ |
769 | #define HMAC_SHA1_TEST_VECTORS 7 | 758 | #define HMAC_SHA1_TEST_VECTORS 7 |
770 | 759 | ||
771 | static struct hmac_testvec hmac_sha1_tv_template[] = { | 760 | static struct hash_testvec hmac_sha1_tv_template[] = { |
772 | { | 761 | { |
773 | .key = { [0 ... 19] = 0x0b }, | 762 | .key = { [0 ... 19] = 0x0b }, |
774 | .ksize = 20, | 763 | .ksize = 20, |
@@ -833,7 +822,7 @@ static struct hmac_testvec hmac_sha1_tv_template[] = { | |||
833 | */ | 822 | */ |
834 | #define HMAC_SHA256_TEST_VECTORS 10 | 823 | #define HMAC_SHA256_TEST_VECTORS 10 |
835 | 824 | ||
836 | static struct hmac_testvec hmac_sha256_tv_template[] = { | 825 | static struct hash_testvec hmac_sha256_tv_template[] = { |
837 | { | 826 | { |
838 | .key = { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, | 827 | .key = { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, |
839 | 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, | 828 | 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, |
@@ -944,8 +933,6 @@ static struct hmac_testvec hmac_sha256_tv_template[] = { | |||
944 | }, | 933 | }, |
945 | }; | 934 | }; |
946 | 935 | ||
947 | #endif /* CONFIG_CRYPTO_HMAC */ | ||
948 | |||
949 | /* | 936 | /* |
950 | * DES test vectors. | 937 | * DES test vectors. |
951 | */ | 938 | */ |
@@ -3160,7 +3147,7 @@ static struct cipher_speed des_speed_template[] = { | |||
3160 | /* | 3147 | /* |
3161 | * Digest speed tests | 3148 | * Digest speed tests |
3162 | */ | 3149 | */ |
3163 | static struct digest_speed generic_digest_speed_template[] = { | 3150 | static struct hash_speed generic_hash_speed_template[] = { |
3164 | { .blen = 16, .plen = 16, }, | 3151 | { .blen = 16, .plen = 16, }, |
3165 | { .blen = 64, .plen = 16, }, | 3152 | { .blen = 64, .plen = 16, }, |
3166 | { .blen = 64, .plen = 64, }, | 3153 | { .blen = 64, .plen = 64, }, |