]>
git.saurik.com Git - apple/xnu.git/blob - libsyscall/wrappers/fs_snapshot.c
2 * Copyright (c) 2016 Apple Inc. All rights reserved.
4 * @APPLE_LICENSE_HEADER_START@
6 * This file contains Original Code and/or Modifications of Original Code
7 * as defined in and that are subject to the Apple Public Source License
8 * Version 2.0 (the 'License'). You may not use this file except in
9 * compliance with the License. Please obtain a copy of the License at
10 * http://www.opensource.apple.com/apsl/ and read it before using this
13 * The Original Code and all software distributed under the License are
14 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
15 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
16 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT.
18 * Please see the License for the specific language governing rights and
19 * limitations under the License.
21 * @APPLE_LICENSE_HEADER_END@
24 #include <sys/snapshot.h>
31 extern int __fs_snapshot(uint32_t, int, const char *, const char *, void *,
35 fs_snapshot_create(int dirfd
, const char *name
, uint32_t flags
)
37 return __fs_snapshot(SNAPSHOT_OP_CREATE
, dirfd
, name
, NULL
, NULL
, flags
);
41 fs_snapshot_list(int dirfd
, struct attrlist
*alist
, void *attrbuf
, size_t bufsize
,
49 return (getattrlistbulk(dirfd
, alist
, attrbuf
, bufsize
,
50 FSOPT_LIST_SNAPSHOT
));
54 fs_snapshot_delete(int dirfd
, const char *name
, uint32_t flags
)
56 return __fs_snapshot(SNAPSHOT_OP_DELETE
, dirfd
, name
, NULL
, NULL
, flags
);
60 fs_snapshot_rename(int dirfd
, const char *old
, const char *new, uint32_t flags
)
62 return __fs_snapshot(SNAPSHOT_OP_RENAME
, dirfd
, old
, new, NULL
, flags
);
66 fs_snapshot_revert(int dirfd
, const char *name
, uint32_t flags
)
68 return __fs_snapshot(SNAPSHOT_OP_REVERT
, dirfd
, name
, NULL
, NULL
, flags
);
72 fs_snapshot_root(int dirfd
, const char *name
, uint32_t flags
)
74 return __fs_snapshot(SNAPSHOT_OP_ROOT
, dirfd
, name
, NULL
, NULL
, flags
);
78 fs_snapshot_mount(int dirfd
, const char *dir
, const char *snapshot
,
81 return (__fs_snapshot(SNAPSHOT_OP_MOUNT
, dirfd
, snapshot
, dir
,