OpenCore  1.0.4
OpenCore Bootloader
Loading...
Searching...
No Matches
fsw_hfsplus.h File Reference
#include "fsw_core.h"

Go to the source code of this file.

Data Structures

struct  HFSUniStr255
 
struct  HFSPlusExtentDescriptor
 
struct  HFSPlusForkData
 
struct  HFSPlusVolumeHeader
 
struct  HFSPlusBSDInfo
 
struct  FndrFileInfo
 
struct  FndrDirInfo
 
struct  FndrOpaqueInfo
 
struct  HFSPlusCatalogFolder
 
struct  HFSPlusCatalogFile
 
struct  HFSPlusCatalogThread
 
union  HFSPlusCatalogRecord
 
struct  BTNodeDescriptor
 
struct  BTHeaderRec
 
struct  HFSPlusExtentKey
 
struct  HFSPlusCatalogKey
 
union  HFSPlusBTKey
 
struct  HFSPlusVolumeFinderInfo
 
struct  fsw_hfsplus_dnode
 
struct  fsw_hfsplus_volume
 

Macros

#define VOLSTRUCTNAME   fsw_hfsplus_volume
 
#define DNODESTRUCTNAME   fsw_hfsplus_dnode
 
#define kHFSBlockSize   512
 
#define kMasterDirectoryBlock   2
 
#define kHFSPlusSigWord   0x482B
 
#define kHFSPlusMaxFileNameChars   255
 
#define kHFSPlusExtentDensity   8
 
#define kHFSPlusDataFork   0x00
 
#define kHFSPlusResourceFork   0xFF
 
#define kHFSRootParentID   1
 
#define kHFSRootFolderID   2
 
#define kHFSExtentsFileID   3
 
#define kHFSCatalogFileID   4
 
#define kHFSBadBlockFileID   5
 
#define kHFSAllocationFileID   6
 
#define kHFSStartupFileID   7
 
#define kHFSAttributesFileID   8
 
#define kHFSRepairCatalogFileID   14
 
#define kHFSBogusExtentFileID   15
 
#define kHFSFirstUserCatalogNodeID   16
 
#define kHFSPlusFolderRecord   1
 
#define kHFSPlusFileRecord   2
 
#define kHFSPlusFolderThreadRecord   3
 
#define kHFSPlusFileThreadRecord   4
 
#define kHFSPlusHFSPlusCreator   0x6866732B
 
#define kHFSPlusSymlinkCreator   0x72686170
 
#define kHFSPlusHardlinkType   0x686C6E6B
 
#define kHFSPlusSymlinkType   0x736C6E6B
 
#define kBTLeafNode   -1
 
#define kBTIndexNode   0
 
#define kBTHeaderNode   1
 

Typedefs

typedef HFSPlusExtentDescriptor HFSPlusExtentRecord[kHFSPlusExtentDensity]
 
typedef int(* k_cmp_t) (HFSPlusBTKey *, HFSPlusBTKey *)
 

Detailed Description

HFS+ file system driver header.

Copyright (c) 2020, Vladislav Yaroshchuk yaros.nosp@m.hchu.nosp@m.k2000.nosp@m.@gma.nosp@m.il.co.nosp@m.m Copyright (C) 2017, Gabriel L. Somlo gsoml.nosp@m.o@gm.nosp@m.ail.c.nosp@m.om

This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License which accompanies this distribution. The full text of the license may be found at http://opensource.org/licenses/bsd-license.php

THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.

Definition in file fsw_hfsplus.h.

Macro Definition Documentation

◆ DNODESTRUCTNAME

#define DNODESTRUCTNAME   fsw_hfsplus_dnode

Definition at line 21 of file fsw_hfsplus.h.

◆ kBTHeaderNode

#define kBTHeaderNode   1

Definition at line 68 of file fsw_hfsplus.h.

◆ kBTIndexNode

#define kBTIndexNode   0

Definition at line 67 of file fsw_hfsplus.h.

◆ kBTLeafNode

#define kBTLeafNode   -1

Definition at line 66 of file fsw_hfsplus.h.

◆ kHFSAllocationFileID

#define kHFSAllocationFileID   6

Definition at line 48 of file fsw_hfsplus.h.

◆ kHFSAttributesFileID

