Lines Matching refs:zhp
219 process_user_props(zfs_handle_t *zhp, nvlist_t *props) in process_user_props() argument
221 libzfs_handle_t *hdl = zhp->zfs_hdl; in process_user_props()
248 zpool_add_handle(zfs_handle_t *zhp, const char *pool_name) in zpool_add_handle() argument
250 libzfs_handle_t *hdl = zhp->zfs_hdl; in zpool_add_handle()
262 zpool_find_handle(zfs_handle_t *zhp, const char *pool_name, int len) in zpool_find_handle() argument
264 libzfs_handle_t *hdl = zhp->zfs_hdl; in zpool_find_handle()
279 zpool_handle(zfs_handle_t *zhp) in zpool_handle() argument
285 len = strcspn(zhp->zfs_name, "/@#") + 1; in zpool_handle()
286 pool_name = zfs_alloc(zhp->zfs_hdl, len); in zpool_handle()
287 (void) strlcpy(pool_name, zhp->zfs_name, len); in zpool_handle()
289 zph = zpool_find_handle(zhp, pool_name, len); in zpool_handle()
291 zph = zpool_add_handle(zhp, pool_name); in zpool_handle()
314 get_stats_ioctl(zfs_handle_t *zhp, zfs_cmd_t *zc) in get_stats_ioctl() argument
316 libzfs_handle_t *hdl = zhp->zfs_hdl; in get_stats_ioctl()
318 (void) strlcpy(zc->zc_name, zhp->zfs_name, sizeof (zc->zc_name)); in get_stats_ioctl()
336 get_recvd_props_ioctl(zfs_handle_t *zhp) in get_recvd_props_ioctl() argument
338 libzfs_handle_t *hdl = zhp->zfs_hdl; in get_recvd_props_ioctl()
346 (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name)); in get_recvd_props_ioctl()
359 err = zcmd_read_dst_nvlist(zhp->zfs_hdl, &zc, &recvdprops); in get_recvd_props_ioctl()
364 nvlist_free(zhp->zfs_recvd_props); in get_recvd_props_ioctl()
365 zhp->zfs_recvd_props = recvdprops; in get_recvd_props_ioctl()
371 put_stats_zhdl(zfs_handle_t *zhp, zfs_cmd_t *zc) in put_stats_zhdl() argument
375 zhp->zfs_dmustats = zc->zc_objset_stats; /* structure assignment */ in put_stats_zhdl()
377 if (zcmd_read_dst_nvlist(zhp->zfs_hdl, zc, &allprops) != 0) { in put_stats_zhdl()
385 if ((userprops = process_user_props(zhp, allprops)) == NULL) { in put_stats_zhdl()
390 nvlist_free(zhp->zfs_props); in put_stats_zhdl()
391 nvlist_free(zhp->zfs_user_props); in put_stats_zhdl()
393 zhp->zfs_props = allprops; in put_stats_zhdl()
394 zhp->zfs_user_props = userprops; in put_stats_zhdl()
400 get_stats(zfs_handle_t *zhp) in get_stats() argument
405 if (zcmd_alloc_dst_nvlist(zhp->zfs_hdl, &zc, 0) != 0) in get_stats()
407 if (get_stats_ioctl(zhp, &zc) != 0) in get_stats()
409 else if (put_stats_zhdl(zhp, &zc) != 0) in get_stats()
419 zfs_refresh_properties(zfs_handle_t *zhp) in zfs_refresh_properties() argument
421 (void) get_stats(zhp); in zfs_refresh_properties()
429 make_dataset_handle_common(zfs_handle_t *zhp, zfs_cmd_t *zc) in make_dataset_handle_common() argument
431 if (put_stats_zhdl(zhp, zc) != 0) in make_dataset_handle_common()
438 if (zhp->zfs_dmustats.dds_type == DMU_OST_ZVOL) in make_dataset_handle_common()
439 zhp->zfs_head_type = ZFS_TYPE_VOLUME; in make_dataset_handle_common()
440 else if (zhp->zfs_dmustats.dds_type == DMU_OST_ZFS) in make_dataset_handle_common()
441 zhp->zfs_head_type = ZFS_TYPE_FILESYSTEM; in make_dataset_handle_common()
445 if (zhp->zfs_dmustats.dds_is_snapshot) in make_dataset_handle_common()
446 zhp->zfs_type = ZFS_TYPE_SNAPSHOT; in make_dataset_handle_common()
447 else if (zhp->zfs_dmustats.dds_type == DMU_OST_ZVOL) in make_dataset_handle_common()
448 zhp->zfs_type = ZFS_TYPE_VOLUME; in make_dataset_handle_common()
449 else if (zhp->zfs_dmustats.dds_type == DMU_OST_ZFS) in make_dataset_handle_common()
450 zhp->zfs_type = ZFS_TYPE_FILESYSTEM; in make_dataset_handle_common()
454 if ((zhp->zpool_hdl = zpool_handle(zhp)) == NULL) in make_dataset_handle_common()
465 zfs_handle_t *zhp = calloc(sizeof (zfs_handle_t), 1); in make_dataset_handle() local
467 if (zhp == NULL) in make_dataset_handle()
470 zhp->zfs_hdl = hdl; in make_dataset_handle()
471 (void) strlcpy(zhp->zfs_name, path, sizeof (zhp->zfs_name)); in make_dataset_handle()
473 free(zhp); in make_dataset_handle()
476 if (get_stats_ioctl(zhp, &zc) == -1) { in make_dataset_handle()
478 free(zhp); in make_dataset_handle()
481 if (make_dataset_handle_common(zhp, &zc) == -1) { in make_dataset_handle()
482 free(zhp); in make_dataset_handle()
483 zhp = NULL; in make_dataset_handle()
486 return (zhp); in make_dataset_handle()
492 zfs_handle_t *zhp = calloc(sizeof (zfs_handle_t), 1); in make_dataset_handle_zc() local
494 if (zhp == NULL) in make_dataset_handle_zc()
497 zhp->zfs_hdl = hdl; in make_dataset_handle_zc()
498 (void) strlcpy(zhp->zfs_name, zc->zc_name, sizeof (zhp->zfs_name)); in make_dataset_handle_zc()
499 if (make_dataset_handle_common(zhp, zc) == -1) { in make_dataset_handle_zc()
500 free(zhp); in make_dataset_handle_zc()
503 return (zhp); in make_dataset_handle_zc()
509 zfs_handle_t *zhp = calloc(sizeof (zfs_handle_t), 1); in make_dataset_simple_handle_zc() local
511 if (zhp == NULL) in make_dataset_simple_handle_zc()
514 zhp->zfs_hdl = pzhp->zfs_hdl; in make_dataset_simple_handle_zc()
515 (void) strlcpy(zhp->zfs_name, zc->zc_name, sizeof (zhp->zfs_name)); in make_dataset_simple_handle_zc()
516 zhp->zfs_head_type = pzhp->zfs_type; in make_dataset_simple_handle_zc()
517 zhp->zfs_type = ZFS_TYPE_SNAPSHOT; in make_dataset_simple_handle_zc()
518 zhp->zpool_hdl = zpool_handle(zhp); in make_dataset_simple_handle_zc()
519 return (zhp); in make_dataset_simple_handle_zc()
525 zfs_handle_t *zhp = calloc(sizeof (zfs_handle_t), 1); in zfs_handle_dup() local
527 if (zhp == NULL) in zfs_handle_dup()
530 zhp->zfs_hdl = zhp_orig->zfs_hdl; in zfs_handle_dup()
531 zhp->zpool_hdl = zhp_orig->zpool_hdl; in zfs_handle_dup()
532 (void) strlcpy(zhp->zfs_name, zhp_orig->zfs_name, in zfs_handle_dup()
533 sizeof (zhp->zfs_name)); in zfs_handle_dup()
534 zhp->zfs_type = zhp_orig->zfs_type; in zfs_handle_dup()
535 zhp->zfs_head_type = zhp_orig->zfs_head_type; in zfs_handle_dup()
536 zhp->zfs_dmustats = zhp_orig->zfs_dmustats; in zfs_handle_dup()
538 if (nvlist_dup(zhp_orig->zfs_props, &zhp->zfs_props, 0) != 0) { in zfs_handle_dup()
539 (void) no_memory(zhp->zfs_hdl); in zfs_handle_dup()
540 zfs_close(zhp); in zfs_handle_dup()
546 &zhp->zfs_user_props, 0) != 0) { in zfs_handle_dup()
547 (void) no_memory(zhp->zfs_hdl); in zfs_handle_dup()
548 zfs_close(zhp); in zfs_handle_dup()
554 &zhp->zfs_recvd_props, 0)) { in zfs_handle_dup()
555 (void) no_memory(zhp->zfs_hdl); in zfs_handle_dup()
556 zfs_close(zhp); in zfs_handle_dup()
560 zhp->zfs_mntcheck = zhp_orig->zfs_mntcheck; in zfs_handle_dup()
562 zhp->zfs_mntopts = zfs_strdup(zhp_orig->zfs_hdl, in zfs_handle_dup()
565 zhp->zfs_props_table = zhp_orig->zfs_props_table; in zfs_handle_dup()
566 return (zhp); in zfs_handle_dup()
605 zfs_handle_t *zhp = calloc(sizeof (zfs_handle_t), 1); in make_bookmark_handle() local
607 if (zhp == NULL) in make_bookmark_handle()
611 zhp->zfs_hdl = parent->zfs_hdl; in make_bookmark_handle()
612 (void) strlcpy(zhp->zfs_name, path, sizeof (zhp->zfs_name)); in make_bookmark_handle()
615 if (nvlist_dup(bmark_props, &zhp->zfs_props, 0) != 0) { in make_bookmark_handle()
616 free(zhp); in make_bookmark_handle()
621 zhp->zfs_head_type = parent->zfs_head_type; in make_bookmark_handle()
622 zhp->zfs_type = ZFS_TYPE_BOOKMARK; in make_bookmark_handle()
624 if ((zhp->zpool_hdl = zpool_handle(zhp)) == NULL) { in make_bookmark_handle()
625 nvlist_free(zhp->zfs_props); in make_bookmark_handle()
626 free(zhp); in make_bookmark_handle()
630 return (zhp); in make_bookmark_handle()
635 zfs_handle_t *zhp; member
639 zfs_open_bookmarks_cb(zfs_handle_t *zhp, void *data) in zfs_open_bookmarks_cb() argument
646 if (strcmp(dp->path, zfs_get_name(zhp)) == 0) { in zfs_open_bookmarks_cb()
650 dp->zhp = zhp; in zfs_open_bookmarks_cb()
657 zfs_close(zhp); in zfs_open_bookmarks_cb()
669 zfs_handle_t *zhp; in zfs_open() local
694 if ((zhp = make_dataset_handle(hdl, path)) == NULL) { in zfs_open()
725 &cb_data) == 0) && (cb_data.zhp == NULL)) { in zfs_open()
730 if (cb_data.zhp == NULL) { in zfs_open()
735 zhp = cb_data.zhp; in zfs_open()
743 if (zhp == NULL) { in zfs_open()
749 if ((zhp = make_dataset_handle(hdl, path)) == NULL) { in zfs_open()
755 (void) strlcpy(zhp->zfs_name, path, sizeof (zhp->zfs_name)); in zfs_open()
756 zhp->zfs_type = ZFS_TYPE_SNAPSHOT; in zfs_open()
759 if (!(types & zhp->zfs_type)) { in zfs_open()
761 zfs_close(zhp); in zfs_open()
765 return (zhp); in zfs_open()
772 zfs_close(zfs_handle_t *zhp) in zfs_close() argument
774 if (zhp->zfs_mntopts) in zfs_close()
775 free(zhp->zfs_mntopts); in zfs_close()
776 nvlist_free(zhp->zfs_props); in zfs_close()
777 nvlist_free(zhp->zfs_user_props); in zfs_close()
778 nvlist_free(zhp->zfs_recvd_props); in zfs_close()
779 free(zhp); in zfs_close()
927 zfs_spa_version(zfs_handle_t *zhp, int *spa_version) in zfs_spa_version() argument
929 zpool_handle_t *zpool_handle = zhp->zpool_hdl; in zfs_spa_version()
943 zfs_which_resv_prop(zfs_handle_t *zhp, zfs_prop_t *resv_prop) in zfs_which_resv_prop() argument
947 if (zfs_spa_version(zhp, &spa_version) < 0) in zfs_which_resv_prop()
965 uint64_t zoned, zfs_handle_t *zhp, zpool_handle_t *zpool_hdl, in zfs_valid_proplist() argument
1123 (!zfs_prop_setonce(prop) || zhp != NULL)) { in zfs_valid_proplist()
1143 if (zhp == NULL) in zfs_valid_proplist()
1145 version = zfs_prop_get_int(zhp, ZFS_PROP_VERSION); in zfs_valid_proplist()
1410 if (type == ZFS_TYPE_VOLUME && zhp != NULL) { in zfs_valid_proplist()
1411 uint64_t volsize = zfs_prop_get_int(zhp, in zfs_valid_proplist()
1413 uint64_t blocksize = zfs_prop_get_int(zhp, in zfs_valid_proplist()
1497 zfs_add_synthetic_resv(zfs_handle_t *zhp, nvlist_t *nvl) in zfs_add_synthetic_resv() argument
1510 old_volsize = zfs_prop_get_int(zhp, ZFS_PROP_VOLSIZE); in zfs_add_synthetic_resv()
1511 if (zfs_which_resv_prop(zhp, &resv_prop) < 0) in zfs_add_synthetic_resv()
1513 old_reservation = zfs_prop_get_int(zhp, resv_prop); in zfs_add_synthetic_resv()
1517 zfs_prop_get_int(zhp, ZFS_PROP_VOLBLOCKSIZE)); in zfs_add_synthetic_resv()
1535 (void) no_memory(zhp->zfs_hdl); in zfs_add_synthetic_resv()
1547 zfs_fix_auto_resv(zfs_handle_t *zhp, nvlist_t *nvl) in zfs_fix_auto_resv() argument
1554 if (!ZFS_IS_VOLUME(zhp)) { in zfs_fix_auto_resv()
1558 if (zfs_which_resv_prop(zhp, &prop) != 0) { in zfs_fix_auto_resv()
1578 zfs_prop_get_int(zhp, ZFS_PROP_VOLBLOCKSIZE)); in zfs_fix_auto_resv()
1582 volsize = zfs_prop_get_int(zhp, ZFS_PROP_VOLSIZE); in zfs_fix_auto_resv()
1590 (void) no_memory(zhp->zfs_hdl); in zfs_fix_auto_resv()
1698 zfs_prop_set(zfs_handle_t *zhp, const char *propname, const char *propval) in zfs_prop_set() argument
1702 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_prop_set()
1707 zhp->zfs_name); in zfs_prop_set()
1715 ret = zfs_prop_set_list(zhp, nvl); in zfs_prop_set()
1729 zfs_prop_set_list(zfs_handle_t *zhp, nvlist_t *props) in zfs_prop_set_list() argument
1736 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_prop_set_list()
1743 zhp->zfs_name); in zfs_prop_set_list()
1745 if ((nvl = zfs_valid_proplist(hdl, zhp->zfs_type, props, in zfs_prop_set_list()
1746 zfs_prop_get_int(zhp, ZFS_PROP_ZONED), zhp, zhp->zpool_hdl, in zfs_prop_set_list()
1758 (added_resv = zfs_add_synthetic_resv(zhp, nvl)) == -1) { in zfs_prop_set_list()
1764 (added_resv = zfs_fix_auto_resv(zhp, nvl)) == -1) { in zfs_prop_set_list()
1795 zfs_is_mounted(zhp, NULL))) { in zfs_prop_set_list()
1796 cls[cl_idx] = changelist_gather(zhp, prop, 0, 0); in zfs_prop_set_list()
1836 (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name)); in zfs_prop_set_list()
1859 uint64_t old_volsize = zfs_prop_get_int(zhp, in zfs_prop_set_list()
1889 (void) get_stats(zhp); in zfs_prop_set_list()
1910 zfs_prop_inherit(zfs_handle_t *zhp, const char *propname, boolean_t received) in zfs_prop_inherit() argument
1915 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_prop_inherit()
1920 "cannot inherit %s for '%s'"), propname, zhp->zfs_name); in zfs_prop_inherit()
1934 (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name)); in zfs_prop_inherit()
1937 if (zfs_ioctl(zhp->zfs_hdl, ZFS_IOC_INHERIT_PROP, &zc) != 0) in zfs_prop_inherit()
1955 if (!zfs_prop_valid_for_type(prop, zhp->zfs_type)) in zfs_prop_inherit()
1962 (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name)); in zfs_prop_inherit()
1966 zfs_prop_get_int(zhp, ZFS_PROP_ZONED)) { in zfs_prop_inherit()
1975 if ((cl = changelist_gather(zhp, prop, 0, 0)) == NULL) in zfs_prop_inherit()
1989 if ((ret = zfs_ioctl(zhp->zfs_hdl, ZFS_IOC_INHERIT_PROP, &zc)) != 0) { in zfs_prop_inherit()
1999 (void) get_stats(zhp); in zfs_prop_inherit()
2012 getprop_uint64(zfs_handle_t *zhp, zfs_prop_t prop, char **source) in getprop_uint64() argument
2018 if (nvlist_lookup_nvlist(zhp->zfs_props, in getprop_uint64()
2023 verify(!zhp->zfs_props_table || in getprop_uint64()
2024 zhp->zfs_props_table[prop] == B_TRUE); in getprop_uint64()
2033 getprop_string(zfs_handle_t *zhp, zfs_prop_t prop, char **source) in getprop_string() argument
2039 if (nvlist_lookup_nvlist(zhp->zfs_props, in getprop_string()
2044 verify(!zhp->zfs_props_table || in getprop_string()
2045 zhp->zfs_props_table[prop] == B_TRUE); in getprop_string()
2054 zfs_is_recvd_props_mode(zfs_handle_t *zhp) in zfs_is_recvd_props_mode() argument
2056 return (zhp->zfs_props == zhp->zfs_recvd_props); in zfs_is_recvd_props_mode()
2060 zfs_set_recvd_props_mode(zfs_handle_t *zhp, uint64_t *cookie) in zfs_set_recvd_props_mode() argument
2062 *cookie = (uint64_t)(uintptr_t)zhp->zfs_props; in zfs_set_recvd_props_mode()
2063 zhp->zfs_props = zhp->zfs_recvd_props; in zfs_set_recvd_props_mode()
2067 zfs_unset_recvd_props_mode(zfs_handle_t *zhp, uint64_t *cookie) in zfs_unset_recvd_props_mode() argument
2069 zhp->zfs_props = (nvlist_t *)(uintptr_t)*cookie; in zfs_unset_recvd_props_mode()
2083 get_numeric_property(zfs_handle_t *zhp, zfs_prop_t prop, zprop_source_t *src, in get_numeric_property() argument
2091 boolean_t received = zfs_is_recvd_props_mode(zhp); in get_numeric_property()
2140 if (!zhp->zfs_mntcheck && in get_numeric_property()
2142 libzfs_handle_t *hdl = zhp->zfs_hdl; in get_numeric_property()
2145 if (libzfs_mnttab_find(hdl, zhp->zfs_name, &entry) == 0) { in get_numeric_property()
2146 zhp->zfs_mntopts = zfs_strdup(hdl, in get_numeric_property()
2148 if (zhp->zfs_mntopts == NULL) in get_numeric_property()
2152 zhp->zfs_mntcheck = B_TRUE; in get_numeric_property()
2155 if (zhp->zfs_mntopts == NULL) in get_numeric_property()
2158 mnt.mnt_mntopts = zhp->zfs_mntopts; in get_numeric_property()
2168 *val = getprop_uint64(zhp, prop, source); in get_numeric_property()
2194 *val = getprop_uint64(zhp, prop, source); in get_numeric_property()
2198 *source = zhp->zfs_name; in get_numeric_property()
2203 *val = (zhp->zfs_mntopts != NULL); in get_numeric_property()
2207 *val = zhp->zfs_dmustats.dds_num_clones; in get_numeric_property()
2214 if (!zfs_prop_valid_for_type(prop, zhp->zfs_head_type) || in get_numeric_property()
2215 zcmd_alloc_dst_nvlist(zhp->zfs_hdl, &zc, 0) != 0) in get_numeric_property()
2217 (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name)); in get_numeric_property()
2218 if (zfs_ioctl(zhp->zfs_hdl, ZFS_IOC_OBJSET_ZPLPROPS, &zc)) { in get_numeric_property()
2222 if (zcmd_read_dst_nvlist(zhp->zfs_hdl, &zc, &zplprops) != 0 || in get_numeric_property()
2233 *val = zhp->zfs_dmustats.dds_inconsistent; in get_numeric_property()
2240 *val = getprop_uint64(zhp, prop, source); in get_numeric_property()
2258 zfs_error_aux(zhp->zfs_hdl, dgettext(TEXT_DOMAIN, in get_numeric_property()
2260 return (zfs_error(zhp->zfs_hdl, EZFS_BADPROP, in get_numeric_property()
2272 get_source(zfs_handle_t *zhp, zprop_source_t *srctype, char *source, in get_source() argument
2285 if (strcmp(source, zhp->zfs_name) == 0) { in get_source()
2296 zfs_prop_get_recvd(zfs_handle_t *zhp, const char *propname, char *propbuf, in zfs_prop_get_recvd() argument
2302 if (zhp->zfs_recvd_props == NULL) in zfs_prop_get_recvd()
2303 if (get_recvd_props_ioctl(zhp) != 0) in zfs_prop_get_recvd()
2310 if (!nvlist_exists(zhp->zfs_recvd_props, propname)) in zfs_prop_get_recvd()
2312 zfs_set_recvd_props_mode(zhp, &cookie); in zfs_prop_get_recvd()
2313 err = zfs_prop_get(zhp, prop, propbuf, proplen, in zfs_prop_get_recvd()
2315 zfs_unset_recvd_props_mode(zhp, &cookie); in zfs_prop_get_recvd()
2319 if (nvlist_lookup_nvlist(zhp->zfs_recvd_props, in zfs_prop_get_recvd()
2331 get_clones_string(zfs_handle_t *zhp, char *propbuf, size_t proplen) in get_clones_string() argument
2336 value = zfs_get_clones_nvl(zhp); in get_clones_string()
2359 get_clones_cb(zfs_handle_t *zhp, void *arg) in get_clones_cb() argument
2364 zfs_close(zhp); in get_clones_cb()
2368 if (zfs_prop_get(zhp, ZFS_PROP_ORIGIN, gca->buf, sizeof (gca->buf), in get_clones_cb()
2372 fnvlist_add_boolean(gca->value, zfs_get_name(zhp)); in get_clones_cb()
2377 (void) zfs_iter_children(zhp, get_clones_cb, gca); in get_clones_cb()
2378 zfs_close(zhp); in get_clones_cb()
2383 zfs_get_clones_nvl(zfs_handle_t *zhp) in zfs_get_clones_nvl() argument
2387 if (nvlist_lookup_nvlist(zhp->zfs_props, in zfs_get_clones_nvl()
2395 if (zhp->zfs_type != ZFS_TYPE_SNAPSHOT) in zfs_get_clones_nvl()
2404 gca.numclones = zfs_prop_get_int(zhp, ZFS_PROP_NUMCLONES); in zfs_get_clones_nvl()
2406 gca.origin = zhp->zfs_name; in zfs_get_clones_nvl()
2414 (void) strlcpy(pool, zhp->zfs_name, sizeof (pool)); in zfs_get_clones_nvl()
2416 root = zfs_open(zhp->zfs_hdl, pool, in zfs_get_clones_nvl()
2424 nvlist_add_nvlist(zhp->zfs_props, in zfs_get_clones_nvl()
2432 verify(0 == nvlist_lookup_nvlist(zhp->zfs_props, in zfs_get_clones_nvl()
2447 zcp_check(zfs_handle_t *zhp, zfs_prop_t prop, uint64_t intval, in zcp_check() argument
2450 if (!zhp->zfs_hdl->libzfs_prop_debug) in zcp_check()
2453 char *poolname = zhp->zpool_hdl->zpool_name; in zcp_check()
2464 fnvlist_add_string(argnvl, "dataset", zhp->zfs_name); in zcp_check()
2517 zfs_prop_get(zfs_handle_t *zhp, zfs_prop_t prop, char *propbuf, size_t proplen, in zfs_prop_get() argument
2524 boolean_t received = zfs_is_recvd_props_mode(zhp); in zfs_prop_get()
2529 if (!zfs_prop_valid_for_type(prop, zhp->zfs_type)) in zfs_prop_get()
2545 val = getprop_uint64(zhp, prop, &source); in zfs_prop_get()
2555 zcp_check(zhp, prop, val, NULL); in zfs_prop_get()
2570 str = getprop_string(zhp, prop, &source); in zfs_prop_get()
2587 relpath = zhp->zfs_name + strlen(source); in zfs_prop_get()
2592 if ((zpool_get_prop(zhp->zpool_hdl, in zfs_prop_get()
2624 zcp_check(zhp, prop, NULL, propbuf); in zfs_prop_get()
2628 str = getprop_string(zhp, prop, &source); in zfs_prop_get()
2632 zcp_check(zhp, prop, NULL, str); in zfs_prop_get()
2636 if (get_clones_string(zhp, propbuf, proplen) != 0) in zfs_prop_get()
2645 if (get_numeric_property(zhp, prop, src, &source, &val) != 0) in zfs_prop_get()
2665 zcp_check(zhp, prop, val, NULL); in zfs_prop_get()
2673 if (get_numeric_property(zhp, prop, src, &source, &val) != 0) in zfs_prop_get()
2691 zcp_check(zhp, prop, val, NULL); in zfs_prop_get()
2696 if (get_numeric_property(zhp, prop, src, &source, &val) != 0) in zfs_prop_get()
2701 zcp_check(zhp, prop, val, NULL); in zfs_prop_get()
2705 switch (zhp->zfs_type) { in zfs_prop_get()
2722 zcp_check(zhp, prop, NULL, propbuf); in zfs_prop_get()
2732 if (get_numeric_property(zhp, ZFS_PROP_MOUNTED, in zfs_prop_get()
2747 (void) strlcpy(propbuf, zhp->zfs_name, proplen); in zfs_prop_get()
2748 zcp_check(zhp, prop, NULL, propbuf); in zfs_prop_get()
2758 getprop_string(zhp, prop, &source), proplen); in zfs_prop_get()
2800 if (get_numeric_property(zhp, prop, src, &source, &val) != 0) in zfs_prop_get()
2803 zcp_check(zhp, prop, val, NULL); in zfs_prop_get()
2809 if (get_numeric_property(zhp, prop, src, in zfs_prop_get()
2820 zcp_check(zhp, prop, val, NULL); in zfs_prop_get()
2824 str = getprop_string(zhp, prop, &source); in zfs_prop_get()
2829 zcp_check(zhp, prop, NULL, str); in zfs_prop_get()
2833 if (get_numeric_property(zhp, prop, src, in zfs_prop_get()
2840 zcp_check(zhp, prop, NULL, strval); in zfs_prop_get()
2848 get_source(zhp, src, source, statbuf, statlen); in zfs_prop_get()
2859 zfs_prop_get_int(zfs_handle_t *zhp, zfs_prop_t prop) in zfs_prop_get_int() argument
2864 (void) get_numeric_property(zhp, prop, NULL, &source, &val); in zfs_prop_get_int()
2870 zfs_prop_set_int(zfs_handle_t *zhp, zfs_prop_t prop, uint64_t val) in zfs_prop_set_int() argument
2875 return (zfs_prop_set(zhp, zfs_prop_to_name(prop), buf)); in zfs_prop_set_int()
2882 zfs_prop_get_numeric(zfs_handle_t *zhp, zfs_prop_t prop, uint64_t *value, in zfs_prop_get_numeric() argument
2890 if (!zfs_prop_valid_for_type(prop, zhp->zfs_type)) { in zfs_prop_get_numeric()
2891 return (zfs_error_fmt(zhp->zfs_hdl, EZFS_PROPTYPE, in zfs_prop_get_numeric()
2899 if (get_numeric_property(zhp, prop, src, &source, value) != 0) in zfs_prop_get_numeric()
2902 get_source(zhp, src, source, statbuf, statlen); in zfs_prop_get_numeric()
3088 zfs_prop_get_userquota_common(zfs_handle_t *zhp, const char *propname, in zfs_prop_get_userquota_common() argument
3094 (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name)); in zfs_prop_get_userquota_common()
3097 zfs_prop_get_int(zhp, ZFS_PROP_ZONED), in zfs_prop_get_userquota_common()
3103 err = ioctl(zhp->zfs_hdl->libzfs_fd, ZFS_IOC_USERSPACE_ONE, &zc); in zfs_prop_get_userquota_common()
3112 zfs_prop_get_userquota_int(zfs_handle_t *zhp, const char *propname, in zfs_prop_get_userquota_int() argument
3117 return (zfs_prop_get_userquota_common(zhp, propname, propvalue, in zfs_prop_get_userquota_int()
3122 zfs_prop_get_userquota(zfs_handle_t *zhp, const char *propname, in zfs_prop_get_userquota() argument
3129 err = zfs_prop_get_userquota_common(zhp, propname, &propvalue, in zfs_prop_get_userquota()
3147 zfs_prop_get_written_int(zfs_handle_t *zhp, const char *propname, in zfs_prop_get_written_int() argument
3154 (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name)); in zfs_prop_get_written_int()
3163 (void) strlcpy(zc.zc_value, zhp->zfs_name, in zfs_prop_get_written_int()
3172 err = ioctl(zhp->zfs_hdl->libzfs_fd, ZFS_IOC_SPACE_WRITTEN, &zc); in zfs_prop_get_written_int()
3181 zfs_prop_get_written(zfs_handle_t *zhp, const char *propname, in zfs_prop_get_written() argument
3187 err = zfs_prop_get_written_int(zhp, propname, &propvalue); in zfs_prop_get_written()
3204 zfs_get_name(const zfs_handle_t *zhp) in zfs_get_name() argument
3206 return (zhp->zfs_name); in zfs_get_name()
3213 zfs_get_pool_name(const zfs_handle_t *zhp) in zfs_get_pool_name() argument
3215 return (zhp->zpool_hdl->zpool_name); in zfs_get_pool_name()
3222 zfs_get_type(const zfs_handle_t *zhp) in zfs_get_type() argument
3224 return (zhp->zfs_type); in zfs_get_type()
3282 zfs_handle_t *zhp; in check_parents() local
3309 while ((zhp = make_dataset_handle(hdl, parent)) == NULL) { in check_parents()
3327 is_zoned = zfs_prop_get_int(zhp, ZFS_PROP_ZONED); in check_parents()
3334 zfs_close(zhp); in check_parents()
3339 if (zfs_get_type(zhp) != ZFS_TYPE_FILESYSTEM) { in check_parents()
3343 zfs_close(zhp); in check_parents()
3347 zfs_close(zhp); in check_parents()
3359 zfs_handle_t *zhp; in zfs_dataset_exists() local
3367 if ((zhp = make_dataset_handle(hdl, path)) != NULL) { in zfs_dataset_exists()
3368 int ds_type = zhp->zfs_type; in zfs_dataset_exists()
3370 zfs_close(zhp); in zfs_dataset_exists()
3652 zfs_destroy(zfs_handle_t *zhp, boolean_t defer) in zfs_destroy() argument
3656 if (zhp->zfs_type != ZFS_TYPE_SNAPSHOT && defer) in zfs_destroy()
3659 if (zhp->zfs_type == ZFS_TYPE_BOOKMARK) { in zfs_destroy()
3661 fnvlist_add_boolean(nv, zhp->zfs_name); in zfs_destroy()
3665 return (zfs_standard_error_fmt(zhp->zfs_hdl, error, in zfs_destroy()
3667 zhp->zfs_name)); in zfs_destroy()
3672 if (zhp->zfs_type == ZFS_TYPE_SNAPSHOT) { in zfs_destroy()
3674 fnvlist_add_boolean(nv, zhp->zfs_name); in zfs_destroy()
3678 error = lzc_destroy(zhp->zfs_name); in zfs_destroy()
3682 return (zfs_standard_error_fmt(zhp->zfs_hdl, errno, in zfs_destroy()
3684 zhp->zfs_name)); in zfs_destroy()
3687 remove_mountpoint(zhp); in zfs_destroy()
3698 zfs_check_snap_cb(zfs_handle_t *zhp, void *arg) in zfs_check_snap_cb() argument
3705 "%s@%s", zhp->zfs_name, dd->snapname); in zfs_check_snap_cb()
3710 rv = zfs_iter_filesystems(zhp, zfs_check_snap_cb, dd); in zfs_check_snap_cb()
3711 zfs_close(zhp); in zfs_check_snap_cb()
3719 zfs_destroy_snaps(zfs_handle_t *zhp, char *snapname, boolean_t defer) in zfs_destroy_snaps() argument
3726 (void) zfs_check_snap_cb(zfs_handle_dup(zhp), &dd); in zfs_destroy_snaps()
3729 ret = zfs_standard_error_fmt(zhp->zfs_hdl, ENOENT, in zfs_destroy_snaps()
3731 zhp->zfs_name, snapname); in zfs_destroy_snaps()
3733 ret = zfs_destroy_snaps_nvl(zhp->zfs_hdl, dd.nvl, defer); in zfs_destroy_snaps()
3789 zfs_clone(zfs_handle_t *zhp, const char *target, nvlist_t *props) in zfs_clone() argument
3794 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_clone()
3797 assert(zhp->zfs_type == ZFS_TYPE_SNAPSHOT); in zfs_clone()
3817 if (ZFS_IS_VOLUME(zhp)) { in zfs_clone()
3823 zhp, zhp->zpool_hdl, errbuf)) == NULL) in zfs_clone()
3825 if (zfs_fix_auto_resv(zhp, props) == -1) { in zfs_clone()
3831 ret = lzc_clone(target, zhp->zfs_name, props); in zfs_clone()
3847 zfs_error_aux(zhp->zfs_hdl, dgettext(TEXT_DOMAIN, in zfs_clone()
3849 return (zfs_error(zhp->zfs_hdl, EZFS_NOENT, errbuf)); in zfs_clone()
3852 zfs_error_aux(zhp->zfs_hdl, dgettext(TEXT_DOMAIN, in zfs_clone()
3854 return (zfs_error(zhp->zfs_hdl, EZFS_CROSSTARGET, in zfs_clone()
3858 return (zfs_standard_error(zhp->zfs_hdl, errno, in zfs_clone()
3870 zfs_promote(zfs_handle_t *zhp) in zfs_promote() argument
3872 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_promote()
3878 "cannot promote '%s'"), zhp->zfs_name); in zfs_promote()
3880 if (zhp->zfs_type == ZFS_TYPE_SNAPSHOT) { in zfs_promote()
3886 if (zhp->zfs_dmustats.dds_origin[0] == '\0') { in zfs_promote()
3892 if (!zfs_validate_name(hdl, zhp->zfs_name, zhp->zfs_type, B_TRUE)) in zfs_promote()
3895 ret = lzc_promote(zhp->zfs_name, snapname, sizeof (snapname)); in zfs_promote()
3903 snapname, zhp->zfs_dmustats.dds_origin); in zfs_promote()
3919 zfs_snapshot_cb(zfs_handle_t *zhp, void *arg) in zfs_snapshot_cb() argument
3925 if (zfs_prop_get_int(zhp, ZFS_PROP_INCONSISTENT) == 0) { in zfs_snapshot_cb()
3927 "%s@%s", zfs_get_name(zhp), sd->sd_snapname); in zfs_snapshot_cb()
3931 rv = zfs_iter_filesystems(zhp, zfs_snapshot_cb, sd); in zfs_snapshot_cb()
3933 zfs_close(zhp); in zfs_snapshot_cb()
4057 zfs_handle_t *zhp; in zfs_snapshot() local
4071 if ((zhp = zfs_open(hdl, fsname, ZFS_TYPE_FILESYSTEM | in zfs_snapshot()
4078 (void) zfs_snapshot_cb(zfs_handle_dup(zhp), &sd); in zfs_snapshot()
4085 zfs_close(zhp); in zfs_snapshot()
4103 rollback_destroy_dependent(zfs_handle_t *zhp, void *data) in rollback_destroy_dependent() argument
4109 clp = changelist_gather(zhp, ZFS_PROP_NAME, 0, in rollback_destroy_dependent()
4113 zfs_close(zhp); in rollback_destroy_dependent()
4116 if (zfs_destroy(zhp, B_FALSE) != 0) in rollback_destroy_dependent()
4119 changelist_remove(clp, zhp->zfs_name); in rollback_destroy_dependent()
4123 zfs_close(zhp); in rollback_destroy_dependent()
4128 rollback_destroy(zfs_handle_t *zhp, void *data) in rollback_destroy() argument
4132 if (zfs_prop_get_int(zhp, ZFS_PROP_CREATETXG) > cbp->cb_create) { in rollback_destroy()
4133 cbp->cb_error |= zfs_iter_dependents(zhp, B_FALSE, in rollback_destroy()
4136 cbp->cb_error |= zfs_destroy(zhp, B_FALSE); in rollback_destroy()
4139 zfs_close(zhp); in rollback_destroy()
4151 zfs_rollback(zfs_handle_t *zhp, zfs_handle_t *snap, boolean_t force) in zfs_rollback() argument
4159 assert(zhp->zfs_type == ZFS_TYPE_FILESYSTEM || in zfs_rollback()
4160 zhp->zfs_type == ZFS_TYPE_VOLUME); in zfs_rollback()
4168 (void) zfs_iter_snapshots(zhp, B_FALSE, rollback_destroy, &cb); in zfs_rollback()
4169 (void) zfs_iter_bookmarks(zhp, rollback_destroy, &cb); in zfs_rollback()
4179 if (zhp->zfs_type == ZFS_TYPE_VOLUME) { in zfs_rollback()
4180 if (zfs_which_resv_prop(zhp, &resv_prop) < 0) in zfs_rollback()
4182 old_volsize = zfs_prop_get_int(zhp, ZFS_PROP_VOLSIZE); in zfs_rollback()
4184 (old_volsize == zfs_prop_get_int(zhp, resv_prop)); in zfs_rollback()
4192 err = lzc_rollback_to(zhp->zfs_name, snap->zfs_name); in zfs_rollback()
4198 zhp->zfs_name); in zfs_rollback()
4201 zfs_error_aux(zhp->zfs_hdl, dgettext(TEXT_DOMAIN, in zfs_rollback()
4204 (void) zfs_error(zhp->zfs_hdl, EZFS_EXISTS, errbuf); in zfs_rollback()
4207 zfs_error_aux(zhp->zfs_hdl, dgettext(TEXT_DOMAIN, in zfs_rollback()
4209 snap->zfs_name, zhp->zfs_name); in zfs_rollback()
4210 (void) zfs_error(zhp->zfs_hdl, EZFS_NOENT, errbuf); in zfs_rollback()
4213 (void) zfs_error(zhp->zfs_hdl, EZFS_BADTYPE, errbuf); in zfs_rollback()
4216 (void) zfs_standard_error(zhp->zfs_hdl, err, errbuf); in zfs_rollback()
4227 if ((zhp->zfs_type == ZFS_TYPE_VOLUME) && in zfs_rollback()
4228 (zhp = make_dataset_handle(zhp->zfs_hdl, zhp->zfs_name))) { in zfs_rollback()
4230 new_volsize = zfs_prop_get_int(zhp, ZFS_PROP_VOLSIZE); in zfs_rollback()
4232 err = zfs_prop_set_int(zhp, resv_prop, in zfs_rollback()
4235 zfs_close(zhp); in zfs_rollback()
4244 zfs_rename(zfs_handle_t *zhp, const char *source, const char *target, in zfs_rename() argument
4255 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_rename()
4259 if (strcmp(zhp->zfs_name, target) == 0) in zfs_rename()
4272 (void) strlcat(zhp->zfs_name, "@", sizeof(zhp->zfs_name)); in zfs_rename()
4273 (void) strlcat(zhp->zfs_name, source, sizeof(zhp->zfs_name)); in zfs_rename()
4274 zhp->zfs_type = ZFS_TYPE_SNAPSHOT; in zfs_rename()
4278 if (!zfs_validate_name(hdl, zhp->zfs_name, zhp->zfs_type, B_TRUE)) in zfs_rename()
4284 if (zhp->zfs_type == ZFS_TYPE_SNAPSHOT || in zfs_rename()
4285 zhp->zfs_type == ZFS_TYPE_BOOKMARK) { in zfs_rename()
4286 const char sep = zhp->zfs_type == ZFS_TYPE_SNAPSHOT ? '@' : '#'; in zfs_rename()
4293 (void) strlcpy(parent, zhp->zfs_name, sizeof (parent)); in zfs_rename()
4306 if (strncmp(zhp->zfs_name, target, delim - target) in zfs_rename()
4307 != 0 || zhp->zfs_name[delim - target] != sep) { in zfs_rename()
4310 zhp->zfs_type == ZFS_TYPE_SNAPSHOT ? in zfs_rename()
4317 if (!zfs_validate_name(hdl, target, zhp->zfs_type, B_TRUE)) in zfs_rename()
4326 if (!zfs_validate_name(hdl, target, zhp->zfs_type, B_TRUE)) in zfs_rename()
4335 if (strncmp(zhp->zfs_name, target, delim - target) != 0 || in zfs_rename()
4336 zhp->zfs_name[delim - target] != '/') { in zfs_rename()
4343 if (is_descendant(zhp->zfs_name, target)) { in zfs_rename()
4352 dgettext(TEXT_DOMAIN, "cannot rename '%s'"), zhp->zfs_name); in zfs_rename()
4355 zfs_prop_get_int(zhp, ZFS_PROP_ZONED)) { in zfs_rename()
4365 if (zhp->zfs_type == ZFS_TYPE_FILESYSTEM && in zfs_rename()
4367 zfs_prop_get(zhp, ZFS_PROP_MOUNTPOINT, property, in zfs_rename()
4374 parentname = zfs_strdup(zhp->zfs_hdl, zhp->zfs_name); in zfs_rename()
4381 zhrp = zfs_open(zhp->zfs_hdl, parentname, ZFS_TYPE_DATASET); in zfs_rename()
4386 } else if (zhp->zfs_type != ZFS_TYPE_SNAPSHOT && in zfs_rename()
4387 zhp->zfs_type != ZFS_TYPE_BOOKMARK) { in zfs_rename()
4388 if ((cl = changelist_gather(zhp, ZFS_PROP_NAME, in zfs_rename()
4407 if (ZFS_IS_VOLUME(zhp)) in zfs_rename()
4412 (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name)); in zfs_rename()
4419 if ((ret = zfs_ioctl(zhp->zfs_hdl, ZFS_IOC_RENAME, &zc)) != 0) { in zfs_rename()
4435 (void) zfs_standard_error(zhp->zfs_hdl, errno, errbuf); in zfs_rename()
4446 changelist_rename(cl, zfs_get_name(zhp), target); in zfs_rename()
4465 zfs_get_user_props(zfs_handle_t *zhp) in zfs_get_user_props() argument
4467 return (zhp->zfs_user_props); in zfs_get_user_props()
4471 zfs_get_recvd_props(zfs_handle_t *zhp) in zfs_get_recvd_props() argument
4473 if (zhp->zfs_recvd_props == NULL) in zfs_get_recvd_props()
4474 if (get_recvd_props_ioctl(zhp) != 0) in zfs_get_recvd_props()
4476 return (zhp->zfs_recvd_props); in zfs_get_recvd_props()
4493 zfs_expand_proplist(zfs_handle_t *zhp, zprop_list_t **plp, boolean_t received, in zfs_expand_proplist() argument
4496 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_expand_proplist()
4507 userprops = zfs_get_user_props(zhp); in zfs_expand_proplist()
4560 if (zfs_prop_get(zhp, entry->pl_prop, in zfs_expand_proplist()
4565 if (received && zfs_prop_get_recvd(zhp, in zfs_expand_proplist()
4578 if (received && zfs_prop_get_recvd(zhp, in zfs_expand_proplist()
4610 zfs_prune_proplist(zfs_handle_t *zhp, uint8_t *props) in zfs_prune_proplist() argument
4618 zhp->zfs_props_table = props; in zfs_prune_proplist()
4620 curr = nvlist_next_nvpair(zhp->zfs_props, NULL); in zfs_prune_proplist()
4624 nvpair_t *next = nvlist_next_nvpair(zhp->zfs_props, curr); in zfs_prune_proplist()
4634 (void) nvlist_remove(zhp->zfs_props, in zfs_prune_proplist()
4724 zfs_userspace(zfs_handle_t *zhp, zfs_userquota_prop_t type, in zfs_userspace() argument
4729 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_userspace()
4732 (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name)); in zfs_userspace()
4773 zfs_hold_one(zfs_handle_t *zhp, void *arg) in zfs_hold_one() argument
4780 "%s@%s", zhp->zfs_name, ha->snapname); in zfs_hold_one()
4786 rv = zfs_iter_filesystems(zhp, zfs_hold_one, ha); in zfs_hold_one()
4787 zfs_close(zhp); in zfs_hold_one()
4792 zfs_hold(zfs_handle_t *zhp, const char *snapname, const char *tag, in zfs_hold() argument
4802 (void) zfs_hold_one(zfs_handle_dup(zhp), &ha); in zfs_hold()
4812 zhp->zfs_name, snapname); in zfs_hold()
4813 (void) zfs_standard_error(zhp->zfs_hdl, ret, errbuf); in zfs_hold()
4817 ret = zfs_hold_nvl(zhp, cleanup_fd, ha.nvl); in zfs_hold()
4824 zfs_hold_nvl(zfs_handle_t *zhp, int cleanup_fd, nvlist_t *holds) in zfs_hold_nvl() argument
4828 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_hold_nvl()
4892 zfs_release_one(zfs_handle_t *zhp, void *arg) in zfs_release_one() argument
4900 "%s@%s", zhp->zfs_name, ha->snapname); in zfs_release_one()
4914 rv = zfs_iter_filesystems(zhp, zfs_release_one, ha); in zfs_release_one()
4915 zfs_close(zhp); in zfs_release_one()
4920 zfs_release(zfs_handle_t *zhp, const char *snapname, const char *tag, in zfs_release() argument
4927 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_release()
4935 (void) zfs_release_one(zfs_handle_dup(zhp), &ha); in zfs_release()
4943 zhp->zfs_name, snapname); in zfs_release()
5001 zfs_get_fsacl(zfs_handle_t *zhp, nvlist_t **nvl) in zfs_get_fsacl() argument
5004 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_get_fsacl()
5010 assert(zhp->zfs_type == ZFS_TYPE_VOLUME || in zfs_get_fsacl()
5011 zhp->zfs_type == ZFS_TYPE_FILESYSTEM); in zfs_get_fsacl()
5024 (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name)); in zfs_get_fsacl()
5068 zfs_set_fsacl(zfs_handle_t *zhp, boolean_t un, nvlist_t *nvl) in zfs_set_fsacl() argument
5071 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_set_fsacl()
5077 assert(zhp->zfs_type == ZFS_TYPE_VOLUME || in zfs_set_fsacl()
5078 zhp->zfs_type == ZFS_TYPE_FILESYSTEM); in zfs_set_fsacl()
5092 (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name)); in zfs_set_fsacl()
5122 zfs_get_holds(zfs_handle_t *zhp, nvlist_t **nvl) in zfs_get_holds() argument
5127 err = lzc_get_holds(zhp->zfs_name, nvl); in zfs_get_holds()
5130 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_get_holds()
5134 zhp->zfs_name); in zfs_get_holds()
5203 zfs_jail(zfs_handle_t *zhp, int jailid, int attach) in zfs_jail() argument
5205 libzfs_handle_t *hdl = zhp->zfs_hdl; in zfs_jail()
5213 dgettext(TEXT_DOMAIN, "cannot jail '%s'"), zhp->zfs_name); in zfs_jail()
5216 dgettext(TEXT_DOMAIN, "cannot unjail '%s'"), zhp->zfs_name); in zfs_jail()
5219 switch (zhp->zfs_type) { in zfs_jail()
5229 assert(zhp->zfs_type == ZFS_TYPE_FILESYSTEM); in zfs_jail()
5231 (void) strlcpy(zc.zc_name, zhp->zfs_name, sizeof (zc.zc_name)); in zfs_jail()