summaryrefslogtreecommitdiffstats
path: root/disk-utils/fdisklabel.c
diff options
context:
space:
mode:
Diffstat (limited to 'disk-utils/fdisklabel.c')
-rw-r--r--disk-utils/fdisklabel.c281
1 files changed, 145 insertions, 136 deletions
diff --git a/disk-utils/fdisklabel.c b/disk-utils/fdisklabel.c
index 5fbf67a4c..a6b5ecc4d 100644
--- a/disk-utils/fdisklabel.c
+++ b/disk-utils/fdisklabel.c
@@ -55,38 +55,46 @@
#define DKTYPENAMES
#include "fdisklabel.h"
-static void bsd_delete_part (void);
-static void bsd_new_part (void);
-static void bsd_print_disklabel (int show_all);
-static void bsd_write_disklabel (void);
-static int bsd_create_disklabel (void);
-static void bsd_edit_disklabel (void);
-static void bsd_write_bootstrap (void);
-static void bsd_change_fstype (void);
-static int bsd_get_part_index (int max);
-static int bsd_check_new_partition (int *i);
-static void bsd_list_types (void);
-static u_short bsd_dkcksum (struct disklabel *lp);
-static int bsd_initlabel (struct partition *p, struct disklabel *d, int pindex);
-static int bsd_readlabel (struct partition *p, struct disklabel *d);
-static int bsd_writelabel (struct partition *p, struct disklabel *d);
+static void xbsd_delete_part (void);
+static void xbsd_new_part (void);
+static void xbsd_print_disklabel (int show_all);
+static void xbsd_write_disklabel (void);
+static int xbsd_create_disklabel (void);
+static void xbsd_edit_disklabel (void);
+static void xbsd_write_bootstrap (void);
+static void xbsd_change_fstype (void);
+static int xbsd_get_part_index (int max);
+static int xbsd_check_new_partition (int *i);
+static void xbsd_list_types (void);
+static u_short xbsd_dkcksum (struct xbsd_disklabel *lp);
+static int xbsd_initlabel (struct partition *p, struct xbsd_disklabel *d, int pindex);
+static int xbsd_readlabel (struct partition *p, struct xbsd_disklabel *d);
+static int xbsd_writelabel (struct partition *p, struct xbsd_disklabel *d);
static void sync_disks (void);
#if defined (i386)
-static int bsd_translate_fstype (int linux_type);
-static void bsd_link_part (void);
+static int xbsd_translate_fstype (int linux_type);
+static void xbsd_link_part (void);
#endif
#if defined (__alpha__)
void alpha_bootblock_checksum (char *boot);
#endif
-static struct disklabel bsd_dlabel;
+static struct xbsd_disklabel xbsd_dlabel;
static char buffer[BSD_BBSIZE];
#if defined (i386)
-static struct partition *bsd_part;
-static int bsd_part_index;
+static struct partition *xbsd_part;
+static int xbsd_part_index;
#endif
void
+btrydev (char * dev) {
+ if (xbsd_readlabel (NULL, &xbsd_dlabel) == 0)
+ return;
+ printf("\nBSD label for device: %s\n", dev);
+ xbsd_print_disklabel (0);
+}
+
+void
bmenu (void)
{
puts ("Command action\n"
@@ -119,18 +127,18 @@ bselect (void)
for (t=0; t<4; t++)
if (part_table[t] -> sys_ind == NETBSD_PARTITION)
{
- bsd_part = part_table[t];
- bsd_part_index = t;
- if (bsd_part -> start_sect == 0)
+ xbsd_part = part_table[t];
+ xbsd_part_index = t;
+ if (xbsd_part -> start_sect == 0)
{
fprintf (stderr, "Partition %s%d has invalid starting sector 0.\n",
disk_device, t+1);
return;
}
printf ("Reading disklabel of %s%d at sector %d.\n",
- disk_device, t+1, bsd_part -> start_sect + BSD_LABELSECTOR);
- if (bsd_readlabel (bsd_part, &bsd_dlabel) == 0)
- if (bsd_create_disklabel () == 0)
+ disk_device, t+1, xbsd_part -> start_sect + BSD_LABELSECTOR);
+ if (xbsd_readlabel (xbsd_part, &xbsd_dlabel) == 0)
+ if (xbsd_create_disklabel () == 0)
return;
break;
}
@@ -143,8 +151,8 @@ bselect (void)
#elif defined (__alpha__)
- if (bsd_readlabel (NULL, &bsd_dlabel) == 0)
- if (bsd_create_disklabel () == 0)
+ if (xbsd_readlabel (NULL, &xbsd_dlabel) == 0)
+ if (xbsd_create_disklabel () == 0)
exit ( EXIT_SUCCESS );
#endif
@@ -155,40 +163,40 @@ bselect (void)
switch (tolower (read_char ("BSD disklabel command (m for help): ")))
{
case 'd':
- bsd_delete_part ();
+ xbsd_delete_part ();
break;
case 'e':
- bsd_edit_disklabel ();
+ xbsd_edit_disklabel ();
break;
case 'i':
- bsd_write_bootstrap ();
+ xbsd_write_bootstrap ();
break;
case 'l':
- bsd_list_types ();
+ xbsd_list_types ();
break;
case 'n':
- bsd_new_part ();
+ xbsd_new_part ();
break;
case 'p':
- bsd_print_disklabel (0);
+ xbsd_print_disklabel (0);
break;
case 'q':
close (fd);
exit ( EXIT_SUCCESS );
case 's':
- bsd_print_disklabel (1);
+ xbsd_print_disklabel (1);
break;
case 't':
- bsd_change_fstype ();
+ xbsd_change_fstype ();
break;
case 'w':
- bsd_write_disklabel ();
+ xbsd_write_disklabel ();
break;
#if defined (i386)
case 'r':
return;
case 'x':
- bsd_link_part ();
+ xbsd_link_part ();
break;
#endif
default:
@@ -199,35 +207,35 @@ bselect (void)
}
static void
-bsd_delete_part (void)
+xbsd_delete_part (void)
{
int i;
- i = bsd_get_part_index (bsd_dlabel.d_npartitions);
- bsd_dlabel.d_partitions[i].p_size = 0;
- bsd_dlabel.d_partitions[i].p_offset = 0;
- bsd_dlabel.d_partitions[i].p_fstype = BSD_FS_UNUSED;
- if (bsd_dlabel.d_npartitions == i + 1)
- while (bsd_dlabel.d_partitions[bsd_dlabel.d_npartitions-1].p_size == 0)
- bsd_dlabel.d_npartitions--;
+ i = xbsd_get_part_index (xbsd_dlabel.d_npartitions);
+ xbsd_dlabel.d_partitions[i].p_size = 0;
+ xbsd_dlabel.d_partitions[i].p_offset = 0;
+ xbsd_dlabel.d_partitions[i].p_fstype = BSD_FS_UNUSED;
+ if (xbsd_dlabel.d_npartitions == i + 1)
+ while (xbsd_dlabel.d_partitions[xbsd_dlabel.d_npartitions-1].p_size == 0)
+ xbsd_dlabel.d_npartitions--;
}
static void
-bsd_new_part (void)
+xbsd_new_part (void)
{
uint begin, end;
char mesg[48];
int i;
- if (!bsd_check_new_partition (&i))
+ if (!xbsd_check_new_partition (&i))
return;
#if defined (i386)
- begin = bsd_part -> start_sect;
- end = begin + bsd_part -> nr_sects - 1;
+ begin = xbsd_part -> start_sect;
+ end = begin + xbsd_part -> nr_sects - 1;
#elif defined (__alpha__)
begin = 0;
- end = bsd_dlabel.d_secperunit;
+ end = xbsd_dlabel.d_secperunit;
#endif
sprintf (mesg, "First %s", str_units());
@@ -241,32 +249,32 @@ bsd_new_part (void)
begin = (begin - 1) * display_factor;
end = end * display_factor - 1;
}
- bsd_dlabel.d_partitions[i].p_size = end - begin + 1;
- bsd_dlabel.d_partitions[i].p_offset = begin;
- bsd_dlabel.d_partitions[i].p_fstype = BSD_FS_UNUSED;
+ xbsd_dlabel.d_partitions[i].p_size = end - begin + 1;
+ xbsd_dlabel.d_partitions[i].p_offset = begin;
+ xbsd_dlabel.d_partitions[i].p_fstype = BSD_FS_UNUSED;
}
static void
-bsd_print_disklabel (int show_all)
+xbsd_print_disklabel (int show_all)
{
- struct disklabel *lp = &bsd_dlabel;
- struct bsd_partition *pp;
+ struct xbsd_disklabel *lp = &xbsd_dlabel;
+ struct xbsd_partition *pp;
FILE *f = stdout;
int i, j;
if (show_all)
{
#if defined (i386)
- fprintf(f, "# %s%d:\n", disk_device, bsd_part_index+1);
+ fprintf(f, "# %s%d:\n", disk_device, xbsd_part_index+1);
#elif defined (__alpha__)
fprintf(f, "# %s:\n", disk_device);
#endif
if ((unsigned) lp->d_type < BSD_DKMAXTYPES)
- fprintf(f, "type: %s\n", bsd_dktypenames[lp->d_type]);
+ fprintf(f, "type: %s\n", xbsd_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");
@@ -275,17 +283,19 @@ bsd_print_disklabel (int show_all)
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);
+ /* On various machines the fields of *lp are short/int/long */
+ /* In order to avoid problems, we cast them all to long. */
+ fprintf(f, "bytes/sector: %ld\n", (long) lp->d_secsize);
+ fprintf(f, "sectors/track: %ld\n", (long) lp->d_nsectors);
+ fprintf(f, "tracks/cylinder: %ld\n", (long) lp->d_ntracks);
+ fprintf(f, "sectors/cylinder: %ld\n", (long) lp->d_secpercyl);
+ fprintf(f, "cylinders: %ld\n", (long) 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: %ld\t\t# milliseconds\n", (long) lp->d_headswitch);
+ fprintf(f, "track-to-track seek: %ld\t# milliseconds\n", (long) lp->d_trkseek);
fprintf(f, "drivedata: ");
for (i = NDDATA - 1; i >= 0; i--)
if (lp->d_drivedata[i])
@@ -293,29 +303,29 @@ bsd_print_disklabel (int show_all)
if (i < 0)
i = 0;
for (j = 0; j <= i; j++)
- fprintf(f, "%d ", lp->d_drivedata[j]);
+ fprintf(f, "%ld ", (long) lp->d_drivedata[j]);
}
fprintf (f, "\n%d partitions:\n", lp->d_npartitions);
fprintf (f, "# size offset fstype [fsize bsize cpg]\n");
pp = lp->d_partitions;
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);
+ fprintf(f, " %c: %8ld %8ld ", 'a' + i,
+ (long) pp->p_size, (long) pp->p_offset);
if ((unsigned) pp->p_fstype < BSD_FSMAXTYPES)
- fprintf(f, "%8.8s", bsd_fstypes[pp->p_fstype].name);
+ fprintf(f, "%8.8s", xbsd_fstypes[pp->p_fstype].name);
else
fprintf(f, "%8x", pp->p_fstype);
switch (pp->p_fstype)
{
case BSD_FS_UNUSED:
- fprintf(f, " %5d %5d %5.5s ",
- pp->p_fsize, pp->p_fsize * pp->p_frag, "");
+ fprintf(f, " %5ld %5ld %5.5s ",
+ (long) pp->p_fsize, (long) 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,
+ fprintf(f, " %5ld %5ld %5d ",
+ (long) pp->p_fsize, (long) pp->p_fsize * pp->p_frag,
pp->p_cpg);
break;
@@ -323,7 +333,7 @@ bsd_print_disklabel (int show_all)
fprintf(f, "%20.20s", "");
break;
}
- fprintf(f, "\t# (Cyl. %4d",
+ fprintf(f, "\t# (Cyl. %4ld", (long)
#if 0
pp->p_offset / lp->d_secpercyl); /* differs from Linux fdisk */
#else
@@ -333,8 +343,8 @@ bsd_print_disklabel (int show_all)
putc('*', f);
else
putc(' ', f);
- fprintf(f, "- %d",
- (pp->p_offset +
+ fprintf(f, "- %ld",
+ (long) (pp->p_offset +
pp->p_size + lp->d_secpercyl - 1) /
#if 0
lp->d_secpercyl - 1); /* differs from Linux fdisk */
@@ -349,25 +359,25 @@ bsd_print_disklabel (int show_all)
}
static void
-bsd_write_disklabel (void)
+xbsd_write_disklabel (void)
{
#if defined (i386)
- printf ("Writing disklabel to %s%d.\n", disk_device, bsd_part_index+1);
- bsd_writelabel (bsd_part, &bsd_dlabel);
+ printf ("Writing disklabel to %s%d.\n", disk_device, xbsd_part_index+1);
+ xbsd_writelabel (xbsd_part, &xbsd_dlabel);
#elif defined (__alpha__)
printf ("Writing disklabel to %s.\n", disk_device);
- bsd_writelabel (NULL, &bsd_dlabel);
+ xbsd_writelabel (NULL, &xbsd_dlabel);
#endif
}
static int
-bsd_create_disklabel (void)
+xbsd_create_disklabel (void)
{
char c;
#if defined (i386)
fprintf (stderr, "%s%d contains no disklabel.\n",
- disk_device, bsd_part_index+1);
+ disk_device, xbsd_part_index+1);
#elif defined (__alpha__)
fprintf (stderr, "%s contains no disklabel.\n", disk_device);
#endif
@@ -376,12 +386,12 @@ bsd_create_disklabel (void)
if ((c = tolower (read_char ("Do you want to create a disklabel? (y/n) "))) == 'y')
{
#if defined (i386)
- if (bsd_initlabel (bsd_part, &bsd_dlabel, bsd_part_index) == 1)
+ if (xbsd_initlabel (xbsd_part, &xbsd_dlabel, xbsd_part_index) == 1)
#elif defined (__alpha__)
- if (bsd_initlabel (NULL, &bsd_dlabel, 0) == 1)
+ if (xbsd_initlabel (NULL, &xbsd_dlabel, 0) == 1)
#endif
{
- bsd_print_disklabel (1);
+ xbsd_print_disklabel (1);
return 1;
}
else
@@ -405,11 +415,11 @@ edit_int (int def, char *mesg)
}
static void
-bsd_edit_disklabel (void)
+xbsd_edit_disklabel (void)
{
- struct disklabel *d;
+ struct xbsd_disklabel *d;
- d = &bsd_dlabel;
+ d = &xbsd_dlabel;
#ifdef __alpha__
d -> d_secsize = (u_long) edit_int ((u_long) d -> d_secsize ,"bytes/sector");
@@ -439,7 +449,7 @@ bsd_edit_disklabel (void)
}
static int
-bsd_get_bootstrap (char *path, void *ptr, int size)
+xbsd_get_bootstrap (char *path, void *ptr, int size)
{
int fd;
@@ -460,16 +470,16 @@ bsd_get_bootstrap (char *path, void *ptr, int size)
}
static void
-bsd_write_bootstrap (void)
+xbsd_write_bootstrap (void)
{
char *bootdir = BSD_LINUX_BOOTDIR;
char path[MAXPATHLEN];
char *dkbasename;
- struct disklabel dl;
+ struct xbsd_disklabel dl;
char *d, *p, *e;
int sector;
- if (bsd_dlabel.d_type == BSD_DTYPE_SCSI)
+ if (xbsd_dlabel.d_type == BSD_DTYPE_SCSI)
dkbasename = "sd";
else
dkbasename = "wd";
@@ -481,22 +491,22 @@ bsd_write_bootstrap (void)
dkbasename = line_ptr;
}
sprintf (path, "%s/%sboot", bootdir, dkbasename);
- if (!bsd_get_bootstrap (path, buffer, (int) bsd_dlabel.d_secsize))
+ if (!xbsd_get_bootstrap (path, buffer, (int) xbsd_dlabel.d_secsize))
return;
- /* We need a backup of the disklabel (bsd_dlabel might have changed). */
+ /* We need a backup of the disklabel (xbsd_dlabel might have changed). */
d = &buffer[BSD_LABELSECTOR * SECTOR_SIZE];
- bcopy (d, &dl, sizeof (struct disklabel));
+ bcopy (d, &dl, sizeof (struct xbsd_disklabel));
/* The disklabel will be overwritten by 0's from bootxx anyway */
- bzero (d, sizeof (struct disklabel));
+ bzero (d, sizeof (struct xbsd_disklabel));
sprintf (path, "%s/boot%s", bootdir, dkbasename);
- if (!bsd_get_bootstrap (path, &buffer[bsd_dlabel.d_secsize],
- (int) bsd_dlabel.d_bbsize - bsd_dlabel.d_secsize))
+ if (!xbsd_get_bootstrap (path, &buffer[xbsd_dlabel.d_secsize],
+ (int) xbsd_dlabel.d_bbsize - xbsd_dlabel.d_secsize))
return;
- e = d + sizeof (struct disklabel);
+ e = d + sizeof (struct xbsd_disklabel);
for (p=d; p < e; p++)
if (*p)
{
@@ -504,10 +514,10 @@ bsd_write_bootstrap (void)
exit ( EXIT_FAILURE );
}
- bcopy (&dl, d, sizeof (struct disklabel));
+ bcopy (&dl, d, sizeof (struct xbsd_disklabel));
#if defined (i386)
- sector = bsd_part -> start_sect;
+ sector = xbsd_part -> start_sect;
#elif defined (__alpha__)
sector = 0;
alpha_bootblock_checksum (buffer);
@@ -519,7 +529,7 @@ bsd_write_bootstrap (void)
fatal (unable_to_write);
#if defined (i386)
- printf ("Bootstrap installed on %s%d.\n", disk_device, bsd_part_index+1);
+ printf ("Bootstrap installed on %s%d.\n", disk_device, xbsd_part_index+1);
#elif defined (__alpha__)
printf ("Bootstrap installed on %s.\n", disk_device);
#endif
@@ -528,16 +538,16 @@ bsd_write_bootstrap (void)
}
static void
-bsd_change_fstype (void)
+xbsd_change_fstype (void)
{
int i;
- i = bsd_get_part_index (bsd_dlabel.d_npartitions);
- bsd_dlabel.d_partitions[i].p_fstype = read_hex (bsd_fstypes, BSD_FSMAXTYPES);
+ i = xbsd_get_part_index (xbsd_dlabel.d_npartitions);
+ xbsd_dlabel.d_partitions[i].p_fstype = read_hex (xbsd_fstypes, BSD_FSMAXTYPES);
}
static int
-bsd_get_part_index (int max)
+xbsd_get_part_index (int max)
{
char prompt[40];
char l;
@@ -550,14 +560,14 @@ bsd_get_part_index (int max)
}
static int
-bsd_check_new_partition (int *i)
+xbsd_check_new_partition (int *i)
{
int t;
- if (bsd_dlabel.d_npartitions == BSD_MAXPARTITIONS)
+ if (xbsd_dlabel.d_npartitions == BSD_MAXPARTITIONS)
{
for (t=0; t < BSD_MAXPARTITIONS; t++)
- if (bsd_dlabel.d_partitions[t].p_size == 0)
+ if (xbsd_dlabel.d_partitions[t].p_size == 0)
break;
if (t == BSD_MAXPARTITIONS)
@@ -566,12 +576,12 @@ bsd_check_new_partition (int *i)
return 0;
}
}
- *i = bsd_get_part_index (BSD_MAXPARTITIONS);
+ *i = xbsd_get_part_index (BSD_MAXPARTITIONS);
- if (*i >= bsd_dlabel.d_npartitions)
- bsd_dlabel.d_npartitions = (*i) + 1;
+ if (*i >= xbsd_dlabel.d_npartitions)
+ xbsd_dlabel.d_npartitions = (*i) + 1;
- if (bsd_dlabel.d_partitions[*i].p_size != 0)
+ if (xbsd_dlabel.d_partitions[*i].p_size != 0)
{
fprintf (stderr, "This partition already exists.\n");
return 0;
@@ -580,13 +590,13 @@ bsd_check_new_partition (int *i)
}
static void
-bsd_list_types (void)
+xbsd_list_types (void)
{
- list_types (bsd_fstypes, BSD_FSMAXTYPES);
+ list_types (xbsd_fstypes, BSD_FSMAXTYPES);
}
static u_short
-bsd_dkcksum (struct disklabel *lp)
+xbsd_dkcksum (struct xbsd_disklabel *lp)
{
register u_short *start, *end;
register u_short sum = 0;
@@ -599,17 +609,17 @@ bsd_dkcksum (struct disklabel *lp)
}
static int
-bsd_initlabel (struct partition *p, struct disklabel *d, int pindex)
+xbsd_initlabel (struct partition *p, struct xbsd_disklabel *d, int pindex)
{
struct hd_geometry geometry;
- struct bsd_partition *pp;
+ struct xbsd_partition *pp;
if (ioctl (fd, HDIO_GETGEO, &geometry) == -1)
{
perror ("ioctl");
return 0;
}
- bzero (d, sizeof (struct disklabel));
+ bzero (d, sizeof (struct xbsd_disklabel));
d -> d_magic = BSD_DISKMAGIC;
@@ -667,7 +677,7 @@ bsd_initlabel (struct partition *p, struct disklabel *d, int pindex)
}
static int
-bsd_readlabel (struct partition *p, struct disklabel *d)
+xbsd_readlabel (struct partition *p, struct xbsd_disklabel *d)
{
int t, sector;
@@ -683,7 +693,7 @@ bsd_readlabel (struct partition *p, struct disklabel *d)
fatal (unable_to_read);
bcopy (&buffer[BSD_LABELSECTOR * SECTOR_SIZE + BSD_LABELOFFSET],
- d, sizeof (struct disklabel));
+ d, sizeof (struct xbsd_disklabel));
for (t = d -> d_npartitions; t < BSD_MAXPARTITIONS; t++)
{
@@ -701,7 +711,7 @@ bsd_readlabel (struct partition *p, struct disklabel *d)
}
static int
-bsd_writelabel (struct partition *p, struct disklabel *d)
+xbsd_writelabel (struct partition *p, struct xbsd_disklabel *d)
{
int sector;
@@ -712,13 +722,13 @@ bsd_writelabel (struct partition *p, struct disklabel *d)
#endif
d -> d_checksum = 0;
- d -> d_checksum = bsd_dkcksum (d);
+ d -> d_checksum = xbsd_dkcksum (d);
/* This is necessary if we want to write the bootstrap later,
otherwise we'd write the old disklabel with the bootstrap.
*/
bcopy (d, &buffer[BSD_LABELSECTOR * SECTOR_SIZE + BSD_LABELOFFSET],
- sizeof (struct disklabel));
+ sizeof (struct xbsd_disklabel));
#if defined (__alpha__) && BSD_LABELSECTOR == 0
alpha_bootblock_checksum (buffer);
@@ -729,7 +739,7 @@ bsd_writelabel (struct partition *p, struct disklabel *d)
#else
if (ext2_llseek (fd, sector * SECTOR_SIZE + BSD_LABELOFFSET, SEEK_SET) == -1)
fatal (unable_to_seek);
- if (sizeof (struct disklabel) != write (fd, d, sizeof (struct disklabel)))
+ if (sizeof (struct xbsd_disklabel) != write (fd, d, sizeof (struct xbsd_disklabel)))
fatal (unable_to_write);
#endif
@@ -748,7 +758,7 @@ sync_disks (void)
#if defined (i386)
static int
-bsd_translate_fstype (int linux_type)
+xbsd_translate_fstype (int linux_type)
{
switch (linux_type)
{
@@ -767,24 +777,23 @@ bsd_translate_fstype (int linux_type)
}
static void
-bsd_link_part (void)
+xbsd_link_part (void)
{
int k, i;
k = get_partition (1, partitions);
- if (!bsd_check_new_partition (&i))
+ if (!xbsd_check_new_partition (&i))
return;
- bsd_dlabel.d_partitions[i].p_size = part_table[k] -> nr_sects;
- bsd_dlabel.d_partitions[i].p_offset = part_table[k] -> start_sect;
- bsd_dlabel.d_partitions[i].p_fstype =
- bsd_translate_fstype (part_table[k] -> sys_ind);
+ xbsd_dlabel.d_partitions[i].p_size = part_table[k] -> nr_sects;
+ xbsd_dlabel.d_partitions[i].p_offset = part_table[k] -> start_sect;
+ xbsd_dlabel.d_partitions[i].p_fstype =
+ xbsd_translate_fstype (part_table[k] -> sys_ind);
}
#endif
#if defined (__alpha__)
-typedef unsigned long long u_int64_t;
void
alpha_bootblock_checksum (char *boot)