#define kHFSAttributesFileID   8

Definition at line 50 of file fsw_hfsplus.h.

◆ kHFSBadBlockFileID

#define kHFSBadBlockFileID   5

Definition at line 47 of file fsw_hfsplus.h.

◆ kHFSBlockSize

#define kHFSBlockSize   512

Definition at line 31 of file fsw_hfsplus.h.

◆ kHFSBogusExtentFileID

#define kHFSBogusExtentFileID   15

Definition at line 52 of file fsw_hfsplus.h.

◆ kHFSCatalogFileID

#define kHFSCatalogFileID   4

Definition at line 46 of file fsw_hfsplus.h.

◆ kHFSExtentsFileID

#define kHFSExtentsFileID   3

Definition at line 45 of file fsw_hfsplus.h.

◆ kHFSFirstUserCatalogNodeID

#define kHFSFirstUserCatalogNodeID   16

Definition at line 53 of file fsw_hfsplus.h.

◆ kHFSPlusDataFork

#define kHFSPlusDataFork   0x00

Definition at line 40 of file fsw_hfsplus.h.

◆ kHFSPlusExtentDensity

#define kHFSPlusExtentDensity   8

Definition at line 38 of file fsw_hfsplus.h.

◆ kHFSPlusFileRecord

#define kHFSPlusFileRecord   2

Definition at line 56 of file fsw_hfsplus.h.

◆ kHFSPlusFileThreadRecord

#define kHFSPlusFileThreadRecord   4

Definition at line 58 of file fsw_hfsplus.h.

◆ kHFSPlusFolderRecord

#define kHFSPlusFolderRecord   1

Definition at line 55 of file fsw_hfsplus.h.

◆ kHFSPlusFolderThreadRecord

#define kHFSPlusFolderThreadRecord   3

Definition at line 57 of file fsw_hfsplus.h.

◆ kHFSPlusHardlinkType

#define kHFSPlusHardlinkType   0x686C6E6B

Definition at line 63 of file fsw_hfsplus.h.

◆ kHFSPlusHFSPlusCreator

#define kHFSPlusHFSPlusCreator   0x6866732B

Definition at line 60 of file fsw_hfsplus.h.

◆ kHFSPlusMaxFileNameChars

#define kHFSPlusMaxFileNameChars   255

Definition at line 36 of file fsw_hfsplus.h.

◆ kHFSPlusResourceFork

#define kHFSPlusResourceFork   0xFF

Definition at line 41 of file fsw_hfsplus.h.

◆ kHFSPlusSigWord

#define kHFSPlusSigWord   0x482B

Definition at line 34 of file fsw_hfsplus.h.

◆ kHFSPlusSymlinkCreator

#define kHFSPlusSymlinkCreator   0x72686170

Definition at line 61 of file fsw_hfsplus.h.

◆ kHFSPlusSymlinkType

#define kHFSPlusSymlinkType   0x736C6E6B

Definition at line 64 of file fsw_hfsplus.h.

◆ kHFSRepairCatalogFileID

#define kHFSRepairCatalogFileID   14

Definition at line 51 of file fsw_hfsplus.h.

◆ kHFSRootFolderID

#define kHFSRootFolderID   2

Definition at line 44 of file fsw_hfsplus.h.

◆ kHFSRootParentID

#define kHFSRootParentID   1

Definition at line 43 of file fsw_hfsplus.h.

◆ kHFSStartupFileID

#define kHFSStartupFileID   7

Definition at line 49 of file fsw_hfsplus.h.

◆ kMasterDirectoryBlock

#define kMasterDirectoryBlock   2

Definition at line 32 of file fsw_hfsplus.h.

◆ VOLSTRUCTNAME

#define VOLSTRUCTNAME   fsw_hfsplus_volume

Definition at line 20 of file fsw_hfsplus.h.

Typedef Documentation

◆ HFSPlusExtentRecord

typedef HFSPlusExtentDescriptor HFSPlusExtentRecord[kHFSPlusExtentDensity]

Definition at line 83 of file fsw_hfsplus.h.

◆ k_cmp_t

typedef int(* k_cmp_t) (HFSPlusBTKey *, HFSPlusBTKey *)

Definition at line 288 of file fsw_hfsplus.h.