disklabel64
static void makelabel(const char *, const char *, struct disklabel64 *);
static int writelabel(int, struct disklabel64 *);
static int expandlabel(int f, struct disklabel64 *lp, int *wbackp);
static void display(FILE *, const struct disklabel64 *);
static int edit(struct disklabel64 *, int);
getasciipartspec(char *tp, struct disklabel64 *lp, int part,
static int getasciilabel(FILE *, struct disklabel64 *);
static int getasciipartspec(char *, struct disklabel64 *, int, int, uint32_t);
static int getasciipartuuid(char *, struct disklabel64 *, int, int, uint32_t);
static int checklabel(struct disklabel64 *);
static struct disklabel64 *getvirginlabel(void);
static struct disklabel64 *readlabel(int);
static struct disklabel64 *makebootarea(int);
getasciipartuuid(char *tp, struct disklabel64 *lp, int part,
checklabel(struct disklabel64 *lp)
off = offsetof(struct disklabel64, d_partitions[lp->d_npartitions]);
static struct disklabel64 lab;
expandlabel(int f, struct disklabel64 *lp, int *wbackp)
static struct disklabel64 dlab;
static struct disklabel64 *
struct disklabel64 *dl = &dlab;
struct disklabel64 *lp;
sizeof(lab) - offsetof(struct disklabel64, d_magic));
sizeof(lab) - offsetof(struct disklabel64, d_magic));
struct disklabel64 tlab;
sizeof(tlab) - offsetof(struct disklabel64, d_magic));
makelabel(const char *type, const char *name, struct disklabel64 *lp)
struct disklabel64 *dp;
writelabel(int f, struct disklabel64 *lp)
struct disklabel64 *blp;
lpsize = offsetof(struct disklabel64, d_partitions[lp->d_npartitions]);
lpcrcsize = lpsize - offsetof(struct disklabel64, d_magic);
offsetof(struct disklabel64, d_magic));
static struct disklabel64 *
struct disklabel64 *lp;
lpcrcsize = offsetof(struct disklabel64,
offsetof(struct disklabel64, d_magic);
static struct disklabel64 *
struct disklabel64 *lp;
rsize = roundup2(sizeof(struct disklabel64), secsize);
boot1size = offsetof(struct disklabel64, d_magic);
display(FILE *f, const struct disklabel64 *lp)
edit(struct disklabel64 *lp, int f)
struct disklabel64 label;
getasciilabel(FILE *f, struct disklabel64 *lp)
migrate_disklabel64(const struct disklabel64 *dl, off_t start,
struct disklabel64 *dl64 = NULL;
read_disklabel64(int fd, off_t start, struct disklabel64 **dlp)
struct disklabel64 *dl;
struct disklabel64 *label;
struct disklabel64 *label;
struct disklabel64 *d;
if (drvread(sec, dsk.start, (sizeof(struct disklabel64) + 511) / 512))
struct disklabel64 *lp64 = NULL;
lp64 =(struct disklabel64 *)(&buf[0]);
struct disklabel64 *lp64;
struct disklabel64 od_disklabel64;
struct disklabel64 *dlp;
dlp = (struct disklabel64 *)bp->b_data;
dlpcrcsize = offsetof(struct disklabel64,
offsetof(struct disklabel64, d_magic);
struct disklabel64 *olp, *nlp;
nlpcrcsize = offsetof(struct disklabel64,
offsetof(struct disklabel64, d_magic);
struct disklabel64 *lp;
struct disklabel64 *dlp;
sizeof(*lp) - offsetof(struct disklabel64, d_magic));
struct disklabel64 *lp;
lpcrcsize = offsetof(struct disklabel64,
offsetof(struct disklabel64, d_magic);
struct disklabel64 *lp = lpx.lab64;
ressize = offsetof(struct disklabel64, d_partitions[RESPARTITIONS64]);
lpcrcsize = offsetof(struct disklabel64,
offsetof(struct disklabel64, d_magic);
struct disklabel64 *lp = sp->ds_label.lab64;
.labelsize = sizeof(struct disklabel64),
struct disklabel64;
struct disklabel64 *lab64;
#define DIOCGDINFO64 _IOR('d', 101, struct disklabel64)
#define DIOCSDINFO64 _IOW('d', 102, struct disklabel64)
#define DIOCWDINFO64 _IOW('d', 103, struct disklabel64)
#define DIOCGDVIRGIN64 _IOR('d', 105, struct disklabel64)