mirror of
				https://git.proxmox.com/git/mirror_zfs.git
				synced 2025-10-26 18:05:04 +03:00 
			
		
		
		
	module: icp: remove set-but-unused cd_miscdata
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Ahelenia Ziemiańska <nabijaczleweli@nabijaczleweli.xyz> Closes #12901
This commit is contained in:
		
							parent
							
								
									739afd9475
								
							
						
					
					
						commit
						64e82cea13
					
				| @ -214,19 +214,6 @@ typedef uint32_t crypto_keysize_unit_t; | |||||||
| #define	SUN_CKM_ECDSA_SHA1		"CKM_ECDSA_SHA1" | #define	SUN_CKM_ECDSA_SHA1		"CKM_ECDSA_SHA1" | ||||||
| #define	SUN_CKM_ECDSA			"CKM_ECDSA" | #define	SUN_CKM_ECDSA			"CKM_ECDSA" | ||||||
| 
 | 
 | ||||||
| /* Shared operation context format for CKM_RC4 */ |  | ||||||
| typedef struct { |  | ||||||
| #if defined(__amd64) |  | ||||||
| 	uint32_t	i, j; |  | ||||||
| 	uint32_t	arr[256]; |  | ||||||
| 	uint32_t	flag; |  | ||||||
| #else |  | ||||||
| 	uchar_t		arr[256]; |  | ||||||
| 	uchar_t		i, j; |  | ||||||
| #endif /* __amd64 */ |  | ||||||
| 	uint64_t	pad;		/* For 64-bit alignment */ |  | ||||||
| } arcfour_state_t; |  | ||||||
| 
 |  | ||||||
| /* Data arguments of cryptographic operations */ | /* Data arguments of cryptographic operations */ | ||||||
| 
 | 
 | ||||||
