6 #if __BYTE_ORDER == __BIG_ENDIAN
9 #elif __BYTE_ORDER == __LITTLE_ENDIAN
10 # define ntohll(x) bswap_64(x)
11 # define htonll(x) bswap_64(x)
13 #error "__BYTE_ORDER not defined"
16 extern int init_cow_file(int fd
, char *cow_file
, char *backing_file
,
17 int sectorsize
, int alignment
, int *bitmap_offset_out
,
18 unsigned long *bitmap_len_out
, int *data_offset_out
);
20 extern int file_reader(__u64 offset
, char *buf
, int len
, void *arg
);
21 extern int read_cow_header(int (*reader
)(__u64
, char *, int, void *),
22 void *arg
, __u32
*version_out
,
23 char **backing_file_out
, time_t *mtime_out
,
24 unsigned long long *size_out
, int *sectorsize_out
,
25 __u32
*align_out
, int *bitmap_offset_out
);
27 extern int write_cow_header(char *cow_file
, int fd
, char *backing_file
,
28 int sectorsize
, int alignment
,
29 unsigned long long *size
);
31 extern void cow_sizes(int version
, __u64 size
, int sectorsize
, int align
,
32 int bitmap_offset
, unsigned long *bitmap_len_out
,
33 int *data_offset_out
);
38 * ---------------------------------------------------------------------------
40 * c-file-style: "linux"