summaryrefslogtreecommitdiff
path: root/sys/arch/amd64/stand/pxeboot/devopen.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch/amd64/stand/pxeboot/devopen.c')
-rw-r--r--sys/arch/amd64/stand/pxeboot/devopen.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/sys/arch/amd64/stand/pxeboot/devopen.c b/sys/arch/amd64/stand/pxeboot/devopen.c
index ac30c953c30..f6ba14639ac 100644
--- a/sys/arch/amd64/stand/pxeboot/devopen.c
+++ b/sys/arch/amd64/stand/pxeboot/devopen.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: devopen.c,v 1.3 2007/06/27 20:29:37 mk Exp $ */
+/* $OpenBSD: devopen.c,v 1.4 2007/07/27 17:48:01 tom Exp $ */
/*
* Copyright (c) 2004 Tom Cosgrove
@@ -38,6 +38,8 @@ extern char *fs_name[];
extern int nfsname;
extern struct devsw netsw[];
+extern char *bootmac; /* Gets passed to kernel for network boot */
+
/* XXX use slot for 'rd' for 'hd' pseudo-device */
const char bdevs[][4] = {
"wd", "", "fd", "", "sd", "st", "cd", "mcd",
@@ -96,6 +98,16 @@ devopen(struct open_file *f, const char *fname, char **file)
}
}
+ /*
+ * Assume that any network filesystems would be caught by the
+ * code above, so that the next phase of devopen() is only for
+ * local devices.
+ *
+ * Clear bootmac, to signal that we loaded this file from a
+ * non-network device.
+ */
+ bootmac = NULL;
+
for (i = 0; i < ndevs && rc != 0; dp++, i++) {
#ifdef DEBUG
if (debug)