Print this page
blah
XXX - fix get_all_datasets call
XXX - fix get_all_datasets call

*** 6852,6877 **** * Initilialize libshare SA_INIT_SHARE_API_SELECTIVE here * to avoid unneccesary load/unload of the libshare API * per shared dataset downstream. */ if (op == OP_SHARE) { ! zfs_handle_t **dslist = NULL; ! size_t count = 0; ! get_all_datasets(&dslist, &count, B_FALSE); ! if (count > 0) { sa_init_selective_arg_t sharearg; ! sharearg.zhandle_arr = dslist; ! sharearg.zhandle_len = count; ! if ((ret = zfs_init_libshare_arg( ! zfs_get_handle(dslist[0]), ! SA_INIT_SHARE_API_SELECTIVE, &sharearg)) ! != SA_OK) { (void) fprintf(stderr, gettext( ! "Could not initialize libshare," "%d"), ret); ! return (1); } } } /* --- 6852,6875 ---- * Initilialize libshare SA_INIT_SHARE_API_SELECTIVE here * to avoid unneccesary load/unload of the libshare API * per shared dataset downstream. */ if (op == OP_SHARE) { ! get_all_cb_t dslist = { 0 }; ! get_all_datasets(&dslist, B_FALSE); ! if (dslist.cb_used != 0) { sa_init_selective_arg_t sharearg; ! sharearg.zhandle_arr = dslist.cb_handles; ! sharearg.zhandle_len = dslist.cb_used; ! if ((ret = zfs_init_libshare_arg(g_zfs, ! SA_INIT_SHARE_API_SELECTIVE, &sharearg)) != ! SA_OK) { (void) fprintf(stderr, gettext( ! "Could not initialize libshare, " "%d"), ret); ! return (ret); } } } /*