zfs/lib
Allan Jude 7a6c12fd6a
Don't assert on nvlists larger than SPA_MAXBLOCKSIZE
Originally we asserted that all reads are less than SPA_MAXBLOCKSIZE
However, nvlists are not ZFS records, and are not limited to
SPA_MAXBLOCKSIZE.

Add a new environment variable, ZFS_SENDRECV_MAX_NVLIST, to allow the
user to specify the maximum size of the nvlist that can be sent or
received.
Default value: 4 * SPA_MAXBLOCKSIZE (64 MB)

Modify libzfs send routines to return a useful error if the send stream
will generate an nvlist that is beyond the maximum size.

Modify libzfs recv routines to add an explicit error message if the
nvlist is too large, rather than abort()ing.

Move the change the assert() to only trigger on data records

Reviewed-by: Paul Dagnelie <pcd@delphix.com>
Reviewed-by: Kjeld Schouten <kjeld@schouten-lebbing.nl>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Matthew Ahrens <mahrens@delphix.com>
Signed-off-by: Allan Jude <allan@klarasystems.com>
Closes #9616
2020-08-25 11:04:20 -07:00
..
libavl Fixes for make dist 2020-06-26 14:20:02 -07:00
libefi Clean up lib dependencies 2020-07-10 14:26:00 -07:00
libicp Clean up lib dependencies 2020-07-10 14:26:00 -07:00
libnvpair Disable -Wl,-z,defs for ASAN builds 2020-07-14 12:17:44 -07:00
libshare Remove dependency on sharetab file and refactor sharing logic 2020-07-13 09:19:18 -07:00
libspl Appease GCC sprintf warnings found on Fedora 32/GCC 10.0.1 2020-08-24 10:32:59 -07:00
libtpool Clean up lib dependencies 2020-07-10 14:26:00 -07:00
libunicode Fixes for make dist 2020-06-26 14:20:02 -07:00
libuutil Disable -Wl,-z,defs for ASAN builds 2020-07-14 12:17:44 -07:00
libzfs Don't assert on nvlists larger than SPA_MAXBLOCKSIZE 2020-08-25 11:04:20 -07:00
libzfs_core libzfs_core: Initialize fail_ioc_cmd to ZFS_IOC_LAST 2020-08-18 18:07:43 -07:00
libzpool Add zstd support to zfs 2020-08-20 10:30:06 -07:00
libzstd Avoid symbol collision with in-kernel zstdlib 2020-08-24 12:20:41 -07:00
libzutil FreeBSD: zfs commands backward compatibility 2020-07-15 21:32:50 -07:00
Makefile.am Add zstd support to zfs 2020-08-20 10:30:06 -07:00