svn commit: r305202 - head/cddl/contrib/opensolaris/lib/libzfs/common

Alexander Motin mav at FreeBSD.org
Thu Sep 1 14:46:35 UTC 2016


Author: mav
Date: Thu Sep  1 14:46:33 2016
New Revision: 305202
URL: https://svnweb.freebsd.org/changeset/base/305202

Log:
  MFV r302654:
  6879 incorrect endianness swap for drr_spill.drr_length in libzfs_sendrecv.c
  
  illumos/illumos-gate at 20fea7a47472aceb64d3ed48cc2a3ea268bc4795
  https://github.com/illumos/illumos-gate/commit/20fea7a47472aceb64d3ed48cc2a3ea26
  8bc4795
  
  https://www.illumos.org/issues/6879
    In libzfs_sendrecv, there's a typo:
    case DRR_SPILL:
                if (byteswap) {
                    drr->drr_u.drr_write.drr_length =
                        BSWAP_64(drr->drr_u.drr_spill.drr_length);
                }
    Instead of drr_write.drr_length, we should be assigning the result of the
    byteswap to drr_spill.drr_length.
  
  Reviewed by: Matthew Ahrens <mahrens at delphix.com>
  Reviewed by: Paul Dagnelie <pcd at delphix.com>
  Approved by: Robert Mustacchi <rm at joyent.com>
  Author: Dan Kimmel <dan.kimmel at delphix.com>

Modified:
  head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c
Directory Properties:
  head/cddl/contrib/opensolaris/   (props changed)
  head/cddl/contrib/opensolaris/lib/libzfs/   (props changed)

Modified: head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c
==============================================================================
--- head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c	Thu Sep  1 14:45:11 2016	(r305201)
+++ head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c	Thu Sep  1 14:46:33 2016	(r305202)
@@ -2967,7 +2967,7 @@ recv_skip(libzfs_handle_t *hdl, int fd, 
 			break;
 		case DRR_SPILL:
 			if (byteswap) {
-				drr->drr_u.drr_write.drr_length =
+				drr->drr_u.drr_spill.drr_length =
 				    BSWAP_64(drr->drr_u.drr_spill.drr_length);
 			}
 			(void) recv_read(hdl, fd, buf,


More information about the svn-src-all mailing list