Merge git://github.com/herbertx/crypto
* git://github.com/herbertx/crypto: (48 commits) crypto: user - Depend on NET instead of selecting it crypto: user - Add dependency on NET crypto: talitos - handle descriptor not found in error path crypto: user - Initialise match in crypto_alg_match crypto: testmgr - add twofish tests crypto: testmgr - add blowfish test-vectors crypto: Make hifn_795x build depend on !ARCH_DMA_ADDR_T_64BIT crypto: twofish-x86_64-3way - fix ctr blocksize to 1 crypto: blowfish-x86_64 - fix ctr blocksize to 1 crypto: whirlpool - count rounds from 0 crypto: Add userspace report for compress type algorithms crypto: Add userspace report for cipher type algorithms crypto: Add userspace report for rng type algorithms crypto: Add userspace report for pcompress type algorithms crypto: Add userspace report for nivaead type algorithms crypto: Add userspace report for aead type algorithms crypto: Add userspace report for givcipher type algorithms crypto: Add userspace report for ablkcipher type algorithms crypto: Add userspace report for blkcipher type algorithms crypto: Add userspace report for ahash type algorithms ...
This commit is contained in:
@@ -71,6 +71,11 @@
|
||||
|
||||
#define CRYPTO_ALG_TESTED 0x00000400
|
||||
|
||||
/*
|
||||
* Set if the algorithm is an instance that is build from templates.
|
||||
*/
|
||||
#define CRYPTO_ALG_INSTANCE 0x00000800
|
||||
|
||||
/*
|
||||
* Transform masks and values (for crt_flags).
|
||||
*/
|
||||
|
102
include/linux/cryptouser.h
Normal file
102
include/linux/cryptouser.h
Normal file
@@ -0,0 +1,102 @@
|
||||
/*
|
||||
* 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_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_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;
|
||||
};
|
@@ -25,6 +25,7 @@
|
||||
#define NETLINK_SCSITRANSPORT 18 /* SCSI Transports */
|
||||
#define NETLINK_ECRYPTFS 19
|
||||
#define NETLINK_RDMA 20
|
||||
#define NETLINK_CRYPTO 21 /* Crypto layer */
|
||||
|
||||
#define MAX_LINKS 32
|
||||
|
||||
|
Reference in New Issue
Block a user