bootblock
filecore_checksum(u_char *bootblock)
byte0 = bootblock[0];
sum += bootblock[i];
accum_diff |= bootblock[i] ^ byte0;
accum_diff |= bootblock[i] ^ byte0;
writefsinfo(int dosfs, struct bootblock *boot)
readboot(int dosfs, struct bootblock *boot)
struct bootblock boot;
static int readDosDirSection(int, struct bootblock *, struct fatEntry *,
resetDosDirSection(struct bootblock *boot, struct fatEntry *fat)
delete(int f, struct bootblock *boot, struct fatEntry *fat, cl_t startcl,
removede(int f, struct bootblock *boot, struct fatEntry *fat, u_char *start,
checksize(struct bootblock *boot, struct fatEntry *fat, u_char *p,
readDosDirSection(int f, struct bootblock *boot, struct fatEntry *fat,
handleDirTree(int dosfs, struct bootblock *boot, struct fatEntry *fat)
reconnect(int dosfs, struct bootblock *boot, struct fatEntry *fat, cl_t head)
static int delete(int, struct bootblock *, struct fatEntry *, cl_t, int,
static int removede(int, struct bootblock *, struct fatEntry *, u_char *,
static int checksize(struct bootblock *, struct fatEntry *, u_char *,
int writefat(int, struct bootblock *, struct fatEntry *, int);
int resetDosDirSection(struct bootblock *, struct fatEntry *);
int handleDirTree(int, struct bootblock *, struct fatEntry *);
int checklost(int, struct bootblock *, struct fatEntry *);
int reconnect(int, struct bootblock *, struct fatEntry *, cl_t);
void clearchain(struct bootblock *, struct fatEntry *, cl_t);
int readboot(int, struct bootblock *);
int writefsinfo(int, struct bootblock *);
int readfat(int, struct bootblock *, u_int, struct fatEntry **);
int comparefat(struct bootblock *, struct fatEntry *, struct fatEntry *, u_int);
int checkfat(struct bootblock *, struct fatEntry *);
readfat(int fs, struct bootblock *boot, u_int no, struct fatEntry **fp)
comparefat(struct bootblock *boot, struct fatEntry *first,
clearchain(struct bootblock *boot, struct fatEntry *fat, cl_t head)
tryclear(struct bootblock *boot, struct fatEntry *fat, cl_t head, cl_t *truncp)
checkfat(struct bootblock *boot, struct fatEntry *fat)
static int checkclnum(struct bootblock *, u_int, cl_t, cl_t *);
static int tryclear(struct bootblock *, struct fatEntry *, cl_t, cl_t *);
static int _readfat(int, struct bootblock *, u_int, u_char **);
writefat(int fs, struct bootblock *boot, struct fatEntry *fat, int correct_fat)
checkclnum(struct bootblock *boot, u_int fat, cl_t cl, cl_t *next)
checklost(int dosfs, struct bootblock *boot, struct fatEntry *fat)
_readfat(int fs, struct bootblock *boot, u_int no, u_char **buffer)
filecore_checksum(u_char *bootblock)
byte0 = bootblock[0];
sum += bootblock[i];
accum_diff |= bootblock[i] ^ byte0;
accum_diff |= bootblock[i] ^ byte0;
filecore_checksum(u_char *bootblock)
byte0 = bootblock[0];
sum += bootblock[i];
accum_diff |= bootblock[i] ^ byte0;
accum_diff |= bootblock[i] ^ byte0;
struct bootblock *bb = (struct bootblock *)bp->b_data;
struct bootblock *bb;
bb = (struct bootblock *)bp->b_data;
struct bootblock *bb;
struct bootblock bb;
mkbootblock(struct bootblock *bb, char *xxb, char *bxx,
static void mkbootblock(struct bootblock *, char *,
static struct bootblock bootarea;
if (read(fd, bootblock, blocksize) != blocksize)
if (strncmp((const char *)bootblock, "X68SCSI1", 8) != 0)
lp = (struct disklabel *) &bootblock[LABELBYTEOFFSET];
if (read(fd, bootblock + bboffset, bootprogsize) != bootprogsize)
memcpy(bootblock + LABELBYTEOFFSET, &label, sizeof(label));
if (write(fd, bootblock, bootprogsize) != bootprogsize) {
u_int8_t bootblock[MAXBBSIZE];
u_char *bootblock = bb;
byte0 = bootblock[0];
sum += bootblock[i];
accum_diff |= bootblock[i] ^ byte0;
accum_diff |= bootblock[i] ^ byte0;
if (accum_diff == 0 || sum != bootblock[511])
filecore_checksum(u_char *bootblock)
byte0 = bootblock[0];
sum += bootblock[i];
accum_diff |= bootblock[i] ^ byte0;
accum_diff |= bootblock[i] ^ byte0;