From 9f8504112576df229d47f9542a9fed94f2620d7e Mon Sep 17 00:00:00 2001 From: Warner Losh Date: Thu, 10 Sep 2009 00:47:32 +0000 Subject: [PATCH] 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 :) --- usr.sbin/btxld/btxld.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/usr.sbin/btxld/btxld.c b/usr.sbin/btxld/btxld.c index 43fa4a9a6806..1102b5c0f271 100644 --- a/usr.sbin/btxld/btxld.c +++ b/usr.sbin/btxld/btxld.c @@ -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);