|
12 | 12 | #include "set.h" |
13 | 13 |
|
14 | 14 | typedef enum CopyFlags { |
15 | | - COPY_REFLINK = 1 << 0, /* Try to reflink */ |
16 | | - COPY_MERGE = 1 << 1, /* Merge existing trees with our new one to copy */ |
17 | | - COPY_REPLACE = 1 << 2, /* Replace an existing file if there's one */ |
18 | | - COPY_SAME_MOUNT = 1 << 3, /* Don't descend recursively into other file systems, across mount point boundaries */ |
19 | | - COPY_MERGE_EMPTY = 1 << 4, /* Merge an existing, empty directory with our new tree to copy */ |
20 | | - COPY_CRTIME = 1 << 5, /* Generate a user.crtime_usec xattr off the source crtime if there is one, on copying */ |
21 | | - COPY_SIGINT = 1 << 6, /* Check for SIGINT regularly and return EINTR if seen (caller needs to block SIGINT) */ |
22 | | - COPY_SIGTERM = 1 << 7, /* ditto, but for SIGTERM */ |
23 | | - COPY_MAC_CREATE = 1 << 8, /* Create files with the correct MAC label (currently SELinux only) */ |
24 | | - COPY_HARDLINKS = 1 << 9, /* Try to reproduce hard links */ |
25 | | - COPY_FSYNC = 1 << 10, /* fsync() after we are done */ |
26 | | - COPY_FSYNC_FULL = 1 << 11, /* fsync_full() after we are done */ |
27 | | - COPY_SYNCFS = 1 << 12, /* syncfs() the *top-level* dir after we are done */ |
28 | | - COPY_ALL_XATTRS = 1 << 13, /* Preserve all xattrs when copying, not just those in the user namespace */ |
29 | | - COPY_HOLES = 1 << 14, /* Copy holes */ |
30 | | - COPY_GRACEFUL_WARN = 1 << 15, /* Skip copying file types that aren't supported by the target filesystem */ |
31 | | - COPY_TRUNCATE = 1 << 16, /* Truncate to current file offset after copying */ |
32 | | - COPY_LOCK_BSD = 1 << 17, /* Return a BSD exclusively locked file descriptor referring to the copied image/directory. */ |
33 | | - COPY_VERIFY_LINKED = 1 << 18, /* Check the source file is still linked after copying. */ |
| 15 | + COPY_REFLINK = 1 << 0, /* Try to reflink */ |
| 16 | + COPY_MERGE = 1 << 1, /* Merge existing trees with our new one to copy */ |
| 17 | + COPY_REPLACE = 1 << 2, /* Replace an existing file if there's one */ |
| 18 | + COPY_SAME_MOUNT = 1 << 3, /* Don't descend recursively into other file systems, across mount point boundaries */ |
| 19 | + COPY_MERGE_EMPTY = 1 << 4, /* Merge an existing, empty directory with our new tree to copy */ |
| 20 | + COPY_CRTIME = 1 << 5, /* Generate a user.crtime_usec xattr off the source crtime if there is one, on copying */ |
| 21 | + COPY_SIGINT = 1 << 6, /* Check for SIGINT regularly and return EINTR if seen (caller needs to block SIGINT) */ |
| 22 | + COPY_SIGTERM = 1 << 7, /* ditto, but for SIGTERM */ |
| 23 | + COPY_MAC_CREATE = 1 << 8, /* Create files with the correct MAC label (currently SELinux only) */ |
| 24 | + COPY_HARDLINKS = 1 << 9, /* Try to reproduce hard links */ |
| 25 | + COPY_FSYNC = 1 << 10, /* fsync() after we are done */ |
| 26 | + COPY_FSYNC_FULL = 1 << 11, /* fsync_full() after we are done */ |
| 27 | + COPY_SYNCFS = 1 << 12, /* syncfs() the *top-level* dir after we are done */ |
| 28 | + COPY_ALL_XATTRS = 1 << 13, /* Preserve all xattrs when copying, not just those in the user namespace */ |
| 29 | + COPY_HOLES = 1 << 14, /* Copy holes */ |
| 30 | + COPY_GRACEFUL_WARN = 1 << 15, /* Skip copying file types that aren't supported by the target filesystem */ |
| 31 | + COPY_TRUNCATE = 1 << 16, /* Truncate to current file offset after copying */ |
| 32 | + COPY_LOCK_BSD = 1 << 17, /* Return a BSD exclusively locked file descriptor referring to the copied image/directory. */ |
| 33 | + COPY_VERIFY_LINKED = 1 << 18, /* Check the source file is still linked after copying. */ |
| 34 | + COPY_RESTORE_DIRECTORY_TIMESTAMPS = 1 << 19, /* Make sure existing directory timestamps don't change during copying. */ |
34 | 35 | } CopyFlags; |
35 | 36 |
|
36 | 37 | typedef enum DenyType { |
|
0 commit comments