From bc95504ca6db64eb88573f1f0c2702dbe701f874 Mon Sep 17 00:00:00 2001 From: Mathias Kaufmann Date: Sat, 21 Jan 2017 15:07:46 +0100 Subject: [PATCH] Added DHCP Architecture Type 9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit By supporting Type 9 ( „EFI x86-64“ ), pixiecore can boot VMware (Fusion) EFI-Type Machines. The const for FirmwareEFI64 has been renamed to FirmwareEFIBC ( see RFC-4578, Section 2.1 ) and FirmwareEFI64 is assign to type 9 and uses the same ipxe blob as FirmwareEFIBC. Signed-off-by: Mathias Kaufmann --- cmd/pixiecore-apache2/main.go | 2 +- pixiecore/cli/cli.go | 1 + pixiecore/pixiecore.go | 4 +++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/cmd/pixiecore-apache2/main.go b/cmd/pixiecore-apache2/main.go index 41a0c98..61c2a83 100644 --- a/cmd/pixiecore-apache2/main.go +++ b/cmd/pixiecore-apache2/main.go @@ -4,7 +4,7 @@ // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // -// http://www.apache.org/licenses/LICENSE-2.0 +// http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, diff --git a/pixiecore/cli/cli.go b/pixiecore/cli/cli.go index d0149eb..1a71b19 100644 --- a/pixiecore/cli/cli.go +++ b/pixiecore/cli/cli.go @@ -157,6 +157,7 @@ func serverFromFlags(cmd *cobra.Command) *pixiecore.Server { } if ipxeEFI64 != "" { ret.Ipxe[pixiecore.FirmwareEFI64] = mustFile(ipxeEFI64) + ret.Ipxe[pixiecore.FirmwareEFIBC] = mustFile(ipxeEFI64) } if timestamps { diff --git a/pixiecore/pixiecore.go b/pixiecore/pixiecore.go index 1ab9360..72b116c 100644 --- a/pixiecore/pixiecore.go +++ b/pixiecore/pixiecore.go @@ -125,12 +125,14 @@ const ( // Note the values match the values from RFC4578. FirmwareX86PC Firmware = 0 // "Classic" x86 BIOS with PXE/UNDI support. FirmwareEFI32 = 6 // 32-bit x86 processor running EFI - FirmwareEFI64 = 7 // 64-bit x86 processor running EFI + FirmwareEFIBC = 7 // 64-bit x86 processor running EFI + FirmwareEFI64 = 9 // 64-bit x86 processor running EFI ) var fwToArch = map[Firmware]Architecture{ FirmwareX86PC: ArchIA32, FirmwareEFI32: ArchIA32, + FirmwareEFIBC: ArchX64, FirmwareEFI64: ArchX64, }