Loading...
Searching...
No Matches
hfs.h File Reference

Go to the source code of this file.

## Data Structures

struct | _HfsCPrivateLeafRec
struct | _HfsPPrivateExtent
struct | _HfsPPrivateFile
struct | _HfsPPrivateFSData
struct | _HfsPPrivateLinkExtent
struct | _HfsPrivateFile
struct | _HfsPrivateFSData
struct | _HfsPrivateLinkExtent

## Macros

#define | BLOCK_MAX_BUFF 256
#define | BYTES_MAX_BUFF 8388608
#define | CLR_BLOC_OCCUPATION(tab, bn)
#define | HFS_BAD_BLOCK_ID 0x05
#define | HFS_BAD_SPARED 9
#define | HFS_CAT_DIR 0x01
#define | HFS_CAT_DIR_TH 0x03
#define | HFS_CAT_FILE 0x02
#define | HFS_CAT_FILE_TH 0x04
#define | HFS_CATALOG_ID 0x04
#define | HFS_DATA_FORK 0x00
#define | HFS_EXT_NB 3
#define | HFS_FIRST_REC 0x0E
#define | HFS_HARD_LOCK 7
#define | HFS_HDR_NODE 0x01
#define | HFS_IDX_NODE 0x00
#define | HFS_LEAF_NODE 0xFF
#define | HFS_MAP_NODE 0x02
#define | HFS_MAP_REC 0xF8
#define | HFS_NSD_HD_REC 0x78
#define | HFS_RES_FORK 0xFF
#define | HFS_ROOT_DIR_ID 0x02
#define | HFS_ROOT_PAR_ID 0x01
#define | HFS_SIGNATURE 0x4244 /* 'BD' */
#define | HFS_SOFT_LOCK 15
#define | HFS_UNMOUNTED 8
#define | HFS_XTENT_ID 0x03
#define | HFSJ_ENDIAN_MAGIC 0x12345678
#define | HFSJ_HEADER_MAGIC 0x4a4e4c78
#define | HFSJ_JOURN_IN_FS 0x00
#define | HFSJ_JOURN_NEED_INIT 0x02
#define | HFSJ_JOURN_OTHER_DEV 0x01
#define | HFSP_ALLOC_ID 0x06
#define | HFSP_ATTR_EXTENTS 0x30
#define | HFSP_ATTR_FORK 0x20
#define | HFSP_ATTR_INLINE 0x10
#define | HFSP_ATTRIB_ID 0x08
#define | HFSP_BOGUS_ID 0x0F
#define | HFSP_EXT_NB 8
#define | HFSP_FIRST_AV_ID 0x10
#define | HFSP_IMPL_GnuP 0x476e7550 /* reserved */
#define | HFSP_IMPL_PHpx 0x50482b78 /* reserved */
#define | HFSP_IMPL_Resz 0x5265737a /* reserved */
#define | HFSP_IMPL_Shnk 0x53686e6b /* in use */
#define | HFSP_IMPL_traP 0x74726150 /* reserved */
#define | HFSP_IMPL_Xpnd 0x58706e64 /* reserved */
#define | HFSP_INCONSISTENT 11
#define | HFSP_JOURNALED 13
#define | HFSP_NO_CACHE 10
#define | HFSP_REUSE_CNID 12
#define | HFSP_SIGNATURE 0x482B /* 'H+' */
#define | HFSP_STARTUP_ID 0x07
#define | HFSP_VERSION 4
#define | HFSX_BINARY_COMPARE 0xBC /* case sensitive HFSX */
#define | HFSX_CASE_FOLDING 0xCF /* case insensitive HFSX */
#define | HFSX_SIGNATURE 0x4858 /* 'HX' */
#define | HFSX_VERSION 5
#define | SET_BLOC_OCCUPATION(tab, bn)
#define | TST_BLOC_OCCUPATION(tab, bn)

## Functions

struct | __attribute__ ((packed)) _HfsExtDescriptor

## Variables

uint8_t * | hfs_block
unsigned | hfs_block_count
uint8_t * | hfsp_block
unsigned | hfsp_block_count

## Macro Definition Documentation

## BLOCK_MAX_BUFF

#define BLOCK_MAX_BUFF 256

## BYTES_MAX_BUFF

#define BYTES_MAX_BUFF 8388608

## CLR_BLOC_OCCUPATION

#define CLR_BLOC_OCCUPATION | ( |  | tab,
|  |  | bn )

Value:
(((tab)[(bn)/8]) &= ~(1<<(7-((bn)&7))))

## HFS_BAD_BLOCK_ID

#define HFS_BAD_BLOCK_ID 0x05

## HFS_BAD_SPARED

#define HFS_BAD_SPARED 9

## HFS_CAT_DIR

#define HFS_CAT_DIR 0x01

## HFS_CAT_DIR_TH

#define HFS_CAT_DIR_TH 0x03

## HFS_CAT_FILE

#define HFS_CAT_FILE 0x02

## HFS_CAT_FILE_TH

#define HFS_CAT_FILE_TH 0x04

## HFS_CATALOG_ID

#define HFS_CATALOG_ID 0x04

## HFS_DATA_FORK

