]>
Commit | Line | Data |
---|---|---|
da536844 MA |
1 | /* |
2 | * CDDL HEADER START | |
3 | * | |
4 | * This file and its contents are supplied under the terms of the | |
5 | * Common Development and Distribution License ("CDDL"), version 1.0. | |
6 | * You may only use this file in accordance with the terms of version | |
7 | * 1.0 of the CDDL. | |
8 | * | |
9 | * A full copy of the text of the CDDL should have accompanied this | |
10 | * source. A copy of the CDDL is also available via the Internet at | |
11 | * http://www.illumos.org/license/CDDL. | |
12 | * | |
13 | * CDDL HEADER END | |
14 | */ | |
15 | /* | |
16 | * Copyright (c) 2013 by Delphix. All rights reserved. | |
17 | */ | |
18 | ||
19 | #ifndef _SYS_DSL_BOOKMARK_H | |
20 | #define _SYS_DSL_BOOKMARK_H | |
21 | ||
22 | #include <sys/zfs_context.h> | |
03916905 | 23 | #include <sys/dsl_dataset.h> |
da536844 MA |
24 | |
25 | #ifdef __cplusplus | |
26 | extern "C" { | |
27 | #endif | |
28 | ||
29 | struct dsl_pool; | |
30 | struct dsl_dataset; | |
31 | ||
32 | /* | |
33 | * On disk zap object. | |
34 | */ | |
35 | typedef struct zfs_bookmark_phys { | |
36 | uint64_t zbm_guid; /* guid of bookmarked dataset */ | |
37 | uint64_t zbm_creation_txg; /* birth transaction group */ | |
38 | uint64_t zbm_creation_time; /* bookmark creation time */ | |
39 | } zfs_bookmark_phys_t; | |
40 | ||
41 | int dsl_bookmark_create(nvlist_t *, nvlist_t *); | |
42 | int dsl_get_bookmarks(const char *, nvlist_t *, nvlist_t *); | |
43 | int dsl_get_bookmarks_impl(dsl_dataset_t *, nvlist_t *, nvlist_t *); | |
44 | int dsl_bookmark_destroy(nvlist_t *, nvlist_t *); | |
45 | int dsl_bookmark_lookup(struct dsl_pool *, const char *, | |
46 | struct dsl_dataset *, zfs_bookmark_phys_t *); | |
47 | ||
48 | #ifdef __cplusplus | |
49 | } | |
50 | #endif | |
51 | ||
52 | #endif /* _SYS_DSL_BOOKMARK_H */ |