From 68bea10bbfbd5e9ff158ab163c15d8982620d0d3 Mon Sep 17 00:00:00 2001 From: Simon Kelley Date: Wed, 11 May 2016 22:15:06 +0100 Subject: [PATCH] Fix error in PXE arch names and add ARM32 and ARM64. --- CHANGELOG | 10 +++++++++- man/dnsmasq.8 | 2 +- src/option.c | 3 ++- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index f3220d8..7012918 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -74,7 +74,15 @@ version 2.76 To avoid filling logs in configurations which define many upstream nameservers, don't log more that 30 servers. The number to be logged can be changed as SERVERS_LOGGED - in src/config.h. + in src/config.h. + + Swap the values if BC_EFI and x86-64_EFI in --pxe-service. + These were previously wrong due to an error in RFC 4578. + If you're using BC_EFI to boot 64-bit EFI machines, you + will need to update your config. + + Add ARM32_EFI and ARM64_EFI as valid architectures in + --pxe-service. version 2.75 diff --git a/man/dnsmasq.8 b/man/dnsmasq.8 index dacd9ce..68d77a2 100644 --- a/man/dnsmasq.8 +++ b/man/dnsmasq.8 @@ -1358,7 +1358,7 @@ functions when supported by a suitable DHCP server. This specifies a boot option which may appear in a PXE boot menu. is client system type, only services of the correct type will appear in a menu. The known types are x86PC, PC98, IA64_EFI, Alpha, Arc_x86, -Intel_Lean_Client, IA32_EFI, BC_EFI, Xscale_EFI and X86-64_EFI; an +Intel_Lean_Client, IA32_EFI, X86-64_EFI, Xscale_EFI, BC_EFI, ARM32_EFI and ARM64_EFI; an integer may be used for other types. The parameter after the menu text may be a file name, in which case dnsmasq acts as a boot server and directs the PXE client to download the file by TFTP, diff --git a/src/option.c b/src/option.c index 0b35500..d8c57d6 100644 --- a/src/option.c +++ b/src/option.c @@ -3298,7 +3298,8 @@ static int one_opt(int option, char *arg, char *errstr, char *gen_err, int comma { struct pxe_service *new = opt_malloc(sizeof(struct pxe_service)); char *CSA[] = { "x86PC", "PC98", "IA64_EFI", "Alpha", "Arc_x86", "Intel_Lean_Client", - "IA32_EFI", "BC_EFI", "Xscale_EFI", "x86-64_EFI", NULL }; + "IA32_EFI", "x86-64_EFI", "Xscale_EFI", "BC_EFI", + "ARM32_EFI", "ARM64_EFI", NULL }; static int boottype = 32768; new->netid = NULL;