mirror_zfs/lib/libzfs
Ryan Moeller 97bbeeb938
Fail invalid incremental recursive send gracefully
zfs send -R -i snap1 pool/ds@snap1 is an invalid invocation of zfs send
because the incremental source and target snapshots are the same.  We
have an error message for this condition, but we don't make it there
because of a failed assert while iterating through the dataset's
snapshots.

Check for NULL to avoid the assert so we can make it to the error
message.

Test this form of invalid send invocation in rsend tests.  Fix the
rsend_016_neg test while here: log_neg itself doesn't fail the test,
and writing to /dev/null is not supported on all Linux kernels.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: John Kennedy <john.kennedy@delphix.com>
Reviewed-by: Paul Dagnelie <pcd@delphix.com>
Signed-off-by: Ryan Moeller <ryan@iXsystems.com>
Closes #11121 
Closes #12533
2021-10-08 11:14:26 -07:00
..
os Simplify and document OpenZFS library dependencies 2021-10-07 11:31:26 -06:00
.gitignore Clean up lib dependencies 2020-07-10 14:26:00 -07:00
libzfs_changelist.c libzfs: convert to -fvisibility=hidden 2021-06-03 13:17:55 -07:00
libzfs_config.c Use zfs_ioctl with zfs_cmd_t in libzfs 2019-10-23 17:29:43 -07:00
libzfs_crypto.c Make get_key_material_file fail more verbosely 2021-08-05 17:48:33 -06:00
libzfs_dataset.c Upstream: unmount snapshots before destroying them on macOS 2021-09-20 09:29:59 -06:00
libzfs_diff.c libzfs: write_inuse_diffs_one: format strerror() with "%s" 2021-06-04 16:04:37 -07:00
libzfs_impl.h pass handle to do_unmount() 2021-07-15 12:31:00 -06:00
libzfs_import.c libzfs: don't distribute libzfs_impl.h 2021-06-03 13:17:35 -07:00
libzfs_iter.c lib/: set O_CLOEXEC on all fds 2021-04-11 15:45:59 -07:00
libzfs_mount.c Add zpool_disable_datasets_os() / zfs_unmount_os() 2021-08-31 09:56:00 -06:00
libzfs_pool.c Use fallthrough macro 2021-09-14 10:17:54 -06:00
libzfs_sendrecv.c Fail invalid incremental recursive send gracefully 2021-10-08 11:14:26 -07:00
libzfs_status.c Improvements to the 'compatibility' property 2021-04-12 09:08:56 -07:00
libzfs_util.c Use fallthrough macro 2021-09-14 10:17:54 -06:00
libzfs.abi Simplify and document OpenZFS library dependencies 2021-10-07 11:31:26 -06:00
libzfs.pc.in Spruce up pkg-config files for libzfs/libzfs_core 2020-09-04 11:11:18 -07:00
libzfs.suppr Library ABI tracking with abigail 2020-11-17 09:18:52 -08:00
Makefile.am Simplify and document OpenZFS library dependencies 2021-10-07 11:31:26 -06:00
THIRDPARTYLICENSE.openssl Fix typos in lib/ 2019-09-02 17:53:27 -07:00
THIRDPARTYLICENSE.openssl.descrip Encryption patch follow-up 2017-10-11 16:54:48 -04:00