Module Name: src
Committed By: mlelstv
Date: Fri Jun 5 05:03:21 UTC 2015
Modified Files:
src/usr.sbin/installboot: Makefile installboot.c
Log Message:
Support wedge names.
To generate a diff of this commit:
cvs rdiff -u -r1.48 -r1.49 src/usr.sbin/installboot/Makefile
cvs rdiff -u -r1.36 -r1.37 src/usr.sbin/installboot/installboot.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/usr.sbin/installboot/Makefile
diff -u src/usr.sbin/installboot/Makefile:1.48 src/usr.sbin/installboot/Makefile:1.49
--- src/usr.sbin/installboot/Makefile:1.48 Mon Feb 24 07:23:44 2014
+++ src/usr.sbin/installboot/Makefile Fri Jun 5 05:03:21 2015
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.48 2014/02/24 07:23:44 skrll Exp $
+# $NetBSD: Makefile,v 1.49 2015/06/05 05:03:21 mlelstv Exp $
#
.include <bsd.own.mk>
@@ -7,7 +7,6 @@ PROG= installboot
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
@@ -49,4 +48,7 @@ COPTS.${f}.c+= -Wno-pointer-sign
.endfor
.endif
+LDADD+= -lutil
+DPADD+= ${LIBUTIL}
+
.include <bsd.prog.mk>
Index: src/usr.sbin/installboot/installboot.c
diff -u src/usr.sbin/installboot/installboot.c:1.36 src/usr.sbin/installboot/installboot.c:1.37
--- src/usr.sbin/installboot/installboot.c:1.36 Thu Nov 3 20:46:41 2011
+++ src/usr.sbin/installboot/installboot.c Fri Jun 5 05:03:21 2015
@@ -1,4 +1,4 @@
-/* $NetBSD: installboot.c,v 1.36 2011/11/03 20:46:41 martin Exp $ */
+/* $NetBSD: installboot.c,v 1.37 2015/06/05 05:03:21 mlelstv 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.37 2015/06/05 05:03:21 mlelstv Exp $");
#endif /* !__lint */
+#include <sys/param.h>
#include <sys/ioctl.h>
#include <sys/utsname.h>
@@ -50,6 +51,7 @@ __RCSID("$NetBSD: installboot.c,v 1.36 2
#include <stddef.h>
#include <string.h>
#include <unistd.h>
+#include <util.h>
#include "installboot.h"
@@ -105,6 +107,9 @@ main(int argc, char *argv[])
char *p;
const char *op;
ib_flags unsupported_flags;
+ char specname[MAXPATHLEN];
+ char rawname[MAXPATHLEN];
+ const char *special, *raw;
setprogname(argv[0]);
params = &installboot_params;
@@ -229,7 +234,12 @@ main(int argc, char *argv[])
params->stage2 = argv[2];
}
- params->filesystem = argv[0];
+ special = getfsspecname(specname, sizeof(specname), argv[0]);
+ raw = getdiskrawname(rawname, sizeof(rawname), special);
+ if (raw != NULL)
+ special = raw;
+
+ params->filesystem = special;
if (params->flags & IB_NOWRITE) {
op = "only";
mode = O_RDONLY;