[bootserver] Add support for --bootloader.
Change-Id: Ib12421ae7d1237fbe0c5b373c27f64180f5408f8
diff --git a/botanist/boot.go b/botanist/boot.go
index 5fa3882..84d4afc 100644
--- a/botanist/boot.go
+++ b/botanist/boot.go
@@ -32,30 +32,32 @@
const (
// Special image names recognized by fuchsia's netsvc.
+ authorizedKeysNetsvcName = "<<image>>authorized_keys"
+ bootloaderNetsvcName = "<<image>>bootloader.img"
cmdlineNetsvcName = "<<netboot>>cmdline"
- kernelNetsvcName = "<<netboot>>kernel.bin"
- fvmNetsvcName = "<<image>>sparse.fvm"
efiNetsvcName = "<<image>>efi.img"
+ fvmNetsvcName = "<<image>>sparse.fvm"
kerncNetsvcName = "<<image>>kernc.img"
+ kernelNetsvcName = "<<netboot>>kernel.bin"
+ vbmetaANetsvcName = "<<image>>vbmetaa.img"
+ vbmetaBNetsvcName = "<<image>>vbmetab.img"
zirconANetsvcName = "<<image>>zircona.img"
zirconBNetsvcName = "<<image>>zirconb.img"
zirconRNetsvcName = "<<image>>zirconr.img"
- vbmetaANetsvcName = "<<image>>vbmetaa.img"
- vbmetaBNetsvcName = "<<image>>vbmetab.img"
- authorizedKeysNetsvcName = "<<image>>authorized_keys"
)
// Maps bootserver argument to a corresponding netsvc name.
var bootserverArgToName = map[string]string{
- "--fvm": fvmNetsvcName,
- "--efi": efiNetsvcName,
- "--kernc": kerncNetsvcName,
- "--zircona": zirconANetsvcName,
- "--zirconb": zirconBNetsvcName,
- "--zirconr": zirconRNetsvcName,
- "--vbmetaa": vbmetaANetsvcName,
- "--vbmetab": vbmetaBNetsvcName,
- "--boot": kernelNetsvcName,
+ "--boot": kernelNetsvcName,
+ "--bootloader": bootloaderNetsvcName,
+ "--efi": efiNetsvcName,
+ "--fvm": fvmNetsvcName,
+ "--kernc": kerncNetsvcName,
+ "--vbmetaa": vbmetaANetsvcName,
+ "--vbmetab": vbmetaBNetsvcName,
+ "--zircona": zirconANetsvcName,
+ "--zirconb": zirconBNetsvcName,
+ "--zirconr": zirconRNetsvcName,
}
// Maps netsvc name to the index at which the corresponding file should be transferred if
@@ -64,15 +66,16 @@
var transferOrder = map[string]int{
cmdlineNetsvcName: 1,
fvmNetsvcName: 2,
- efiNetsvcName: 3,
- kerncNetsvcName: 4,
- zirconANetsvcName: 5,
- zirconBNetsvcName: 6,
- zirconRNetsvcName: 7,
- vbmetaANetsvcName: 8,
- vbmetaBNetsvcName: 9,
- authorizedKeysNetsvcName: 10,
- kernelNetsvcName: 11,
+ bootloaderNetsvcName: 3,
+ efiNetsvcName: 4,
+ kerncNetsvcName: 5,
+ zirconANetsvcName: 6,
+ zirconBNetsvcName: 7,
+ zirconRNetsvcName: 8,
+ vbmetaANetsvcName: 9,
+ vbmetaBNetsvcName: 10,
+ authorizedKeysNetsvcName: 11,
+ kernelNetsvcName: 12,
}
// Boot prepares and boots a device at the given IP address. Depending on bootMode, the