Changeset View
Changeset View
Standalone View
Standalone View
lib/libbe/be_info.c
| Show First 20 Lines • Show All 175 Lines • ▼ Show 20 Lines | prop_list_builder_cb(zfs_handle_t *zfs_hdl, void *data_p) | ||||
| if (data->single_object) | if (data->single_object) | ||||
| props = data->list; | props = data->list; | ||||
| else | else | ||||
| nvlist_alloc(&props, NV_UNIQUE_NAME, KM_SLEEP); | nvlist_alloc(&props, NV_UNIQUE_NAME, KM_SLEEP); | ||||
| dataset = zfs_get_name(zfs_hdl); | dataset = zfs_get_name(zfs_hdl); | ||||
| nvlist_add_string(props, "dataset", dataset); | nvlist_add_string(props, "dataset", dataset); | ||||
| if (data->bootonce != NULL && | if (data->lbh->bootonce != NULL && | ||||
| strcmp(dataset, data->bootonce) == 0) | strcmp(dataset, data->lbh->bootonce) == 0) | ||||
| nvlist_add_boolean_value(props, "bootonce", true); | nvlist_add_boolean_value(props, "bootonce", true); | ||||
| name = strrchr(dataset, '/') + 1; | name = strrchr(dataset, '/') + 1; | ||||
| nvlist_add_string(props, "name", name); | nvlist_add_string(props, "name", name); | ||||
| mounted = zfs_is_mounted(zfs_hdl, &mountpoint); | mounted = zfs_is_mounted(zfs_hdl, &mountpoint); | ||||
| if (mounted) | if (mounted) | ||||
| ▲ Show 20 Lines • Show All 52 Lines • ▼ Show 20 Lines | |||||
| int | int | ||||
| be_proplist_update(prop_data_t *data) | be_proplist_update(prop_data_t *data) | ||||
| { | { | ||||
| zfs_handle_t *root_hdl; | zfs_handle_t *root_hdl; | ||||
| if ((root_hdl = zfs_open(data->lbh->lzh, data->lbh->root, | if ((root_hdl = zfs_open(data->lbh->lzh, data->lbh->root, | ||||
| ZFS_TYPE_FILESYSTEM)) == NULL) | ZFS_TYPE_FILESYSTEM)) == NULL) | ||||
| return (BE_ERR_ZFSOPEN); | return (BE_ERR_ZFSOPEN); | ||||
| (void) lzbe_get_boot_device(zpool_get_name(data->lbh->active_phandle), | |||||
| &data->bootonce); | |||||
| /* XXX TODO: some error checking here */ | /* XXX TODO: some error checking here */ | ||||
| zfs_iter_filesystems(root_hdl, prop_list_builder_cb, data); | zfs_iter_filesystems(root_hdl, prop_list_builder_cb, data); | ||||
| zfs_close(root_hdl); | zfs_close(root_hdl); | ||||
| return (0); | return (0); | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 52 Lines • Show Last 20 Lines | |||||