diff -Naur mac-fdisk-0.1.orig/bitfield.c mac-fdisk-0.1/bitfield.c --- mac-fdisk-0.1.orig/bitfield.c 1997-01-10 00:30:51.000000000 +0200 +++ mac-fdisk-0.1/bitfield.c 2004-05-28 23:08:50.693300896 +0300 @@ -67,13 +67,12 @@ // // Routines // -unsigned long -bitfield_set(unsigned long *bf, int base, int length, unsigned long value) +unsigned int +bitfield_set(unsigned int *bf, int base, int length, unsigned int value) { - unsigned long t; - unsigned long m; + unsigned int t; + unsigned int m; int s; - int i; // compute shift & mask, coerce value to correct number of bits, // zap the old bits and stuff the new value @@ -86,12 +85,11 @@ } -unsigned long -bitfield_get(unsigned long bf, int base, int length) +unsigned int +bitfield_get(unsigned int bf, int base, int length) { - unsigned long m; + unsigned int m; int s; - int i; // compute shift & mask // return the correct number of bits (shifted to low end) diff -Naur mac-fdisk-0.1.orig/bitfield.h mac-fdisk-0.1/bitfield.h --- mac-fdisk-0.1.orig/bitfield.h 1996-12-18 02:44:16.000000000 +0200 +++ mac-fdisk-0.1/bitfield.h 2004-05-28 19:50:24.751301024 +0300 @@ -63,5 +63,5 @@ // // Forward declarations // -unsigned long bitfield_set(unsigned long *bf, int base, int length, unsigned long value); -unsigned long bitfield_get(unsigned long bf, int base, int length); +unsigned int bitfield_set(unsigned int *bf, int base, int length, unsigned int value); +unsigned int bitfield_get(unsigned int bf, int base, int length); diff -Naur mac-fdisk-0.1.orig/dpme.h mac-fdisk-0.1/dpme.h --- mac-fdisk-0.1.orig/dpme.h 2004-05-28 19:23:49.281282000 +0300 +++ mac-fdisk-0.1/dpme.h 2004-05-28 19:25:24.764273728 +0300 @@ -61,7 +61,7 @@ // typedef unsigned char u8; typedef unsigned short u16; -typedef unsigned long u32; +typedef unsigned int u32; // Physical block zero of the disk has this format @@ -113,10 +113,10 @@ #endif u32 dpme_boot_block ; u32 dpme_boot_bytes ; - u8 *dpme_load_addr ; - u8 *dpme_load_addr_2 ; - u8 *dpme_goto_addr ; - u8 *dpme_goto_addr_2 ; + u32 dpme_load_addr ; + u32 dpme_load_addr_2 ; + u32 dpme_goto_addr ; + u32 dpme_goto_addr_2 ; u32 dpme_checksum ; char dpme_process_id[16] ; u32 dpme_boot_args[32] ; diff -Naur mac-fdisk-0.1.orig/dump.c mac-fdisk-0.1/dump.c --- mac-fdisk-0.1.orig/dump.c 2004-05-28 19:23:49.292281000 +0300 +++ mac-fdisk-0.1/dump.c 2004-05-28 22:52:39.905370360 +0300 @@ -30,8 +30,8 @@ */ #include -#ifndef __linux__ #include +#ifndef __linux__ #include #endif #include @@ -63,16 +63,16 @@ // Global Constants // NAMES plist[] = { - "Drvr", "Apple_Driver", - "Dr43", "Apple_Driver43", - "Free", "Apple_Free", - " HFS", "Apple_HFS", - " MFS", "Apple_MFS", - "PDOS", "Apple_PRODOS", - "junk", "Apple_Scratch", - "unix", "Apple_UNIX_SVR2", - " map", "Apple_partition_map", - 0, 0 + {"Drvr"}, {"Apple_Driver"}, + {"Dr43"}, {"Apple_Driver43"}, + {"Free"}, {"Apple_Free"}, + {" HFS"}, {"Apple_HFS"}, + {" MFS"}, {"Apple_MFS"}, + {"PDOS"}, {"Apple_PRODOS"}, + {"junk"}, {"Apple_Scratch"}, + {"unix"}, {"Apple_UNIX_SVR2"}, + {" map"}, {"Apple_partition_map"}, + {0}, {0} }; const char * kStringEmpty = ""; @@ -164,10 +164,10 @@ } #ifdef __mc68000__ printf("%*s type name " - "%*s %-*s ( size ) system\n", strlen(map->name)+1, "#", j, "length", j, "base"); + "%*s %-*s ( size ) system\n", (int)strlen(map->name)+1, "#", j, "length", j, "base"); #else printf("%*s type name " - "%*s %-*s ( size ) system\n", strlen(map->name)+1, "#", j, "length", j, "base"); + "%*s %-*s ( size ) system\n", (int)strlen(map->name)+1, "#", j, "length", j, "base"); #endif /* Grok devfs names. (courtesy Colin Walters)*/ @@ -201,7 +201,6 @@ partition_map_header *map; int j; DPME *p; - BZB *bp; char *s; #ifdef __mc68000__ int aflag = 1; @@ -224,13 +223,13 @@ } } #ifdef __mc68000__ - printf("%s%-2d %.4s %-12.12s ", dev, entry->disk_address, s, p->dpme_name); + printf("%s%-2d %.4s %-12.12s ", dev, (int)entry->disk_address, s, p->dpme_name); #else - printf("%s%-4d %.4s %-18.32s ", dev, entry->disk_address, s, p->dpme_name); + printf("%s%-4d %.4s %-18.32s ", dev, (int)entry->disk_address, s, p->dpme_name); #endif } else { printf("%s%-4d %20.32s %-18.32s ", dev, - entry->disk_address, p->dpme_type, p->dpme_name); + (int)entry->disk_address, p->dpme_type, p->dpme_name); } if (pflag) { @@ -314,7 +313,6 @@ int i; int fd; DPME * data; - long t; data = (DPME *) malloc(PBLOCK_SIZE); if (data == NULL) { @@ -382,7 +380,7 @@ printf("Header:\n"); printf("fd=%d (%s)\n", map->fd, (map->regular_file)?"file":"device"); printf("map %d blocks out of %d, media %u blocks\n", - map->blocks_in_map, map->maximum_in_map, map->media_size); + map->blocks_in_map, map->maximum_in_map, (unsigned int)map->media_size); printf("Map is%s writeable", (map->writeable)?kStringEmpty:kStringNot); printf(", but%s changed\n", (map->changed)?kStringEmpty:kStringNot); printf("\n"); @@ -426,7 +424,7 @@ for (entry = map->disk_order; entry != NULL; entry = entry->next_on_disk) { p = entry->data; printf("%2d: %20.32s ", - entry->disk_address, p->dpme_type); + (int)entry->disk_address, p->dpme_type); printf("%7u @ %-7u ", p->dpme_pblocks, p->dpme_pblock_start); printf("%c%c%c%c%c%c%c%c%c%c ", (dpme_valid_get(p))?'V':'v', @@ -449,7 +447,7 @@ "goto_address checksum processor\n"); for (entry = map->disk_order; entry != NULL; entry = entry->next_on_disk) { p = entry->data; - printf("%2d: ", entry->disk_address); + printf("%2d: ", (int)entry->disk_address); printf("%7u ", p->dpme_boot_block); printf("%7u ", p->dpme_boot_bytes); printf("%8x ", p->dpme_load_addr); @@ -466,7 +464,7 @@ */ for (entry = map->disk_order; entry != NULL; entry = entry->next_on_disk) { p = entry->data; - printf("%2d: ", entry->disk_address); + printf("%2d: ", (int)entry->disk_address); bp = (BZB *) (p->dpme_bzb); j = -1; diff -Naur mac-fdisk-0.1.orig/errors.c mac-fdisk-0.1/errors.c --- mac-fdisk-0.1.orig/errors.c 1997-01-14 22:29:39.000000000 +0200 +++ mac-fdisk-0.1/errors.c 2004-05-28 23:13:02.016305152 +0300 @@ -26,12 +26,11 @@ */ #include -#ifndef __linux__ #include -#endif #include #include +#include #include "errors.h" #include "pdisk.h" @@ -115,8 +114,8 @@ va_end(ap); #ifdef __linux__ - if (value > 0 && value < sys_nerr) { - fprintf(stderr, " (%s)\n", sys_errlist[value]); + if (value > 0 && value < errno) { + fprintf(stderr, " (%s)\n", strerror(value)); } else { fprintf(stderr, "\n"); } @@ -144,8 +143,8 @@ va_end(ap); #ifdef __linux__ - if (value > 0 && value < sys_nerr) { - fprintf(stderr, " (%s)\n", sys_errlist[value]); + if (value > 0 && value < errno) { + fprintf(stderr, " (%s)\n", strerror(value)); } else { fprintf(stderr, "\n"); } diff -Naur mac-fdisk-0.1.orig/fdisk.c mac-fdisk-0.1/fdisk.c --- mac-fdisk-0.1.orig/fdisk.c 2004-05-28 19:23:49.665358000 +0300 +++ mac-fdisk-0.1/fdisk.c 2004-05-28 23:08:05.861327040 +0300 @@ -146,7 +146,8 @@ #include #include #include - +#include +#include #include #include "fdisk.h" @@ -1490,7 +1491,7 @@ } } -void main(int argc, char **argv) +int main(int argc, char **argv) { if (argc > 3) fatal(usage); diff -Naur mac-fdisk-0.1.orig/fdisklabel.c mac-fdisk-0.1/fdisklabel.c --- mac-fdisk-0.1.orig/fdisklabel.c 2004-05-28 19:23:49.667358000 +0300 +++ mac-fdisk-0.1/fdisklabel.c 2004-05-28 23:05:53.467351208 +0300 @@ -35,6 +35,7 @@ SUCH DAMAGE. */ +#include #include #include #include @@ -42,6 +43,7 @@ #include #include #include +#include #include #include @@ -264,8 +266,8 @@ fprintf(f, "type: %s\n", bsd_dktypenames[lp->d_type]); else fprintf(f, "type: %d\n", lp->d_type); - fprintf(f, "disk: %.*s\n", sizeof(lp->d_typename), lp->d_typename); - fprintf(f, "label: %.*s\n", sizeof(lp->d_packname), lp->d_packname); + fprintf(f, "disk: %.*s\n", (int)sizeof(lp->d_typename), lp->d_typename); + fprintf(f, "label: %.*s\n", (int)sizeof(lp->d_packname), lp->d_packname); fprintf(f, "flags:"); if (lp->d_flags & BSD_D_REMOVABLE) fprintf(f, " removable"); @@ -274,17 +276,17 @@ if (lp->d_flags & BSD_D_BADSECT) fprintf(f, " badsect"); fprintf(f, "\n"); - fprintf(f, "bytes/sector: %d\n", lp->d_secsize); - fprintf(f, "sectors/track: %d\n", lp->d_nsectors); - fprintf(f, "tracks/cylinder: %d\n", lp->d_ntracks); - fprintf(f, "sectors/cylinder: %d\n", lp->d_secpercyl); - fprintf(f, "cylinders: %d\n", lp->d_ncylinders); + fprintf(f, "bytes/sector: %d\n", (int)lp->d_secsize); + fprintf(f, "sectors/track: %d\n", (int)lp->d_nsectors); + fprintf(f, "tracks/cylinder: %d\n", (int)lp->d_ntracks); + fprintf(f, "sectors/cylinder: %d\n", (int)lp->d_secpercyl); + fprintf(f, "cylinders: %d\n", (int)lp->d_ncylinders); fprintf(f, "rpm: %d\n", lp->d_rpm); fprintf(f, "interleave: %d\n", lp->d_interleave); fprintf(f, "trackskew: %d\n", lp->d_trackskew); fprintf(f, "cylinderskew: %d\n", lp->d_cylskew); - fprintf(f, "headswitch: %d\t\t# milliseconds\n", lp->d_headswitch); - fprintf(f, "track-to-track seek: %d\t# milliseconds\n", lp->d_trkseek); + fprintf(f, "headswitch: %d\t\t# milliseconds\n", (int)lp->d_headswitch); + fprintf(f, "track-to-track seek: %d\t# milliseconds\n", (int)lp->d_trkseek); fprintf(f, "drivedata: "); for (i = NDDATA - 1; i >= 0; i--) if (lp->d_drivedata[i]) @@ -292,7 +294,7 @@ if (i < 0) i = 0; for (j = 0; j <= i; j++) - fprintf(f, "%d ", lp->d_drivedata[j]); + fprintf(f, "%d ", (int)lp->d_drivedata[j]); } fprintf (f, "\n%d partitions:\n", lp->d_npartitions); fprintf (f, "# size offset fstype [fsize bsize cpg]\n"); @@ -300,7 +302,7 @@ for (i = 0; i < lp->d_npartitions; i++, pp++) { if (pp->p_size) { fprintf(f, " %c: %8d %8d ", 'a' + i, - pp->p_size, pp->p_offset); + (int)pp->p_size, (int)pp->p_offset); if ((unsigned) pp->p_fstype < BSD_FSMAXTYPES) fprintf(f, "%8.8s", bsd_fstypes[pp->p_fstype].name); else @@ -309,12 +311,12 @@ { case BSD_FS_UNUSED: fprintf(f, " %5d %5d %5.5s ", - pp->p_fsize, pp->p_fsize * pp->p_frag, ""); + (int)pp->p_fsize, (int)pp->p_fsize * pp->p_frag, ""); break; case BSD_FS_BSDFFS: fprintf(f, " %5d %5d %5d ", - pp->p_fsize, pp->p_fsize * pp->p_frag, + (int)pp->p_fsize, (int)pp->p_fsize * pp->p_frag, pp->p_cpg); break; @@ -324,21 +326,21 @@ } fprintf(f, "\t# (Cyl. %4d", #if 0 - pp->p_offset / lp->d_secpercyl); /* differs from Linux fdisk */ + (int)(pp->p_offset / lp->d_secpercyl)); /* differs from Linux fdisk */ #else - pp->p_offset / lp->d_secpercyl + 1); + (int)(pp->p_offset / lp->d_secpercyl + 1)); #endif if (pp->p_offset % lp->d_secpercyl) putc('*', f); else putc(' ', f); fprintf(f, "- %d", - (pp->p_offset + + (int)((pp->p_offset + pp->p_size + lp->d_secpercyl - 1) / #if 0 - lp->d_secpercyl - 1); /* differs from Linux fdisk */ + lp->d_secpercyl - 1)); /* differs from Linux fdisk */ #else - lp->d_secpercyl); + lp->d_secpercyl)); #endif if (pp->p_size % lp->d_secpercyl) putc('*', f); diff -Naur mac-fdisk-0.1.orig/io.c mac-fdisk-0.1/io.c --- mac-fdisk-0.1.orig/io.c 2004-05-28 19:23:49.303279000 +0300 +++ mac-fdisk-0.1/io.c 2004-05-28 23:23:46.721284784 +0300 @@ -26,15 +26,18 @@ */ #include -#ifndef __linux__ #include +#ifndef __linux__ #include #include #else #ifdef __GLIBC__ +#include #include +#include #endif #endif +#include #include #include #include @@ -466,7 +469,7 @@ long t; if (rflag) { - printf("Can't write block %u to file", num); + printf("Can't write block %u to file", (unsigned int)num); return 0; } #ifndef __linux__ diff -Naur mac-fdisk-0.1.orig/partition_map.c mac-fdisk-0.1/partition_map.c --- mac-fdisk-0.1.orig/partition_map.c 2004-05-28 19:23:49.314277000 +0300 +++ mac-fdisk-0.1/partition_map.c 2004-05-28 23:18:12.165286000 +0300 @@ -26,12 +26,10 @@ */ #include -#ifndef __linux__ #include #include -#endif #include - +#include #include #ifdef __linux__ #include @@ -107,7 +105,6 @@ int fd; partition_map_header * map; int writeable; - unsigned long length; #ifdef __linux__ struct stat info; #endif @@ -404,9 +401,7 @@ { int fd; partition_map_header * map; - unsigned long length; DPME *data; - int ok; unsigned long number; #ifdef __linux__ struct stat info; @@ -435,13 +430,13 @@ map->maximum_in_map = -1; number = compute_device_size(fd); - printf("size of 'device' is %u blocks: ", number); + printf("size of 'device' is %u blocks: ", (unsigned int)number); flush_to_newline(0); get_number_argument("what should be the size? ", (long *)&number, number); if (number < 4) { number = 4; } - printf("new size of 'device' is %u blocks\n", number); + printf("new size of 'device' is %u blocks\n", (unsigned int)number); map->media_size = number; #ifdef __linux__ --- mac-fdisk-0.1/pdisk.c.orig 2004-05-29 02:34:15.833913144 -0500 +++ mac-fdisk-0.1/pdisk.c 2004-05-29 02:36:05.775975008 -0500 @@ -28,12 +28,14 @@ */ #include +#include +#include +#include + #ifdef __linux__ #include #include #else -#include -#include #include #endif #include @@ -437,7 +439,6 @@ { long base; long length; - long mult; char *name; char *type_name; @@ -599,7 +600,6 @@ void do_reorder(partition_map_header *map) { - partition_map * cur; long old_index; long index;