diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-08 18:55:13 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2009-12-08 18:55:13 -0500 |
commit | e069efb6bbf8f739a2e084183709b5eb76abf90d (patch) | |
tree | 0866058fa6e1b77d9defc6f45f39d1f851afe327 /include | |
parent | 324889b6bd2a89e0d69a2f9d133d6cf24579ab6c (diff) | |
parent | eed89d0f9d3383851cec634565a6414fae70fe91 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
hwrng: core - Prevent too-small buffer sizes
hwrng: virtio-rng - Convert to new API
hwrng: core - Replace u32 in driver API with byte array
crypto: ansi_cprng - Move FIPS functions under CONFIG_CRYPTO_FIPS
crypto: testmgr - Add ghash algorithm test before provide to users
crypto: ghash-clmulni-intel - Put proper .data section in place
crypto: ghash-clmulni-intel - Use gas macro for PCLMULQDQ-NI and PSHUFB
crypto: aesni-intel - Use gas macro for AES-NI instructions
x86: Generate .byte code for some new instructions via gas macro
crypto: ghash-intel - Fix irq_fpu_usable usage
crypto: ghash-intel - Add PSHUFB macros
crypto: ghash-intel - Hard-code pshufb
crypto: ghash-intel - Fix building failure on x86_32
crypto: testmgr - Fix warning
crypto: ansi_cprng - Fix test in get_prng_bytes
crypto: hash - Remove cra_u.{digest,hash}
crypto: api - Remove digest case from procfs show handler
crypto: hash - Remove legacy hash/digest code
crypto: ansi_cprng - Add FIPS wrapper
crypto: ghash - Add PCLMULQDQ accelerated implementation
Diffstat (limited to 'include')
-rw-r--r-- | include/crypto/algapi.h | 1 | ||||
-rw-r--r-- | include/crypto/cryptd.h | 1 | ||||
-rw-r--r-- | include/linux/crypto.h | 27 | ||||
-rw-r--r-- | include/linux/hw_random.h | 7 |
4 files changed, 6 insertions, 30 deletions
diff --git a/include/crypto/algapi.h b/include/crypto/algapi.h index 1ffb53f74d37..fc0d575c71e0 100644 --- a/include/crypto/algapi.h +++ b/include/crypto/algapi.h | |||
@@ -106,7 +106,6 @@ struct blkcipher_walk { | |||
106 | extern const struct crypto_type crypto_ablkcipher_type; | 106 | extern const struct crypto_type crypto_ablkcipher_type; |
107 | extern const struct crypto_type crypto_aead_type; | 107 | extern const struct crypto_type crypto_aead_type; |
108 | extern const struct crypto_type crypto_blkcipher_type; | 108 | extern const struct crypto_type crypto_blkcipher_type; |
109 | extern const struct crypto_type crypto_hash_type; | ||
110 | 109 | ||
111 | void crypto_mod_put(struct crypto_alg *alg); | 110 | void crypto_mod_put(struct crypto_alg *alg); |
112 | 111 | ||
diff --git a/include/crypto/cryptd.h b/include/crypto/cryptd.h index 2f65a6e8ea4d..1c96b255017c 100644 --- a/include/crypto/cryptd.h +++ b/include/crypto/cryptd.h | |||
@@ -39,6 +39,7 @@ static inline struct cryptd_ahash *__cryptd_ahash_cast( | |||
39 | struct cryptd_ahash *cryptd_alloc_ahash(const char *alg_name, | 39 | struct cryptd_ahash *cryptd_alloc_ahash(const char *alg_name, |
40 | u32 type, u32 mask); | 40 | u32 type, u32 mask); |
41 | struct crypto_shash *cryptd_ahash_child(struct cryptd_ahash *tfm); | 41 | struct crypto_shash *cryptd_ahash_child(struct cryptd_ahash *tfm); |
42 | struct shash_desc *cryptd_shash_desc(struct ahash_request *req); | ||
42 | void cryptd_free_ahash(struct cryptd_ahash *tfm); | 43 | void cryptd_free_ahash(struct cryptd_ahash *tfm); |
43 | 44 | ||
44 | #endif | 45 | #endif |
diff --git a/include/linux/crypto.h b/include/linux/crypto.h index fd929889e8dc..24d2e30f1b46 100644 --- a/include/linux/crypto.h +++ b/include/linux/crypto.h | |||
@@ -250,29 +250,6 @@ struct cipher_alg { | |||
250 | void (*cia_decrypt)(struct crypto_tfm *tfm, u8 *dst, const u8 *src); | 250 | void (*cia_decrypt)(struct crypto_tfm *tfm, u8 *dst, const u8 *src); |
251 | }; | 251 | }; |
252 | 252 | ||
253 | struct digest_alg { | ||
254 | unsigned int dia_digestsize; | ||
255 | void (*dia_init)(struct crypto_tfm *tfm); | ||
256 | void (*dia_update)(struct crypto_tfm *tfm, const u8 *data, | ||
257 | unsigned int len); | ||
258 | void (*dia_final)(struct crypto_tfm *tfm, u8 *out); | ||
259 | int (*dia_setkey)(struct crypto_tfm *tfm, const u8 *key, | ||
260 | unsigned int keylen); | ||
261 | }; | ||
262 | |||
263 | struct hash_alg { | ||
264 | int (*init)(struct hash_desc *desc); | ||
265 | int (*update)(struct hash_desc *desc, struct scatterlist *sg, | ||
266 | unsigned int nbytes); | ||
267 | int (*final)(struct hash_desc *desc, u8 *out); | ||
268 | int (*digest)(struct hash_desc *desc, struct scatterlist *sg, | ||
269 | unsigned int nbytes, u8 *out); | ||
270 | int (*setkey)(struct crypto_hash *tfm, const u8 *key, | ||
271 | unsigned int keylen); | ||
272 | |||
273 | unsigned int digestsize; | ||
274 | }; | ||
275 | |||
276 | struct compress_alg { | 253 | struct compress_alg { |
277 | int (*coa_compress)(struct crypto_tfm *tfm, const u8 *src, | 254 | int (*coa_compress)(struct crypto_tfm *tfm, const u8 *src, |
278 | unsigned int slen, u8 *dst, unsigned int *dlen); | 255 | unsigned int slen, u8 *dst, unsigned int *dlen); |
@@ -293,8 +270,6 @@ struct rng_alg { | |||
293 | #define cra_aead cra_u.aead | 270 | #define cra_aead cra_u.aead |
294 | #define cra_blkcipher cra_u.blkcipher | 271 | #define cra_blkcipher cra_u.blkcipher |
295 | #define cra_cipher cra_u.cipher | 272 | #define cra_cipher cra_u.cipher |
296 | #define cra_digest cra_u.digest | ||
297 | #define cra_hash cra_u.hash | ||
298 | #define cra_compress cra_u.compress | 273 | #define cra_compress cra_u.compress |
299 | #define cra_rng cra_u.rng | 274 | #define cra_rng cra_u.rng |
300 | 275 | ||
@@ -320,8 +295,6 @@ struct crypto_alg { | |||
320 | struct aead_alg aead; | 295 | struct aead_alg aead; |
321 | struct blkcipher_alg blkcipher; | 296 | struct blkcipher_alg blkcipher; |
322 | struct cipher_alg cipher; | 297 | struct cipher_alg cipher; |
323 | struct digest_alg digest; | ||
324 | struct hash_alg hash; | ||
325 | struct compress_alg compress; | 298 | struct compress_alg compress; |
326 | struct rng_alg rng; | 299 | struct rng_alg rng; |
327 | } cra_u; | 300 | } cra_u; |
diff --git a/include/linux/hw_random.h b/include/linux/hw_random.h index 7244456e7e65..9bede7633f74 100644 --- a/include/linux/hw_random.h +++ b/include/linux/hw_random.h | |||
@@ -22,10 +22,12 @@ | |||
22 | * @cleanup: Cleanup callback (can be NULL). | 22 | * @cleanup: Cleanup callback (can be NULL). |
23 | * @data_present: Callback to determine if data is available | 23 | * @data_present: Callback to determine if data is available |
24 | * on the RNG. If NULL, it is assumed that | 24 | * on the RNG. If NULL, it is assumed that |
25 | * there is always data available. | 25 | * there is always data available. *OBSOLETE* |
26 | * @data_read: Read data from the RNG device. | 26 | * @data_read: Read data from the RNG device. |
27 | * Returns the number of lower random bytes in "data". | 27 | * Returns the number of lower random bytes in "data". |
28 | * Must not be NULL. | 28 | * Must not be NULL. *OSOLETE* |
29 | * @read: New API. drivers can fill up to max bytes of data | ||
30 | * into the buffer. The buffer is aligned for any type. | ||
29 | * @priv: Private data, for use by the RNG driver. | 31 | * @priv: Private data, for use by the RNG driver. |
30 | */ | 32 | */ |
31 | struct hwrng { | 33 | struct hwrng { |
@@ -34,6 +36,7 @@ struct hwrng { | |||
34 | void (*cleanup)(struct hwrng *rng); | 36 | void (*cleanup)(struct hwrng *rng); |
35 | int (*data_present)(struct hwrng *rng, int wait); | 37 | int (*data_present)(struct hwrng *rng, int wait); |
36 | int (*data_read)(struct hwrng *rng, u32 *data); | 38 | int (*data_read)(struct hwrng *rng, u32 *data); |
39 | int (*read)(struct hwrng *rng, void *data, size_t max, bool wait); | ||
37 | unsigned long priv; | 40 | unsigned long priv; |
38 | 41 | ||
39 | /* internal. */ | 42 | /* internal. */ |