The boot loader is a FreeBSD a.out binary for x86, not a VAX binary.
Rather than writing out a MID of '0', write a MID of 0x86 (aka MID_I386) so that file gets it right. This is a nop for boot2. It just checks the MAGIC part of the field, ignoring the MID. boot2 is the only thing that loads this file, and only on x86 so the MID_i386 is always the right value (the rest of the code is already x86 specific). Reviewed by: bde@, jhb@ MFC after: 8.0 is out the door :)
This commit is contained in:
parent
b3bfcfd0d9
commit
9f85041125
@ -407,7 +407,7 @@ puthdr(int fd, struct hdr *hdr)
|
||||
switch (hdr->fmt) {
|
||||
case F_AOUT:
|
||||
memset(&ex, 0, sizeof(ex));
|
||||
N_SETMAGIC(ex, ZMAGIC, MID_ZERO, 0);
|
||||
N_SETMAGIC(ex, ZMAGIC, MID_I386, 0);
|
||||
hdr->text = N_ALIGN(ex, hdr->text);
|
||||
ex.a_text = htole32(hdr->text);
|
||||
hdr->data = N_ALIGN(ex, hdr->data);
|
||||
|
Loading…
Reference in New Issue
Block a user