13b2aab18SMatthew Ahrens /* 23b2aab18SMatthew Ahrens * CDDL HEADER START 33b2aab18SMatthew Ahrens * 43b2aab18SMatthew Ahrens * The contents of this file are subject to the terms of the 53b2aab18SMatthew Ahrens * Common Development and Distribution License (the "License"). 63b2aab18SMatthew Ahrens * You may not use this file except in compliance with the License. 73b2aab18SMatthew Ahrens * 83b2aab18SMatthew Ahrens * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 93b2aab18SMatthew Ahrens * or http://www.opensolaris.org/os/licensing. 103b2aab18SMatthew Ahrens * See the License for the specific language governing permissions 113b2aab18SMatthew Ahrens * and limitations under the License. 123b2aab18SMatthew Ahrens * 133b2aab18SMatthew Ahrens * When distributing Covered Code, include this CDDL HEADER in each 143b2aab18SMatthew Ahrens * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 153b2aab18SMatthew Ahrens * If applicable, add the following below this CDDL HEADER, with the 163b2aab18SMatthew Ahrens * fields enclosed by brackets "[]" replaced with your own identifying 173b2aab18SMatthew Ahrens * information: Portions Copyright [yyyy] [name of copyright owner] 183b2aab18SMatthew Ahrens * 193b2aab18SMatthew Ahrens * CDDL HEADER END 203b2aab18SMatthew Ahrens */ 213b2aab18SMatthew Ahrens 223b2aab18SMatthew Ahrens /* 233b2aab18SMatthew Ahrens * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. 24643da460SMax Grossman * Copyright (c) 2012, 2014 by Delphix. All rights reserved. 253b2aab18SMatthew Ahrens * Copyright 2011 Nexenta Systems, Inc. All rights reserved. 26a2afb611SJerry Jelinek * Copyright (c) 2013, Joyent, Inc. All rights reserved. 27c3d26abcSMatthew Ahrens * Copyright (c) 2014 Integros [integros.com] 283b2aab18SMatthew Ahrens */ 293b2aab18SMatthew Ahrens 303b2aab18SMatthew Ahrens #ifndef _DMU_SEND_H 313b2aab18SMatthew Ahrens #define _DMU_SEND_H 323b2aab18SMatthew Ahrens 333b2aab18SMatthew Ahrens #include <sys/inttypes.h> 343b2aab18SMatthew Ahrens #include <sys/spa.h> 353b2aab18SMatthew Ahrens 363b2aab18SMatthew Ahrens struct vnode; 373b2aab18SMatthew Ahrens struct dsl_dataset; 383b2aab18SMatthew Ahrens struct drr_begin; 393b2aab18SMatthew Ahrens struct avl_tree; 409c3fd121SMatthew Ahrens struct dmu_replay_record; 413b2aab18SMatthew Ahrens 429c3fd121SMatthew Ahrens int dmu_send(const char *tosnap, const char *fromsnap, boolean_t embedok, 43*eb633035STom Caputi boolean_t large_block_ok, boolean_t compressok, boolean_t rawok, int outfd, 44*eb633035STom Caputi uint64_t resumeobj, uint64_t resumeoff, struct vnode *vp, offset_t *off); 453b2aab18SMatthew Ahrens int dmu_send_estimate(struct dsl_dataset *ds, struct dsl_dataset *fromds, 465602294fSDan Kimmel boolean_t stream_compressed, uint64_t *sizep); 47643da460SMax Grossman int dmu_send_estimate_from_txg(struct dsl_dataset *ds, uint64_t fromtxg, 485602294fSDan Kimmel boolean_t stream_compressed, uint64_t *sizep); 493b2aab18SMatthew Ahrens int dmu_send_obj(const char *pool, uint64_t tosnap, uint64_t fromsnap, 505602294fSDan Kimmel boolean_t embedok, boolean_t large_block_ok, boolean_t compressok, 51*eb633035STom Caputi boolean_t rawok, int outfd, struct vnode *vp, offset_t *off); 523b2aab18SMatthew Ahrens 533b2aab18SMatthew Ahrens #endif /* _DMU_SEND_H */ 54