#define HFS_DATA_FORK 0x00

## HFS_EXT_NB

#define HFS_EXT_NB 3

## HFS_FIRST_REC

#define HFS_FIRST_REC 0x0E

## HFS_HARD_LOCK

#define HFS_HARD_LOCK 7

## HFS_HDR_NODE

#define HFS_HDR_NODE 0x01

## HFS_IDX_NODE

#define HFS_IDX_NODE 0x00

## HFS_LEAF_NODE

#define HFS_LEAF_NODE 0xFF

## HFS_MAP_NODE

#define HFS_MAP_NODE 0x02

## HFS_MAP_REC

#define HFS_MAP_REC 0xF8

## HFS_NSD_HD_REC

#define HFS_NSD_HD_REC 0x78

## HFS_RES_FORK

#define HFS_RES_FORK 0xFF

## HFS_ROOT_DIR_ID

#define HFS_ROOT_DIR_ID 0x02

## HFS_ROOT_PAR_ID

#define HFS_ROOT_PAR_ID 0x01

## HFS_SIGNATURE

#define HFS_SIGNATURE 0x4244 /* 'BD' */

## HFS_SOFT_LOCK

#define HFS_SOFT_LOCK 15

## HFS_UNMOUNTED

#define HFS_UNMOUNTED 8

## HFS_XTENT_ID

#define HFS_XTENT_ID 0x03

## HFSJ_ENDIAN_MAGIC

#define HFSJ_ENDIAN_MAGIC 0x12345678

## HFSJ_HEADER_MAGIC

#define HFSJ_HEADER_MAGIC 0x4a4e4c78

## HFSJ_JOURN_IN_FS

#define HFSJ_JOURN_IN_FS 0x00

## HFSJ_JOURN_NEED_INIT

#define HFSJ_JOURN_NEED_INIT 0x02

## HFSJ_JOURN_OTHER_DEV

#define HFSJ_JOURN_OTHER_DEV 0x01

## HFSP_ALLOC_ID

#define HFSP_ALLOC_ID 0x06

## HFSP_ATTR_EXTENTS

#define HFSP_ATTR_EXTENTS 0x30

## HFSP_ATTR_FORK

#define HFSP_ATTR_FORK 0x20

## HFSP_ATTR_INLINE

#define HFSP_ATTR_INLINE 0x10

## HFSP_ATTRIB_ID

#define HFSP_ATTRIB_ID 0x08

## HFSP_BOGUS_ID

#define HFSP_BOGUS_ID 0x0F

## HFSP_EXT_NB

#define HFSP_EXT_NB 8

## HFSP_FIRST_AV_ID

#define HFSP_FIRST_AV_ID 0x10

## HFSP_IMPL_GnuP

#define HFSP_IMPL_GnuP 0x476e7550 /* reserved */

## HFSP_IMPL_PHpx

#define HFSP_IMPL_PHpx 0x50482b78 /* reserved */

## HFSP_IMPL_Resz

#define HFSP_IMPL_Resz 0x5265737a /* reserved */

## HFSP_IMPL_Shnk

#define HFSP_IMPL_Shnk 0x53686e6b /* in use */

## HFSP_IMPL_traP

#define HFSP_IMPL_traP 0x74726150 /* reserved */

## HFSP_IMPL_Xpnd

#define HFSP_IMPL_Xpnd 0x58706e64 /* reserved */

## HFSP_INCONSISTENT

#define HFSP_INCONSISTENT 11

## HFSP_JOURNALED

#define HFSP_JOURNALED 13

## HFSP_NO_CACHE

#define HFSP_NO_CACHE 10

## HFSP_REUSE_CNID

#define HFSP_REUSE_CNID 12

## HFSP_SIGNATURE

#define HFSP_SIGNATURE 0x482B /* 'H+' */

## HFSP_STARTUP_ID

#define HFSP_STARTUP_ID 0x07

## HFSP_VERSION

#define HFSP_VERSION 4

## HFSX_BINARY_COMPARE

#define HFSX_BINARY_COMPARE 0xBC /* case sensitive HFSX */

## HFSX_CASE_FOLDING

#define HFSX_CASE_FOLDING 0xCF /* case insensitive HFSX */

## HFSX_SIGNATURE

#define HFSX_SIGNATURE 0x4858 /* 'HX' */

## HFSX_VERSION

#define HFSX_VERSION 5

## SET_BLOC_OCCUPATION

#define SET_BLOC_OCCUPATION | ( |  | tab,
|  |  | bn )

Value:
(((tab)[(bn)/8]) |= (1<<(7-((bn)&7))))

## TST_BLOC_OCCUPATION

#define TST_BLOC_OCCUPATION | ( |  | tab,
|  |  | bn )

Value:
(((tab)[(bn)/8]) & (1<<(7-((bn)&7))))

## Function Documentation

## __attribute__()

struct __attribute__ | ( | (packed) |  | ) |

## Variable Documentation

## hfs_block

uint8_t* hfs_block

extern

## hfs_block_count

unsigned hfs_block_count

extern

## hfsp_block

uint8_t* hfsp_block

extern

## hfsp_block_count

unsigned hfsp_block_count

extern