mirror_zfs/module/os/linux/zfs
Richard Yao 52afc3443d
Linux: Fix uninitialized variable usage in zio_do_crypt_data()
Coverity complained about this. An error from `hkdf_sha512()` before uio
initialization will cause pointers to uninitialized memory to be passed
to `zio_crypt_destroy_uio()`. This is a regression that was introduced
by cf63739191. Interestingly, this never
affected FreeBSD, since the FreeBSD version never had that patch ported.
Since moving uio initialization to the top of this function would slow
down the qat_crypt() path, we only move the `memset()` calls to the top
of the function. This is sufficient to fix this problem.

Reviewed-by: Ryan Moeller <ryan@iXsystems.com>
Reviewed-by: Neal Gompa <ngompa@datto.com>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Richard Yao <richard.yao@alumni.stonybrook.edu>
Closes #13944
2022-09-26 16:44:22 -07:00
..
abd_os.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
arc_os.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
mmp_os.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
policy.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
qat_compress.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
qat_crypt.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
qat.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
spa_misc_os.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
trace.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
vdev_disk.c Linux 5.20 compat: bdevname() 2022-08-04 16:57:33 -07:00
vdev_file.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_acl.c zfs_enter rework 2022-09-16 13:36:47 -07:00
zfs_ctldir.c zfs_enter rework 2022-09-16 13:36:47 -07:00
zfs_debug.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_dir.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_file_os.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_ioctl_os.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_racct.c module: zfs: fix unused, remove argsused 2021-12-23 09:42:47 -08:00
zfs_sysfs.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_uio.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zfs_vfsops.c Linux: Fix use-after-free in zfsvfs_create() 2022-09-19 17:30:58 -07:00
zfs_vnops_os.c zfs_enter rework 2022-09-16 13:36:47 -07:00
zfs_znode.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zio_crypt.c Linux: Fix uninitialized variable usage in zio_do_crypt_data() 2022-09-26 16:44:22 -07:00
zpl_ctldir.c zfs_enter rework 2022-09-16 13:36:47 -07:00
zpl_export.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zpl_file.c zfs_enter rework followup 2022-09-16 14:25:53 -07:00
zpl_inode.c Replace dead opensolaris.org license link 2022-07-11 14:16:13 -07:00
zpl_super.c zfs_enter rework 2022-09-16 13:36:47 -07:00
zpl_xattr.c zfs_enter rework 2022-09-16 13:36:47 -07:00
zvol_os.c Linux 5.20 compat: blk_cleanup_disk() 2022-08-04 16:57:49 -07:00