]>
Commit | Line | Data |
---|---|---|
1 | /* Copyright © 2017-2018 Apple Inc. All rights reserved. | |
2 | * | |
3 | * lf_hfs_utils.h | |
4 | * livefiles_hfs | |
5 | * | |
6 | * Created by Yakov Ben Zaken on 19/03/2018. | |
7 | */ | |
8 | ||
9 | #ifndef lf_hfs_utils_h | |
10 | #define lf_hfs_utils_h | |
11 | ||
12 | #include <stdio.h> | |
13 | #include <assert.h> | |
14 | #include "lf_hfs_locks.h" | |
15 | #include "lf_hfs.h" | |
16 | #include "lf_hfs_logger.h" | |
17 | ||
18 | #define hfs_assert(expr) \ | |
19 | do { \ | |
20 | if ( (expr) == (0) ) \ | |
21 | { \ | |
22 | LFHFS_LOG( LEVEL_ERROR, \ | |
23 | "HFS ASSERT [%s] [%d]\n", \ | |
24 | __FILE__, \ | |
25 | __LINE__); \ | |
26 | assert( 0 ); \ | |
27 | } \ | |
28 | } while (0) | |
29 | ||
30 | #define MAC_GMT_FACTOR 2082844800UL | |
31 | ||
32 | ||
33 | void* hashinit(int elements, u_long *hashmask); | |
34 | void hashDeinit(void* pvHashTbl); | |
35 | time_t to_bsd_time(u_int32_t hfs_time); | |
36 | u_int32_t to_hfs_time(time_t bsd_time); | |
37 | void microuptime(struct timeval *tvp); | |
38 | void microtime(struct timeval *tvp); | |
39 | void* lf_hfs_utils_allocate_and_copy_string( char *pcName, size_t uLen ); | |
40 | off_t blk_to_bytes(uint32_t blk, uint32_t blk_size); | |
41 | ||
42 | #endif /* lf_hfs_utils_h */ |