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/linux | |
| 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/linux')
| -rw-r--r-- | include/linux/crypto.h | 27 | ||||
| -rw-r--r-- | include/linux/hw_random.h | 7 |
2 files changed, 5 insertions, 29 deletions
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. */ |
