usr/src/lib/libzfs/common/libzfs_impl.h
author ek110237
Tue, 24 Jul 2007 09:34:17 -0700
changeset 4715 e8d212dda064
parent 4597 cd30043e9dc2
child 5094 71a3e95fb9e2
permissions -rw-r--r--
6535695 Panic: shpp->sh_eof == shpp->sh_pool_create_len, file: ../../common/fs/zfs/spa_history.c, line: 235 6577336 6572465 didn't update comments for zpool_stage_history()
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
     1
/*
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
     2
 * CDDL HEADER START
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
     3
 *
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
     4
 * The contents of this file are subject to the terms of the
1544
938876158511 PSARC 2006/077 zpool clear
eschrock
parents: 1356
diff changeset
     5
 * Common Development and Distribution License (the "License").
938876158511 PSARC 2006/077 zpool clear
eschrock
parents: 1356
diff changeset
     6
 * You may not use this file except in compliance with the License.
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
     7
 *
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
     8
 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
     9
 * or http://www.opensolaris.org/os/licensing.
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    10
 * See the License for the specific language governing permissions
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    11
 * and limitations under the License.
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    12
 *
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    13
 * When distributing Covered Code, include this CDDL HEADER in each
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    14
 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    15
 * If applicable, add the following below this CDDL HEADER, with the
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    16
 * fields enclosed by brackets "[]" replaced with your own identifying
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    17
 * information: Portions Copyright [yyyy] [name of copyright owner]
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    18
 *
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    19
 * CDDL HEADER END
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    20
 */
3126
4f4fb617fdd0 PSARC 2006/622 iSCSI/ZFS Integration
ahl
parents: 2885
diff changeset
    21
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    22
/*
3444
dc160a70a50d 6410433 'zpool status -v' would be more useful with filenames
ek110237
parents: 3237
diff changeset
    23
 * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    24
 * Use is subject to license terms.
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    25
 */
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    26
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    27
#ifndef	_LIBFS_IMPL_H
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    28
#define	_LIBFS_IMPL_H
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    29
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    30
#pragma ident	"%Z%%M%	%I%	%E% SMI"
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    31
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    32
#include <sys/dmu.h>
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    33
#include <sys/fs/zfs.h>
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    34
#include <sys/zfs_ioctl.h>
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    35
#include <sys/zfs_acl.h>
4543
12bb2876a62e PSARC/2006/465 ZFS Delegated Administration
marks
parents: 4276
diff changeset
    36
#include <sys/spa.h>
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    37
#include <sys/nvpair.h>
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    38
2082
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    39
#include <libuutil.h>
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    40
#include <libzfs.h>
4180
30b15f0bd3c9 6491973 sharemgr: zfs set sharenfs=on is slow with lots of zfs filesystems
dougm
parents: 3912
diff changeset
    41
