Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
Pull crypto update from Herbert Xu:
 "Here is the crypto update for 4.2:
  API:
   - Convert RNG interface to new style.
   - New AEAD interface with one SG list for AD and plain/cipher text.
     All external AEAD users have been converted.
   - New asymmetric key interface (akcipher).
  Algorithms:
   - Chacha20, Poly1305 and RFC7539 support.
   - New RSA implementation.
   - Jitter RNG.
   - DRBG is now seeded with both /dev/random and Jitter RNG.  If kernel
     pool isn't ready then DRBG will be reseeded when it is.
   - DRBG is now the default crypto API RNG, replacing krng.
   - 842 compression (previously part of powerpc nx driver).
  Drivers:
   - Accelerated SHA-512 for arm64.
   - New Marvell CESA driver that supports DMA and more algorithms.
   - Updated powerpc nx 842 support.
   - Added support for SEC1 hardware to talitos"
* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (292 commits)
  crypto: marvell/cesa - remove COMPILE_TEST dependency
  crypto: algif_aead - Temporarily disable all AEAD algorithms
  crypto: af_alg - Forbid the use internal algorithms
  crypto: echainiv - Only hold RNG during initialisation
  crypto: seqiv - Add compatibility support without RNG
  crypto: eseqiv - Offer normal cipher functionality without RNG
  crypto: chainiv - Offer normal cipher functionality without RNG
  crypto: user - Add CRYPTO_MSG_DELRNG
  crypto: user - Move cryptouser.h to uapi
  crypto: rng - Do not free default RNG when it becomes unused
  crypto: skcipher - Allow givencrypt to be NULL
  crypto: sahara - propagate the error on clk_disable_unprepare() failure
  crypto: rsa - fix invalid select for AKCIPHER
  crypto: picoxcell - Update to the current clk API
  crypto: nx - Check for bogus firmware properties
  crypto: marvell/cesa - add DT bindings documentation
  crypto: marvell/cesa - add support for Kirkwood and Dove SoCs
  crypto: marvell/cesa - add support for Orion SoCs
  crypto: marvell/cesa - add allhwsupport module parameter
  crypto: marvell/cesa - add support for all armada SoCs
  ...
	
	
This commit is contained in:
		
				commit
				
					
						44d21c3f3a
					
				
			
		
					 174 changed files with 23585 additions and 7265 deletions
				
			
		
							
								
								
									
										111
									
								
								include/uapi/linux/cryptouser.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										111
									
								
								include/uapi/linux/cryptouser.h
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,111 @@ | |||
| /*
 | ||||
|  * Crypto user configuration API. | ||||
|  * | ||||
|  * Copyright (C) 2011 secunet Security Networks AG | ||||
|  * Copyright (C) 2011 Steffen Klassert <steffen.klassert@secunet.com> | ||||
|  * | ||||
|  * This program is free software; you can redistribute it and/or modify it | ||||
|  * under the terms and conditions of the GNU General Public License, | ||||
|  * version 2, as published by the Free Software Foundation. | ||||
|  * | ||||
|  * This program is distributed in the hope it will be useful, but WITHOUT | ||||
|  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||||
|  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for | ||||
|  * more details. | ||||
|  * | ||||
|  * You should have received a copy of the GNU General Public License along with | ||||
|  * this program; if not, write to the Free Software Foundation, Inc., | ||||
|  * 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA. | ||||
|  */ | ||||
| 
 | ||||
| /* Netlink configuration messages.  */ | ||||
| enum { | ||||
| 	CRYPTO_MSG_BASE = 0x10, | ||||
| 	CRYPTO_MSG_NEWALG = 0x10, | ||||
| 	CRYPTO_MSG_DELALG, | ||||
| 	CRYPTO_MSG_UPDATEALG, | ||||
| 	CRYPTO_MSG_GETALG, | ||||
| 	CRYPTO_MSG_DELRNG, | ||||
| 	__CRYPTO_MSG_MAX | ||||
| }; | ||||
| #define CRYPTO_MSG_MAX (__CRYPTO_MSG_MAX - 1) | ||||
| #define CRYPTO_NR_MSGTYPES (CRYPTO_MSG_MAX + 1 - CRYPTO_MSG_BASE) | ||||
| 
 | ||||
