summaryrefslogtreecommitdiffstats
path: root/cmd/zstreamdump
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/zstreamdump')
-rw-r--r--cmd/zstreamdump/zstreamdump.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/cmd/zstreamdump/zstreamdump.c b/cmd/zstreamdump/zstreamdump.c
index a162eceda..ae8e5bf66 100644
--- a/cmd/zstreamdump/zstreamdump.c
+++ b/cmd/zstreamdump/zstreamdump.c
@@ -236,6 +236,7 @@ main(int argc, char *argv[])
struct drr_spill *drrs = &thedrr.drr_u.drr_spill;
struct drr_write_embedded *drrwe = &thedrr.drr_u.drr_write_embedded;
struct drr_object_range *drror = &thedrr.drr_u.drr_object_range;
+ struct drr_redact *drrr = &thedrr.drr_u.drr_redact;
struct drr_checksum *drrc = &thedrr.drr_u.drr_checksum;
int c;
boolean_t verbose = B_FALSE;
@@ -711,6 +712,21 @@ main(int argc, char *argv[])
mac);
}
break;
+ case DRR_REDACT:
+ if (do_byteswap) {
+ drrr->drr_object = BSWAP_64(drrr->drr_object);
+ drrr->drr_offset = BSWAP_64(drrr->drr_offset);
+ drrr->drr_length = BSWAP_64(drrr->drr_length);
+ drrr->drr_toguid = BSWAP_64(drrr->drr_toguid);
+ }
+ if (verbose) {
+ (void) printf("REDACT object = %llu offset = "
+ "%llu length = %llu\n",
+ (u_longlong_t)drrr->drr_object,
+ (u_longlong_t)drrr->drr_offset,
+ (u_longlong_t)drrr->drr_length);
+ }
+ break;
case DRR_NUMTYPES:
/* should never be reached */
exit(1);