#include <libshare.h>
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    42
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    43
#ifdef	__cplusplus
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    44
extern "C" {
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    45
#endif
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    46
2082
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    47
struct libzfs_handle {
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    48
	int libzfs_error;
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    49
	int libzfs_fd;
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    50
	FILE *libzfs_mnttab;
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    51
	FILE *libzfs_sharetab;
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    52
	uu_avl_pool_t *libzfs_ns_avlpool;
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    53
	uu_avl_t *libzfs_ns_avl;
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    54
	uint64_t libzfs_ns_gen;
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    55
	int libzfs_desc_active;
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    56
	char libzfs_action[1024];
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    57
	char libzfs_desc[1024];
4543
12bb2876a62e PSARC/2006/465 ZFS Delegated Administration
marks
parents: 4276
diff changeset
    58
	char *libzfs_log_str;
2082
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    59
	int libzfs_printerr;
4180
30b15f0bd3c9 6491973 sharemgr: zfs set sharenfs=on is slow with lots of zfs filesystems
dougm
parents: 3912
diff changeset
    60
	void *libzfs_sharehdl; /* libshare handle */
2082
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    61
};
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    62
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    63
struct zfs_handle {
2082
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    64
	libzfs_handle_t *zfs_hdl;
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    65
	char zfs_name[ZFS_MAXNAMELEN];
2885
c0259887ebbc 6460059 zfs destroy <snapshot> leaves behind kruft
ahrens
parents: 2676
diff changeset
    66
	zfs_type_t zfs_type; /* type including snapshot */
c0259887ebbc 6460059 zfs destroy <snapshot> leaves behind kruft
ahrens
parents: 2676
diff changeset
    67
	zfs_type_t zfs_head_type; /* type excluding snapshot */
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    68
	dmu_objset_stats_t zfs_dmustats;
1356
e021b5e4aa0e 6377671 zfs mount -a shouldn't bother checking snapshots
eschrock
parents: 1294
diff changeset
    69
	nvlist_t *zfs_props;
2676
5cee47eddab6 PSARC 2006/486 ZFS canmount property
eschrock
parents: 2474
diff changeset
    70
	nvlist_t *zfs_user_props;
2474
c001ad7e0c25 6368751 libzfs interface for mount/umounting all the file systems for a given pool
eschrock
parents: 2142
diff changeset
    71
	boolean_t zfs_mntcheck;
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    72
	char *zfs_mntopts;
1544
938876158511 PSARC 2006/077 zpool clear
eschrock
parents: 1356
diff changeset
    73
	char zfs_root[MAXPATHLEN];
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    74
};
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    75
2676
5cee47eddab6 PSARC 2006/486 ZFS canmount property
eschrock
parents: 2474
diff changeset
    76
/*
5cee47eddab6 PSARC 2006/486 ZFS canmount property
eschrock
parents: 2474
diff changeset
    77
 * This is different from checking zfs_type, because it will also catch
5cee47eddab6 PSARC 2006/486 ZFS canmount property
eschrock
parents: 2474
diff changeset
    78
 * snapshots of volumes.
5cee47eddab6 PSARC 2006/486 ZFS canmount property
eschrock
parents: 2474
diff changeset
    79
 */
2885
c0259887ebbc 6460059 zfs destroy <snapshot> leaves behind kruft
ahrens
parents: 2676
diff changeset
    80
#define	ZFS_IS_VOLUME(zhp) ((zhp)->zfs_head_type == ZFS_TYPE_VOLUME)
2676
5cee47eddab6 PSARC 2006/486 ZFS canmount property
eschrock
parents: 2474
diff changeset
    81
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    82
struct zpool_handle {
2082
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    83
	libzfs_handle_t *zpool_hdl;
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    84
	char zpool_name[ZPOOL_MAXNAMELEN];
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    85
	int zpool_state;
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    86
	size_t zpool_config_size;
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    87
	nvlist_t *zpool_config;
952
12ec54aa046e 6344502 placeholder bug for the remaining Makefile cleanup work for ZFS
eschrock
parents: 789
diff changeset
    88
	nvlist_t *zpool_old_config;
3912
f6891a60bd72 PSARC 2007/083 ZFS bootable datasets
lling
parents: 3741
diff changeset
    89
	nvlist_t *zpool_props;
4276
c42d49ffb16f 6385547 zpool create of a mirror using a device and a slice of a device (of same size) reports an error
taylor
parents: 4180
diff changeset
    90
	diskaddr_t zpool_start_block;
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    91
};
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
    92
3237
98d0c28f2f5e 6480245 renaming a dataset to something with '%s' will cause segfault
lling
parents: 3126
diff changeset
    93
int zfs_error(libzfs_handle_t *, int, const char *);
98d0c28f2f5e 6480245 renaming a dataset to something with '%s' will cause segfault
lling
parents: 3126
diff changeset
    94
int zfs_error_fmt(libzfs_handle_t *, int, const char *, ...);
2082
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    95
void zfs_error_aux(libzfs_handle_t *, const char *, ...);
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    96
void *zfs_alloc(libzfs_handle_t *, size_t);
2676
5cee47eddab6 PSARC 2006/486 ZFS canmount property
eschrock
parents: 2474
diff changeset
    97
void *zfs_realloc(libzfs_handle_t *, void *, size_t, size_t);
2082
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    98
char *zfs_strdup(libzfs_handle_t *, const char *);
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
    99
int no_memory(libzfs_handle_t *);
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   100
3237
98d0c28f2f5e 6480245 renaming a dataset to something with '%s' will cause segfault
lling
parents: 3126
diff changeset
   101
int zfs_standard_error(libzfs_handle_t *, int, const char *);
98d0c28f2f5e 6480245 renaming a dataset to something with '%s' will cause segfault
lling
parents: 3126
diff changeset
   102
int zfs_standard_error_fmt(libzfs_handle_t *, int, const char *, ...);
98d0c28f2f5e 6480245 renaming a dataset to something with '%s' will cause segfault
lling
parents: 3126
diff changeset
   103
int zpool_standard_error(libzfs_handle_t *, int, const char *);
98d0c28f2f5e 6480245 renaming a dataset to something with '%s' will cause segfault
lling
parents: 3126
diff changeset
   104
int zpool_standard_error_fmt(libzfs_handle_t *, int, const char *, ...);
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   105
2474
c001ad7e0c25 6368751 libzfs interface for mount/umounting all the file systems for a given pool
eschrock
parents: 2142
diff changeset
   106
int get_dependents(libzfs_handle_t *, boolean_t, const char *, char ***,
c001ad7e0c25 6368751 libzfs interface for mount/umounting all the file systems for a given pool
eschrock
parents: 2142
diff changeset
   107
    size_t *);
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   108
3912
f6891a60bd72 PSARC 2007/083 ZFS bootable datasets
lling
parents: 3741
diff changeset
   109
int zfs_expand_proplist_common(libzfs_handle_t *, zfs_proplist_t **,
f6891a60bd72 PSARC 2007/083 ZFS bootable datasets
lling
parents: 3741
diff changeset
   110
    zfs_type_t);
f6891a60bd72 PSARC 2007/083 ZFS bootable datasets
lling
parents: 3741
diff changeset
   111
int zfs_get_proplist_common(libzfs_handle_t *, char *, zfs_proplist_t **,
f6891a60bd72 PSARC 2007/083 ZFS bootable datasets
lling
parents: 3741
diff changeset
   112
    zfs_type_t);
4597
cd30043e9dc2 6509186 "zfs set" should list properties in alphabetical order
timf
parents: 4543
diff changeset
   113
zfs_prop_t zfs_prop_iter_common(zfs_prop_f, void *, zfs_type_t, boolean_t,
cd30043e9dc2 6509186 "zfs set" should list properties in alphabetical order
timf
parents: 4543
diff changeset
   114
    boolean_t);
3912
f6891a60bd72 PSARC 2007/083 ZFS bootable datasets
lling
parents: 3741
diff changeset
   115
zfs_prop_t zfs_name_to_prop_common(const char *, zfs_type_t);
f6891a60bd72 PSARC 2007/083 ZFS bootable datasets
lling
parents: 3741
diff changeset
   116
f6891a60bd72 PSARC 2007/083 ZFS bootable datasets
lling
parents: 3741
diff changeset
   117
nvlist_t *zfs_validate_properties(libzfs_handle_t *, zfs_type_t, char *,
f6891a60bd72 PSARC 2007/083 ZFS bootable datasets
lling
parents: 3741
diff changeset
   118
	nvlist_t *, uint64_t, zfs_handle_t *zhp, const char *errbuf);
f6891a60bd72 PSARC 2007/083 ZFS bootable datasets
lling
parents: 3741
diff changeset
   119
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   120
typedef struct prop_changelist prop_changelist_t;
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   121
2676
5cee47eddab6 PSARC 2006/486 ZFS canmount property
eschrock
parents: 2474
diff changeset
   122
int zcmd_alloc_dst_nvlist(libzfs_handle_t *, zfs_cmd_t *, size_t);
5cee47eddab6 PSARC 2006/486 ZFS canmount property
eschrock
parents: 2474
diff changeset
   123
int zcmd_write_src_nvlist(libzfs_handle_t *, zfs_cmd_t *, nvlist_t *, size_t *);
5cee47eddab6 PSARC 2006/486 ZFS canmount property
eschrock
parents: 2474
diff changeset
   124
int zcmd_expand_dst_nvlist(libzfs_handle_t *, zfs_cmd_t *);
5cee47eddab6 PSARC 2006/486 ZFS canmount property
eschrock
parents: 2474
diff changeset
   125
int zcmd_read_dst_nvlist(libzfs_handle_t *, zfs_cmd_t *, nvlist_t **);
5cee47eddab6 PSARC 2006/486 ZFS canmount property
eschrock
parents: 2474
diff changeset
   126
void zcmd_free_nvlists(zfs_cmd_t *);
5cee47eddab6 PSARC 2006/486 ZFS canmount property
eschrock
parents: 2474
diff changeset
   127
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   128
int changelist_prefix(prop_changelist_t *);
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   129
int changelist_postfix(prop_changelist_t *);
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   130
void changelist_rename(prop_changelist_t *, const char *, const char *);
1294
87b43e5de5ee 6364129 need to unmount any child datasets before doing the rollback
lling
parents: 952
diff changeset
   131
void changelist_remove(zfs_handle_t *, prop_changelist_t *);
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   132
void changelist_free(prop_changelist_t *);
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   133
prop_changelist_t *changelist_gather(zfs_handle_t *, zfs_prop_t, int);
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   134
int changelist_unshare(prop_changelist_t *);
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   135
int changelist_haszonedchild(prop_changelist_t *);
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   136
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   137
void remove_mountpoint(zfs_handle_t *);
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   138
2082
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
   139
zfs_handle_t *make_dataset_handle(libzfs_handle_t *, const char *);
1544
938876158511 PSARC 2006/077 zpool clear
eschrock
parents: 1356
diff changeset
   140
2142
f6e0487aa9a3 6433264 crash when adding spare: nvlist_lookup_string(cnv, "path", &path) == 0
eschrock
parents: 2082
diff changeset
   141
int zpool_open_silent(libzfs_handle_t *, const char *, zpool_handle_t **);
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   142
2082
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
   143
int zvol_create_link(libzfs_handle_t *, const char *);
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
   144
int zvol_remove_link(libzfs_handle_t *, const char *);
3126
4f4fb617fdd0 PSARC 2006/622 iSCSI/ZFS Integration
ahl
parents: 2885
diff changeset
   145
int zpool_iter_zvol(zpool_handle_t *, int (*)(const char *, void *), void *);
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   146
2082
76b439ec3ac1 PSARC 2006/223 ZFS Hot Spares
eschrock
parents: 1544
diff changeset
   147
void namespace_clear(libzfs_handle_t *);
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   148
4180
30b15f0bd3c9 6491973 sharemgr: zfs set sharenfs=on is slow with lots of zfs filesystems
dougm
parents: 3912
diff changeset
   149
/*
30b15f0bd3c9 6491973 sharemgr: zfs set sharenfs=on is slow with lots of zfs filesystems
dougm
parents: 3912
diff changeset
   150
 * libshare (sharemgr) interfaces used internally.
30b15f0bd3c9 6491973 sharemgr: zfs set sharenfs=on is slow with lots of zfs filesystems
dougm
parents: 3912
diff changeset
   151
 */
30b15f0bd3c9 6491973 sharemgr: zfs set sharenfs=on is slow with lots of zfs filesystems
dougm
parents: 3912
diff changeset
   152
30b15f0bd3c9 6491973 sharemgr: zfs set sharenfs=on is slow with lots of zfs filesystems
dougm
parents: 3912
diff changeset
   153
extern int zfs_init_libshare(libzfs_handle_t *, int);
30b15f0bd3c9 6491973 sharemgr: zfs set sharenfs=on is slow with lots of zfs filesystems
dougm
parents: 3912
diff changeset
   154
extern void zfs_uninit_libshare(libzfs_handle_t *);
30b15f0bd3c9 6491973 sharemgr: zfs set sharenfs=on is slow with lots of zfs filesystems
dougm
parents: 3912
diff changeset
   155
extern int zfs_parse_options(char *, char *);
30b15f0bd3c9 6491973 sharemgr: zfs set sharenfs=on is slow with lots of zfs filesystems
dougm
parents: 3912
diff changeset
   156
789
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   157
#ifdef	__cplusplus
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   158
}
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   159
#endif
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   160
b348f31ed315 PSARC 2002/240 ZFS
ahrens
parents:
diff changeset
   161
#endif	/* _LIBFS_IMPL_H */