]> git.saurik.com Git - apple/hfs.git/blame - livefiles_hfs_plugin/lf_hfs_btrees_io.h
hfs-522.100.5.tar.gz
[apple/hfs.git] / livefiles_hfs_plugin / lf_hfs_btrees_io.h
CommitLineData
de8ee011
A
1//
2// lf_hfs_btrees_io.h
3// livefiles_hfs
4//
5// Created by Yakov Ben Zaken on 22/03/2018.
6//
7
8#ifndef lf_hfs_btrees_io_h
9#define lf_hfs_btrees_io_h
10
11#include <stdio.h>
12
13
14#include "lf_hfs.h"
15#include "lf_hfs_btrees_internal.h"
16
17/* BTree accessor routines */
18OSStatus SetBTreeBlockSize(FileReference vp, ByteCount blockSize,
19 ItemCount minBlockCount);
20
21OSStatus GetBTreeBlock(FileReference vp, uint64_t blockNum,
22 GetBlockOptions options, BlockDescriptor *block);
23
24OSStatus ReleaseBTreeBlock(FileReference vp, BlockDescPtr blockPtr,
25 ReleaseBlockOptions options);
26
27OSStatus ExtendBTreeFile(FileReference vp, FSSize minEOF, FSSize maxEOF);
28
29void ModifyBlockStart(FileReference vp, BlockDescPtr blockPtr);
30
31int hfs_create_attr_btree(struct hfsmount *hfsmp, u_int32_t nodesize, u_int32_t nodecnt);
32
33u_int16_t get_btree_nodesize(struct vnode *vp);
34
35#endif /* lf_hfs_btrees_io_h */