| typedef enum crypto_data_format { | typedef enum crypto_data_format { | ||||||
| @ -238,21 +225,15 @@ typedef struct crypto_data { | |||||||
| 	crypto_data_format_t	cd_format;	/* Format identifier	*/ | 	crypto_data_format_t	cd_format;	/* Format identifier	*/ | ||||||
| 	off_t			cd_offset;	/* Offset from the beginning */ | 	off_t			cd_offset;	/* Offset from the beginning */ | ||||||
| 	size_t			cd_length;	/* # of bytes in use */ | 	size_t			cd_length;	/* # of bytes in use */ | ||||||
| 	caddr_t			cd_miscdata;	/* ancillary data */ |  | ||||||
| 	union { | 	union { | ||||||
| 		/* Raw format */ | 		/* Raw format */ | ||||||
| 		iovec_t cdu_raw;		/* Pointer and length	    */ | 		iovec_t cd_raw;		/* Pointer and length	    */ | ||||||
| 
 | 
 | ||||||
| 		/* uio scatter-gather format */ | 		/* uio scatter-gather format */ | ||||||
| 		zfs_uio_t	*cdu_uio; | 		zfs_uio_t	*cd_uio; | ||||||
| 
 | 	};	/* Crypto Data Union */ | ||||||
| 	} cdu;	/* Crypto Data Union */ |  | ||||||
| } crypto_data_t; | } crypto_data_t; | ||||||
| 
 | 
 | ||||||
| #define	cd_raw		cdu.cdu_raw |  | ||||||
| #define	cd_uio		cdu.cdu_uio |  | ||||||
| #define	cd_mp		cdu.cdu_mp |  | ||||||
| 
 |  | ||||||
| /* The keys, and their contents */ | /* The keys, and their contents */ | ||||||
| 
 | 
 | ||||||
| typedef struct { | typedef struct { | ||||||
|  | |||||||
| @ -242,19 +242,12 @@ int | |||||||
| cbc_init_ctx(cbc_ctx_t *cbc_ctx, char *param, size_t param_len, | cbc_init_ctx(cbc_ctx_t *cbc_ctx, char *param, size_t param_len, | ||||||
|     size_t block_size, void (*copy_block)(uint8_t *, uint64_t *)) |     size_t block_size, void (*copy_block)(uint8_t *, uint64_t *)) | ||||||
| { | { | ||||||
| 	/*
 | 	/* Copy IV into context. */ | ||||||
| 	 * Copy IV into context. | 	ASSERT3P(param, !=, NULL); | ||||||
| 	 * | 	ASSERT3U(param_len, ==, block_size); | ||||||
| 	 * If cm_param == NULL then the IV comes from the | 
 | ||||||
| 	 * cd_miscdata field in the crypto_data structure. | 	copy_block((uchar_t *)param, cbc_ctx->cbc_iv); | ||||||
| 	 */ |  | ||||||
| 	if (param != NULL) { |  | ||||||
| 		ASSERT(param_len == block_size); |  | ||||||
| 		copy_block((uchar_t *)param, cbc_ctx->cbc_iv); |  | ||||||
| 	} |  | ||||||
| 
 | 
 | ||||||
| 	cbc_ctx->cbc_lastp = (uint8_t *)&cbc_ctx->cbc_iv[0]; |  | ||||||
| 	cbc_ctx->cbc_flags |= CBC_MODE; |  | ||||||
| 	return (CRYPTO_SUCCESS); | 	return (CRYPTO_SUCCESS); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | |||||||
| @ -114,33 +114,21 @@ crypto_put_output_data(uchar_t *buf, crypto_data_t *output, int len) | |||||||
| 
 | 
 | ||||||
| int | int | ||||||
| crypto_update_iov(void *ctx, crypto_data_t *input, crypto_data_t *output, | crypto_update_iov(void *ctx, crypto_data_t *input, crypto_data_t *output, | ||||||
|     int (*cipher)(void *, caddr_t, size_t, crypto_data_t *), |     int (*cipher)(void *, caddr_t, size_t, crypto_data_t *)) | ||||||
|     void (*copy_block)(uint8_t *, uint64_t *)) |  | ||||||
| { | { | ||||||
| 	common_ctx_t *common_ctx = ctx; |  | ||||||
| 	int rv; |  | ||||||
| 
 |  | ||||||
| 	ASSERT(input != output); | 	ASSERT(input != output); | ||||||
| 	if (input->cd_miscdata != NULL) { |  | ||||||
| 		copy_block((uint8_t *)input->cd_miscdata, |  | ||||||
| 		    &common_ctx->cc_iv[0]); |  | ||||||
| 	} |  | ||||||
| 
 | 
 | ||||||
| 	if (input->cd_raw.iov_len < input->cd_length) | 	if (input->cd_raw.iov_len < input->cd_length) | ||||||
| 		return (CRYPTO_ARGUMENTS_BAD); | 		return (CRYPTO_ARGUMENTS_BAD); | ||||||
| 
 | 
 | ||||||
| 	rv = (cipher)(ctx, input->cd_raw.iov_base + input->cd_offset, | 	return ((cipher)(ctx, input->cd_raw.iov_base + input->cd_offset, | ||||||
| 	    input->cd_length, output); | 	    input->cd_length, output)); | ||||||
| 
 |  | ||||||
| 	return (rv); |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| int | int | ||||||
| crypto_update_uio(void *ctx, crypto_data_t *input, crypto_data_t *output, | crypto_update_uio(void *ctx, crypto_data_t *input, crypto_data_t *output, | ||||||
|     int (*cipher)(void *, caddr_t, size_t, crypto_data_t *), |     int (*cipher)(void *, caddr_t, size_t, crypto_data_t *)) | ||||||
|     void (*copy_block)(uint8_t *, uint64_t *)) |  | ||||||
| { | { | ||||||
| 	common_ctx_t *common_ctx = ctx; |  | ||||||
| 	zfs_uio_t *uiop = input->cd_uio; | 	zfs_uio_t *uiop = input->cd_uio; | ||||||
| 	off_t offset = input->cd_offset; | 	off_t offset = input->cd_offset; | ||||||
| 	size_t length = input->cd_length; | 	size_t length = input->cd_length; | ||||||
| @ -148,10 +136,6 @@ crypto_update_uio(void *ctx, crypto_data_t *input, crypto_data_t *output, | |||||||
| 	size_t cur_len; | 	size_t cur_len; | ||||||
| 
 | 
 | ||||||
| 	ASSERT(input != output); | 	ASSERT(input != output); | ||||||
| 	if (input->cd_miscdata != NULL) { |  | ||||||
| 		copy_block((uint8_t *)input->cd_miscdata, |  | ||||||
| 		    &common_ctx->cc_iv[0]); |  | ||||||
| 	} |  | ||||||
| 
 | 
 | ||||||
| 	if (zfs_uio_segflg(input->cd_uio) != UIO_SYSSPACE) { | 	if (zfs_uio_segflg(input->cd_uio) != UIO_SYSSPACE) { | ||||||
| 		return (CRYPTO_ARGUMENTS_BAD); | 		return (CRYPTO_ARGUMENTS_BAD); | ||||||
|  | |||||||
| @ -481,11 +481,9 @@ extern void kcf_free_provider_desc(kcf_provider_desc_t *); | |||||||
| extern void undo_register_provider(kcf_provider_desc_t *, boolean_t); | extern void undo_register_provider(kcf_provider_desc_t *, boolean_t); | ||||||
| extern int crypto_put_output_data(uchar_t *, crypto_data_t *, int); | extern int crypto_put_output_data(uchar_t *, crypto_data_t *, int); | ||||||
| extern int crypto_update_iov(void *, crypto_data_t *, crypto_data_t *, | extern int crypto_update_iov(void *, crypto_data_t *, crypto_data_t *, | ||||||
|     int (*cipher)(void *, caddr_t, size_t, crypto_data_t *), |     int (*cipher)(void *, caddr_t, size_t, crypto_data_t *)); | ||||||
|     void (*copy_block)(uint8_t *, uint64_t *)); |  | ||||||
| extern int crypto_update_uio(void *, crypto_data_t *, crypto_data_t *, | extern int crypto_update_uio(void *, crypto_data_t *, crypto_data_t *, | ||||||
|     int (*cipher)(void *, caddr_t, size_t, crypto_data_t *), |     int (*cipher)(void *, caddr_t, size_t, crypto_data_t *)); | ||||||
|     void (*copy_block)(uint8_t *, uint64_t *)); |  | ||||||
| 
 | 
 | ||||||
| /* Access to the provider's table */ | /* Access to the provider's table */ | ||||||
| extern void kcf_prov_tab_destroy(void); | extern void kcf_prov_tab_destroy(void); | ||||||
|  | |||||||
| @ -582,13 +582,11 @@ aes_encrypt_update(crypto_ctx_t *ctx, crypto_data_t *plaintext, | |||||||
| 	switch (plaintext->cd_format) { | 	switch (plaintext->cd_format) { | ||||||
| 	case CRYPTO_DATA_RAW: | 	case CRYPTO_DATA_RAW: | ||||||
| 		ret = crypto_update_iov(ctx->cc_provider_private, | 		ret = crypto_update_iov(ctx->cc_provider_private, | ||||||
| 		    plaintext, ciphertext, aes_encrypt_contiguous_blocks, | 		    plaintext, ciphertext, aes_encrypt_contiguous_blocks); | ||||||
| 		    aes_copy_block64); |  | ||||||
| 		break; | 		break; | ||||||
| 	case CRYPTO_DATA_UIO: | 	case CRYPTO_DATA_UIO: | ||||||
| 		ret = crypto_update_uio(ctx->cc_provider_private, | 		ret = crypto_update_uio(ctx->cc_provider_private, | ||||||
| 		    plaintext, ciphertext, aes_encrypt_contiguous_blocks, | 		    plaintext, ciphertext, aes_encrypt_contiguous_blocks); | ||||||
| 		    aes_copy_block64); |  | ||||||
| 		break; | 		break; | ||||||
| 	default: | 	default: | ||||||
| 		ret = CRYPTO_ARGUMENTS_BAD; | 		ret = CRYPTO_ARGUMENTS_BAD; | ||||||
| @ -661,13 +659,11 @@ aes_decrypt_update(crypto_ctx_t *ctx, crypto_data_t *ciphertext, | |||||||
| 	switch (ciphertext->cd_format) { | 	switch (ciphertext->cd_format) { | ||||||
| 	case CRYPTO_DATA_RAW: | 	case CRYPTO_DATA_RAW: | ||||||
| 		ret = crypto_update_iov(ctx->cc_provider_private, | 		ret = crypto_update_iov(ctx->cc_provider_private, | ||||||
| 		    ciphertext, plaintext, aes_decrypt_contiguous_blocks, | 		    ciphertext, plaintext, aes_decrypt_contiguous_blocks); | ||||||
| 		    aes_copy_block64); |  | ||||||
| 		break; | 		break; | ||||||
| 	case CRYPTO_DATA_UIO: | 	case CRYPTO_DATA_UIO: | ||||||
| 		ret = crypto_update_uio(ctx->cc_provider_private, | 		ret = crypto_update_uio(ctx->cc_provider_private, | ||||||
| 		    ciphertext, plaintext, aes_decrypt_contiguous_blocks, | 		    ciphertext, plaintext, aes_decrypt_contiguous_blocks); | ||||||
| 		    aes_copy_block64); |  | ||||||
| 		break; | 		break; | ||||||
| 	default: | 	default: | ||||||
| 		ret = CRYPTO_ARGUMENTS_BAD; | 		ret = CRYPTO_ARGUMENTS_BAD; | ||||||
| @ -930,11 +926,11 @@ aes_encrypt_atomic(crypto_provider_handle_t provider, | |||||||
| 	switch (plaintext->cd_format) { | 	switch (plaintext->cd_format) { | ||||||
| 	case CRYPTO_DATA_RAW: | 	case CRYPTO_DATA_RAW: | ||||||
| 		ret = crypto_update_iov(&aes_ctx, plaintext, ciphertext, | 		ret = crypto_update_iov(&aes_ctx, plaintext, ciphertext, | ||||||
| 		    aes_encrypt_contiguous_blocks, aes_copy_block64); | 		    aes_encrypt_contiguous_blocks); | ||||||
| 		break; | 		break; | ||||||
| 	case CRYPTO_DATA_UIO: | 	case CRYPTO_DATA_UIO: | ||||||
| 		ret = crypto_update_uio(&aes_ctx, plaintext, ciphertext, | 		ret = crypto_update_uio(&aes_ctx, plaintext, ciphertext, | ||||||
| 		    aes_encrypt_contiguous_blocks, aes_copy_block64); | 		    aes_encrypt_contiguous_blocks); | ||||||
| 		break; | 		break; | ||||||
| 	default: | 	default: | ||||||
| 		ret = CRYPTO_ARGUMENTS_BAD; | 		ret = CRYPTO_ARGUMENTS_BAD; | ||||||
| @ -1071,11 +1067,11 @@ aes_decrypt_atomic(crypto_provider_handle_t provider, | |||||||
| 	switch (ciphertext->cd_format) { | 	switch (ciphertext->cd_format) { | ||||||
| 	case CRYPTO_DATA_RAW: | 	case CRYPTO_DATA_RAW: | ||||||
| 		ret = crypto_update_iov(&aes_ctx, ciphertext, plaintext, | 		ret = crypto_update_iov(&aes_ctx, ciphertext, plaintext, | ||||||
| 		    aes_decrypt_contiguous_blocks, aes_copy_block64); | 		    aes_decrypt_contiguous_blocks); | ||||||
| 		break; | 		break; | ||||||
| 	case CRYPTO_DATA_UIO: | 	case CRYPTO_DATA_UIO: | ||||||
| 		ret = crypto_update_uio(&aes_ctx, ciphertext, plaintext, | 		ret = crypto_update_uio(&aes_ctx, ciphertext, plaintext, | ||||||
| 		    aes_decrypt_contiguous_blocks, aes_copy_block64); | 		    aes_decrypt_contiguous_blocks); | ||||||
| 		break; | 		break; | ||||||
| 	default: | 	default: | ||||||
| 		ret = CRYPTO_ARGUMENTS_BAD; | 		ret = CRYPTO_ARGUMENTS_BAD; | ||||||
|  | |||||||
| @ -438,13 +438,11 @@ zio_do_crypt_uio(boolean_t encrypt, uint64_t crypt, crypto_key_t *key, | |||||||
| 	plaindata.cd_format = CRYPTO_DATA_UIO; | 	plaindata.cd_format = CRYPTO_DATA_UIO; | ||||||
| 	plaindata.cd_offset = 0; | 	plaindata.cd_offset = 0; | ||||||
| 	plaindata.cd_uio = puio; | 	plaindata.cd_uio = puio; | ||||||
| 	plaindata.cd_miscdata = NULL; |  | ||||||
| 	plaindata.cd_length = plain_full_len; | 	plaindata.cd_length = plain_full_len; | ||||||
| 
 | 
 | ||||||
| 	cipherdata.cd_format = CRYPTO_DATA_UIO; | 	cipherdata.cd_format = CRYPTO_DATA_UIO; | ||||||
| 	cipherdata.cd_offset = 0; | 	cipherdata.cd_offset = 0; | ||||||
| 	cipherdata.cd_uio = cuio; | 	cipherdata.cd_uio = cuio; | ||||||
| 	cipherdata.cd_miscdata = NULL; |  | ||||||
| 	cipherdata.cd_length = datalen + maclen; | 	cipherdata.cd_length = datalen + maclen; | ||||||
| 
 | 
 | ||||||
| 	/* perform the actual encryption */ | 	/* perform the actual encryption */ | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user
	 наб
						наб