On Thu, 30 Dec 1999, Nicholas Clark wrote:

> /* Typedefs for unaligned integer types */
> typedef unsigned char hfs_byte_t;
> typedef unsigned char hfs_word_t[2];
> typedef unsigned char hfs_lword_t[4];
> 
> and (for example)
> 
> struct NodeDescriptor {
>       hfs_lword_t ndFLink;    /* (V) Number of the next node at this level */
>       hfs_lword_t ndBLink;    /* (V) Number of the prev node at this level */
>       hfs_byte_t  ndType;     /* (F) The type of node */
>       hfs_byte_t  ndNHeight;  /* (F) The level of this node (leaves=1) */
>       hfs_word_t  ndNRecs;    /* (V) The number of records in this node */
>       hfs_word_t  ndResv2;    /* Reserved */
> };
> 
> 
> because it appears that the Apple disk format uses 16 bit aligned 32 bit
> quantities, and the above is an attempt to make things happy on Alphas.
> 
> However, I find that my problems mounting my disk start with a line:
> 
> prev = sizeof(struct NodeDescriptor);
> 
> which is 16. :-)

With gcc on i386, sizeof(struct NodeDescriptor) = 14.



Nicolas



unsubscribe: body of `unsubscribe linux-arm' to [EMAIL PROTECTED]
++        Please use [EMAIL PROTECTED] for           ++
++                        kernel-related discussions.                      ++

Reply via email to