| #define CRYPTO_MAX_NAME CRYPTO_MAX_ALG_NAME | ||||
| 
 | ||||
| /* Netlink message attributes.  */ | ||||
| enum crypto_attr_type_t { | ||||
| 	CRYPTOCFGA_UNSPEC, | ||||
| 	CRYPTOCFGA_PRIORITY_VAL,	/* __u32 */ | ||||
| 	CRYPTOCFGA_REPORT_LARVAL,	/* struct crypto_report_larval */ | ||||
| 	CRYPTOCFGA_REPORT_HASH,		/* struct crypto_report_hash */ | ||||
| 	CRYPTOCFGA_REPORT_BLKCIPHER,	/* struct crypto_report_blkcipher */ | ||||
| 	CRYPTOCFGA_REPORT_AEAD,		/* struct crypto_report_aead */ | ||||
| 	CRYPTOCFGA_REPORT_COMPRESS,	/* struct crypto_report_comp */ | ||||
| 	CRYPTOCFGA_REPORT_RNG,		/* struct crypto_report_rng */ | ||||
| 	CRYPTOCFGA_REPORT_CIPHER,	/* struct crypto_report_cipher */ | ||||
| 	CRYPTOCFGA_REPORT_AKCIPHER,	/* struct crypto_report_akcipher */ | ||||
| 	__CRYPTOCFGA_MAX | ||||
| 
 | ||||
| #define CRYPTOCFGA_MAX (__CRYPTOCFGA_MAX - 1) | ||||
| }; | ||||
| 
 | ||||
| struct crypto_user_alg { | ||||
| 	char cru_name[CRYPTO_MAX_ALG_NAME]; | ||||
| 	char cru_driver_name[CRYPTO_MAX_ALG_NAME]; | ||||
| 	char cru_module_name[CRYPTO_MAX_ALG_NAME]; | ||||
| 	__u32 cru_type; | ||||
| 	__u32 cru_mask; | ||||
| 	__u32 cru_refcnt; | ||||
| 	__u32 cru_flags; | ||||
| }; | ||||
| 
 | ||||
| struct crypto_report_larval { | ||||
| 	char type[CRYPTO_MAX_NAME]; | ||||
| }; | ||||
| 
 | ||||
| struct crypto_report_hash { | ||||
| 	char type[CRYPTO_MAX_NAME]; | ||||
| 	unsigned int blocksize; | ||||
| 	unsigned int digestsize; | ||||
| }; | ||||
| 
 | ||||
| struct crypto_report_cipher { | ||||
| 	char type[CRYPTO_MAX_ALG_NAME]; | ||||
| 	unsigned int blocksize; | ||||
| 	unsigned int min_keysize; | ||||
| 	unsigned int max_keysize; | ||||
| }; | ||||
| 
 | ||||
| struct crypto_report_blkcipher { | ||||
| 	char type[CRYPTO_MAX_NAME]; | ||||
| 	char geniv[CRYPTO_MAX_NAME]; | ||||
| 	unsigned int blocksize; | ||||
| 	unsigned int min_keysize; | ||||
| 	unsigned int max_keysize; | ||||
| 	unsigned int ivsize; | ||||
| }; | ||||
| 
 | ||||
| struct crypto_report_aead { | ||||
| 	char type[CRYPTO_MAX_NAME]; | ||||
| 	char geniv[CRYPTO_MAX_NAME]; | ||||
| 	unsigned int blocksize; | ||||
| 	unsigned int maxauthsize; | ||||
| 	unsigned int ivsize; | ||||
| }; | ||||
| 
 | ||||
| struct crypto_report_comp { | ||||
| 	char type[CRYPTO_MAX_NAME]; | ||||
| }; | ||||
| 
 | ||||
| struct crypto_report_rng { | ||||
| 	char type[CRYPTO_MAX_NAME]; | ||||
| 	unsigned int seedsize; | ||||
| }; | ||||
| 
 | ||||
| struct crypto_report_akcipher { | ||||
| 	char type[CRYPTO_MAX_NAME]; | ||||
| }; | ||||
| 
 | ||||
| #define CRYPTO_REPORT_MAXSIZE (sizeof(struct crypto_user_alg) + \ | ||||
| 			       sizeof(struct crypto_report_blkcipher)) | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Linus Torvalds
				Linus Torvalds