Imported Upstream version 1.1.11
[platform/upstream/cdrkit.git] / doc / genisoimage / README.macosx
1 Notes on using the --osx-hfs option when running genisoimage on MacOS X
2
3 genisoimage does not use any of the MacOS APIs to access files - it uses
4 standard (POSIX style) library calls. Under normal circumstances, all
5 genisoimage will 'see' is the data fork of files on an HFS (or HFS+) file system.
6
7 However, Apple have provided a way for POSIX style applications to 
8 access the resource fork - using the following syntax:
9
10 If a file exists on an HFS volume with the name 'foo', then the resource fork
11 can be accessed using the file name 'foo/rsrc' or foo/..namedfork/rsrc'
12 (the data fork can also be accessed using 'foo/..namedfork/data').
13
14 These 'pseudo' file names are not normally visible in a directory - unless
15 you access them directly (e.g. 'ls -l */rsrc etc).
16
17 To access the finder information, Apple have provided an undocumented library
18 function called getattrlist(). Fortunately there are example of its usage
19 in the Darwin (MacOS kernel) source code.
20
21
22 Although MacOS X can use HFS(+) as its file system, Apple have decided to
23 move away from using HFS to store finder info and resource data - for 
24 example, the TYPE of a file may be based on its file name extension and the
25 TYPE field in the finder info empty.
26
27 genisoimage knows nothing about these file name extension mappings, so if the
28 --osx-hfs option is used and the source files are on MacOS X HFS(+) volumes,
29 by the fact that they are HFS files, they will get identified as 'MacOS X HFS'
30 and the resulting file on the output CD image will have empty TYPE and CREATOR
31 fields.
32
33 Therefore, if the input finderinfo is blank and the the resource fork is
34 empty, genisoimage will assume the input file is not a 'real' HFS file - which
35 means the TYPE and CREATOR may then be set using the file's magic number or
36 genisoimage' file name extension mapping.
37
38 The only real benefit of using the --osx-hfs option is when the source files
39 are on an OS9 or earlier HFS or HFS+ volume e.g. an existing HFS CD.
40
41 James Pearson 3-Jul-2002
42 Edited for program name change by Eduard Bloch, 2006
43