xref: /aosp_15_r20/external/erofs-utils/include/erofs/blobchunk.h (revision 33b1fccf6a0fada2c2875d400ed01119b7676ee5)
1 /* SPDX-License-Identifier: GPL-2.0+ OR Apache-2.0 */
2 /*
3  * erofs-utils/lib/blobchunk.h
4  *
5  * Copyright (C) 2021, Alibaba Cloud
6  */
7 #ifndef __EROFS_BLOBCHUNK_H
8 #define __EROFS_BLOBCHUNK_H
9 
10 #ifdef __cplusplus
11 extern "C"
12 {
13 #endif
14 
15 #include "erofs/internal.h"
16 
17 struct erofs_blobchunk *erofs_get_unhashed_chunk(unsigned int device_id,
18 		erofs_blk_t blkaddr, erofs_off_t sourceoffset);
19 int erofs_blob_write_chunk_indexes(struct erofs_inode *inode, erofs_off_t off);
20 int erofs_blob_write_chunked_file(struct erofs_inode *inode, int fd,
21 				  erofs_off_t startoff);
22 int erofs_write_zero_inode(struct erofs_inode *inode);
23 int tarerofs_write_chunkes(struct erofs_inode *inode, erofs_off_t data_offset);
24 int erofs_mkfs_dump_blobs(struct erofs_sb_info *sbi);
25 void erofs_blob_exit(void);
26 int erofs_blob_init(const char *blobfile_path, erofs_off_t chunksize);
27 int erofs_mkfs_init_devices(struct erofs_sb_info *sbi, unsigned int devices);
28 
29 #ifdef __cplusplus
30 }
31 #endif
32 
33 #endif
34