diff options
Diffstat (limited to 'fdisks/fdiskmaclabel.h')
-rw-r--r-- | fdisks/fdiskmaclabel.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/fdisks/fdiskmaclabel.h b/fdisks/fdiskmaclabel.h new file mode 100644 index 000000000..8d9430af5 --- /dev/null +++ b/fdisks/fdiskmaclabel.h @@ -0,0 +1,38 @@ +#ifndef FDISK_MAC_LABEL_H +#define FDISK_MAC_LABEL_H + +#include <sys/types.h> +/* + * Copyright (C) Andreas Neuper, Sep 1998. + * This file may be redistributed under + * the terms of the GNU Public License. + */ + +typedef struct { + unsigned int magic; /* expect MAC_LABEL_MAGIC */ + unsigned int fillbytes1[124]; + unsigned int physical_volume_id; + unsigned int fillbytes2[124]; +} mac_partition; + +/* MAC magic number only 16bits, do I always know that there are 0200 + * following? Problem, after magic the uint16_t res1; follows, I donnno know + * about the 200k */ +#define MAC_LABEL_MAGIC 0x45520000 +#define MAC_LABEL_MAGIC_2 0x50530000 +#define MAC_LABEL_MAGIC_3 0x504d0000 + +#define MAC_LABEL_MAGIC_SWAPPED 0x00002554 + +#define MAC_LABEL_MAGIC_2_SWAPPED 0x00003505 +#define MAC_LABEL_MAGIC_3_SWAPPED 0x0000d405 + +/* fdisk.c */ +#define maclabel ((mac_partition *)cxt->mbr) + +/* fdiskmaclabel.c */ +extern struct systypes mac_sys_types[]; +extern void mac_nolabel(struct fdisk_context *cxt); +extern int check_mac_label(struct fdisk_context *cxt); + +#endif /* FDISK_MAC_LABEL_H */ |