]> git.proxmox.com Git - mirror_lxc.git/blob - src/lxc/storage/zfs.h
855898c37913c2fe867ed3dc6902214c3a524331
[mirror_lxc.git] / src / lxc / storage / zfs.h
1 /* SPDX-License-Identifier: LGPL-2.1+ */
2
3 #ifndef __LXC_ZFS_H
4 #define __LXC_ZFS_H
5
6 #include <stdbool.h>
7 #include <stdio.h>
8 #include <stdint.h>
9
10 struct lxc_storage;
11
12 struct bdev_specs;
13
14 struct lxc_conf;
15
16 extern int zfs_clonepaths(struct lxc_storage *orig, struct lxc_storage *new,
17 const char *oldname, const char *cname,
18 const char *oldpath, const char *lxcpath, int snap,
19 uint64_t newsize, struct lxc_conf *conf);
20 extern int zfs_create(struct lxc_storage *bdev, const char *dest, const char *n,
21 struct bdev_specs *specs);
22 extern int zfs_destroy(struct lxc_storage *orig);
23 extern bool zfs_detect(const char *path);
24 extern int zfs_mount(struct lxc_storage *bdev);
25 extern int zfs_umount(struct lxc_storage *bdev);
26
27 extern bool zfs_copy(struct lxc_conf *conf, struct lxc_storage *orig,
28 struct lxc_storage *new, uint64_t newsize);
29 extern bool zfs_snapshot(struct lxc_conf *conf, struct lxc_storage *orig,
30 struct lxc_storage *new, uint64_t newsize);
31
32 #endif /* __LXC_ZFS_H */