1/**************************************************************************** 2 **************************************************************************** 3 *** 4 *** This header was automatically generated from a Linux kernel header 5 *** of the same name, to make information necessary for userspace to 6 *** call into the kernel available to libc. It contains only constants, 7 *** structures, and macros generated from the original header, and thus, 8 *** contains no copyrightable information. 9 *** 10 *** To edit the content of this header, modify the corresponding 11 *** source file (e.g. under external/kernel-headers/original/) then 12 *** run bionic/libc/kernel/tools/update_all.py 13 *** 14 *** Any manual change here will be lost the next time this script will 15 *** be run. You've been warned! 16 *** 17 **************************************************************************** 18 ****************************************************************************/ 19enum { 20 CRYPTO_MSG_BASE = 0x10, 21 CRYPTO_MSG_NEWALG = 0x10, 22 CRYPTO_MSG_DELALG, 23 CRYPTO_MSG_UPDATEALG, 24 CRYPTO_MSG_GETALG, 25 CRYPTO_MSG_DELRNG, 26 __CRYPTO_MSG_MAX 27}; 28#define CRYPTO_MSG_MAX (__CRYPTO_MSG_MAX - 1) 29#define CRYPTO_NR_MSGTYPES (CRYPTO_MSG_MAX + 1 - CRYPTO_MSG_BASE) 30#define CRYPTO_MAX_NAME CRYPTO_MAX_ALG_NAME 31enum crypto_attr_type_t { 32 CRYPTOCFGA_UNSPEC, 33 CRYPTOCFGA_PRIORITY_VAL, 34 CRYPTOCFGA_REPORT_LARVAL, 35 CRYPTOCFGA_REPORT_HASH, 36 CRYPTOCFGA_REPORT_BLKCIPHER, 37 CRYPTOCFGA_REPORT_AEAD, 38 CRYPTOCFGA_REPORT_COMPRESS, 39 CRYPTOCFGA_REPORT_RNG, 40 CRYPTOCFGA_REPORT_CIPHER, 41 CRYPTOCFGA_REPORT_AKCIPHER, 42 CRYPTOCFGA_REPORT_KPP, 43 CRYPTOCFGA_REPORT_ACOMP, 44 __CRYPTOCFGA_MAX 45#define CRYPTOCFGA_MAX (__CRYPTOCFGA_MAX - 1) 46}; 47struct crypto_user_alg { 48 char cru_name[CRYPTO_MAX_ALG_NAME]; 49 char cru_driver_name[CRYPTO_MAX_ALG_NAME]; 50 char cru_module_name[CRYPTO_MAX_ALG_NAME]; 51 __u32 cru_type; 52 __u32 cru_mask; 53 __u32 cru_refcnt; 54 __u32 cru_flags; 55}; 56struct crypto_report_larval { 57 char type[CRYPTO_MAX_NAME]; 58}; 59struct crypto_report_hash { 60 char type[CRYPTO_MAX_NAME]; 61 unsigned int blocksize; 62 unsigned int digestsize; 63}; 64struct crypto_report_cipher { 65 char type[CRYPTO_MAX_ALG_NAME]; 66 unsigned int blocksize; 67 unsigned int min_keysize; 68 unsigned int max_keysize; 69}; 70struct crypto_report_blkcipher { 71 char type[CRYPTO_MAX_NAME]; 72 char geniv[CRYPTO_MAX_NAME]; 73 unsigned int blocksize; 74 unsigned int min_keysize; 75 unsigned int max_keysize; 76 unsigned int ivsize; 77}; 78struct crypto_report_aead { 79 char type[CRYPTO_MAX_NAME]; 80 char geniv[CRYPTO_MAX_NAME]; 81 unsigned int blocksize; 82 unsigned int maxauthsize; 83 unsigned int ivsize; 84}; 85struct crypto_report_comp { 86 char type[CRYPTO_MAX_NAME]; 87}; 88struct crypto_report_rng { 89 char type[CRYPTO_MAX_NAME]; 90 unsigned int seedsize; 91}; 92struct crypto_report_akcipher { 93 char type[CRYPTO_MAX_NAME]; 94}; 95struct crypto_report_kpp { 96 char type[CRYPTO_MAX_NAME]; 97}; 98struct crypto_report_acomp { 99 char type[CRYPTO_MAX_NAME]; 100}; 101#define CRYPTO_REPORT_MAXSIZE (sizeof(struct crypto_user_alg) + sizeof(struct crypto_report_blkcipher)) 102