Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/netbsd-7]: src/usr.sbin/installboot Pull up following revision(s) (reque...
details: https://anonhg.NetBSD.org/src/rev/baf959797794
branches: netbsd-7
changeset: 799471:baf959797794
user: snj <snj%NetBSD.org@localhost>
date: Thu Jul 16 21:36:59 2015 +0000
description:
Pull up following revision(s) (requested by mlelstv in ticket #844):
usr.sbin/installboot/Makefile: revisions 1.49, 1.50
usr.sbin/installboot/installboot.c: revisions 1.37, 1.38
usr.sbin/installboot/arch/amiga.c: revision 1.9
Support wedge names.
--
Can't use getfsspecname (and thus wedge names) while building tools.
--
Linking against libutil is not appropiate for tools.
--
Compute bootloader checksum correctly also on little endian systems.
diffstat:
usr.sbin/installboot/Makefile | 6 ++++--
usr.sbin/installboot/arch/amiga.c | 10 +++++-----
usr.sbin/installboot/installboot.c | 22 ++++++++++++++++++++--
3 files changed, 29 insertions(+), 9 deletions(-)
diffs (125 lines):
diff -r eb76e8375821 -r baf959797794 usr.sbin/installboot/Makefile
--- a/usr.sbin/installboot/Makefile Thu Jul 16 18:29:32 2015 +0000
+++ b/usr.sbin/installboot/Makefile Thu Jul 16 21:36:59 2015 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.48 2014/02/24 07:23:44 skrll Exp $
+# $NetBSD: Makefile,v 1.48.4.1 2015/07/16 21:36:59 snj Exp $
#
.include <bsd.own.mk>
@@ -7,7 +7,6 @@
MAN= installboot.8
SRCS= installboot.c sum.c machines.c fstypes.c
-
ARCH_XLAT= amd64-i386.c news68k-news.c newsmips-news.c
ARCH_XLAT+= sun2-sun68k.c sun3-sun68k.c
@@ -47,6 +46,9 @@
.for f in i386 macppc
COPTS.${f}.c+= -Wno-pointer-sign
.endfor
+
+LDADD+= -lutil
+DPADD+= ${LIBUTIL}
.endif
.include <bsd.prog.mk>
diff -r eb76e8375821 -r baf959797794 usr.sbin/installboot/arch/amiga.c
--- a/usr.sbin/installboot/arch/amiga.c Thu Jul 16 18:29:32 2015 +0000
+++ b/usr.sbin/installboot/arch/amiga.c Thu Jul 16 21:36:59 2015 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: amiga.c,v 1.8 2013/06/14 03:54:43 msaitoh Exp $ */
+/* $NetBSD: amiga.c,v 1.8.6.1 2015/07/16 21:36:59 snj Exp $ */
/*-
* Copyright (c) 1999, 2002 The NetBSD Foundation, Inc.
@@ -38,7 +38,7 @@
#include <sys/cdefs.h>
#if !defined(__lint)
-__RCSID("$NetBSD: amiga.c,v 1.8 2013/06/14 03:54:43 msaitoh Exp $");
+__RCSID("$NetBSD: amiga.c,v 1.8.6.1 2015/07/16 21:36:59 snj Exp $");
#endif /* !__lint */
#include <sys/param.h>
@@ -126,8 +126,8 @@
}
(void)strncpy(dline, params->command, CMDLN_LEN-1);
- block[1] = 0;
- block[1] = 0xffffffff - chksum(block, sumlen);
+ block[1] = htobe32(0);
+ block[1] = htobe32(0xffffffff - chksum(block, sumlen));
}
if (params->flags & IB_NOWRITE) {
@@ -164,7 +164,7 @@
for (i=0; i<size; i++) {
lastsum = sum;
- sum += htobe32(block[i]);
+ sum += be32toh(block[i]);
if (sum < lastsum)
++sum;
}
diff -r eb76e8375821 -r baf959797794 usr.sbin/installboot/installboot.c
--- a/usr.sbin/installboot/installboot.c Thu Jul 16 18:29:32 2015 +0000
+++ b/usr.sbin/installboot/installboot.c Thu Jul 16 21:36:59 2015 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: installboot.c,v 1.36 2011/11/03 20:46:41 martin Exp $ */
+/* $NetBSD: installboot.c,v 1.36.18.1 2015/07/16 21:36:59 snj Exp $ */
/*-
* Copyright (c) 2002 The NetBSD Foundation, Inc.
@@ -35,9 +35,10 @@
#include <sys/cdefs.h>
#if !defined(__lint)
-__RCSID("$NetBSD: installboot.c,v 1.36 2011/11/03 20:46:41 martin Exp $");
+__RCSID("$NetBSD: installboot.c,v 1.36.18.1 2015/07/16 21:36:59 snj Exp $");
#endif /* !__lint */
+#include <sys/param.h>
#include <sys/ioctl.h>
#include <sys/utsname.h>
@@ -50,6 +51,9 @@
#include <stddef.h>
#include <string.h>
#include <unistd.h>
+#if !HAVE_NBTOOL_CONFIG_H
+#include <util.h>
+#endif
#include "installboot.h"
@@ -105,6 +109,11 @@
char *p;
const char *op;
ib_flags unsupported_flags;
+#if !HAVE_NBTOOL_CONFIG_H
+ char specname[MAXPATHLEN];
+ char rawname[MAXPATHLEN];
+ const char *special, *raw;
+#endif
setprogname(argv[0]);
params = &installboot_params;
@@ -229,7 +238,16 @@
params->stage2 = argv[2];
}
+#if !HAVE_NBTOOL_CONFIG_H
+ special = getfsspecname(specname, sizeof(specname), argv[0]);
+ raw = getdiskrawname(rawname, sizeof(rawname), special);
+ if (raw != NULL)
+ special = raw;
+ params->filesystem = special;
+#else
params->filesystem = argv[0];
+#endif
+
if (params->flags & IB_NOWRITE) {
op = "only";
mode = O_RDONLY;
Home |
Main Index |
Thread Index |
Old Index