Discussion:
[Dnsmasq-discuss] Dnsmasq-2.77 pxelinux.0 question
Steven Shiau
2017-06-05 11:38:15 UTC
Permalink
Hi Simon,

I have a question about using dnsmasq 2.77 as the PXE booting service.
This is running on Debian Sid amd64 version, the package is from Debian
repository:

***@debian:~# dpkg -l dnsmasq
Desired=Unknown/Install/Remove/Purge/Hold
|
Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-======================-================-================-=================================================
ii dnsmasq 2.77-1 all Small
caching DNS proxy and DHCP/TFTP server

***@debian:~# dpkg -l dnsmasq-base
Desired=Unknown/Install/Remove/Purge/Hold
|
Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-======================-================-================-=================================================
ii dnsmasq-base 2.77-1 amd64 Small
caching DNS proxy and DHCP/TFTP server

I have configured dnsmasq.conf as:
***@debian:~# cat /etc/dnsmasq.conf
log-dhcp
dhcp-no-override
enable-tftp
tftp-root=/tftpboot/nbi_img
dhcp-range=192.168.120.3,proxy

## PXEClient:Arch:00000
pxe-service=X86PC, "Boot BIOS PXE", pxelinux.0

## PXEClient:Arch:00007
pxe-service=BC_EFI, "Boot UEFI BC", bootx64.efi

## PXEClient:Arch:00009
pxe-service=X86-64_EFI, "Boot UEFI X86-64", bootx64.efi

pxe-prompt="Booting PXE Client", 1

However, when I boot the PXE client, it fails and the error messages is
"PXE-T01: file /tftpboot/nbi_img/pxelinux/pxelinux.0.0" not found"
as attached.

I remember in dnsmasq <= 2.75, it used to append ".0" to the PXE
basename file. However, for dnsmasq 2.76, the PXE basename is not
appended with ".0" if I use basename as "pxelinux.0".

I did not see any related description about this change in the changelog
for dnsmasq-2.77:
http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2017q2/011542.html

Is this just a regression, or is it meant to revert to the old way? Or
where am I wrong?
Thank you very much.

Steven
--
Steven Shiau <steven _at_ stevenshiau org>
Public Key Server PGP Key ID: 4096R/47CF935C
Fingerprint: 0240 1FEB 695D 7112 62F0 8796 11C1 12DA 47CF 935C
Chris Novakovic
2017-06-05 21:30:13 UTC
Permalink
Post by Steven Shiau
I have a question about using dnsmasq 2.77 as the PXE booting service.
This is running on Debian Sid amd64 version, the package is from Debian
Desired=Unknown/Install/Remove/Purge/Hold
|
Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-======================-================-================-=================================================
ii dnsmasq 2.77-1 all Small
caching DNS proxy and DHCP/TFTP server
Desired=Unknown/Install/Remove/Purge/Hold
|
Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-======================-================-================-=================================================
ii dnsmasq-base 2.77-1 amd64 Small
caching DNS proxy and DHCP/TFTP server
log-dhcp
dhcp-no-override
enable-tftp
tftp-root=/tftpboot/nbi_img
dhcp-range=192.168.120.3,proxy
## PXEClient:Arch:00000
pxe-service=X86PC, "Boot BIOS PXE", pxelinux.0
## PXEClient:Arch:00007
pxe-service=BC_EFI, "Boot UEFI BC", bootx64.efi
## PXEClient:Arch:00009
pxe-service=X86-64_EFI, "Boot UEFI X86-64", bootx64.efi
pxe-prompt="Booting PXE Client", 1
However, when I boot the PXE client, it fails and the error messages is
"PXE-T01: file /tftpboot/nbi_img/pxelinux/pxelinux.0.0" not found"
as attached.
I remember in dnsmasq <= 2.75, it used to append ".0" to the PXE
basename file. However, for dnsmasq 2.76, the PXE basename is not
appended with ".0" if I use basename as "pxelinux.0".
I did not see any related description about this change in the changelog
http://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2017q2/011542.html
Is this just a regression, or is it meant to revert to the old way? Or
where am I wrong?
This appears to be a regression that was introduced in commit f77700aa,
right before the release of 2.77. The logic of appending ".<layer>" was
inverted by that commit. I'm just testing a quick patch I wrote that
restores the expected behaviour, then I'll post it to the list...
Steven Shiau
2017-06-06 13:17:45 UTC
Permalink
Post by Chris Novakovic
This appears to be a regression that was introduced in commit f77700aa,
right before the release of 2.77. The logic of appending ".<layer>" was
inverted by that commit. I'm just testing a quick patch I wrote that
restores the expected behaviour, then I'll post it to the list...
Hi Chris,
Got it. I confirmed your patch works. Thank you very much.

Steven
--
Steven Shiau <steven _at_ stevenshiau org>
Public Key Server PGP Key ID: 4096R/47CF935C
Fingerprint: 0240 1FEB 695D 7112 62F0 8796 11C1 12DA 47CF 935C
Simon Kelley
2017-06-06 22:06:59 UTC
Permalink
Ugh. Apologies for letting that one through. How annoying.

I've committed Chris's patch into git.

I'll leave it a week or two in case anything similar emerges, and then
push another release.


Cheers,

Simon.
Post by Steven Shiau
Post by Chris Novakovic
This appears to be a regression that was introduced in commit f77700aa,
right before the release of 2.77. The logic of appending ".<layer>" was
inverted by that commit. I'm just testing a quick patch I wrote that
restores the expected behaviour, then I'll post it to the list...
Hi Chris,
Got it. I confirmed your patch works. Thank you very much.
Steven
Steven Shiau
2017-06-07 12:39:41 UTC
Permalink
Hi Simon,

Got it. No problem.
I appreciate your efforts in developing and maintaining this great program.
All the best.

Steven
Post by Simon Kelley
Ugh. Apologies for letting that one through. How annoying.
I've committed Chris's patch into git.
I'll leave it a week or two in case anything similar emerges, and then
push another release.
Cheers,
Simon.
Post by Steven Shiau
Post by Chris Novakovic
This appears to be a regression that was introduced in commit f77700aa,
right before the release of 2.77. The logic of appending ".<layer>" was
inverted by that commit. I'm just testing a quick patch I wrote that
restores the expected behaviour, then I'll post it to the list...
Hi Chris,
Got it. I confirmed your patch works. Thank you very much.
Steven
_______________________________________________
Dnsmasq-discuss mailing list
http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss
--
Steven Shiau <steven _at_ stevenshiau org>
Public Key Server PGP Key ID: 4096R/47CF935C
Fingerprint: 0240 1FEB 695D 7112 62F0 8796 11C1 12DA 47CF 935C
Matthias Andree
2017-06-07 20:08:45 UTC
Permalink
Post by Simon Kelley
Ugh. Apologies for letting that one through. How annoying.
I've committed Chris's patch into git.
I'll leave it a week or two in case anything similar emerges, and then
push another release.
Hi Simon,

I am offering my apologies for misreading the original logic when
proposing the patch, and the churn this causes in its wake.
Incidentally, this was the patch of my proposed "fix compiler warnings"
patch set that you were the most loathe to take, and rightfully so.

FreeBSD's dnsmasq port in version 2.77_1,1 (r442888) contains the fix
you've committed to Git (2446514e),
thanks to Steven and Chris for report, patch proposal, test and Simon
for the commit.

Sorry again.

Cheers,
Matthias
pointy hat bearer of the day
Simon Kelley
2017-06-07 21:37:27 UTC
Permalink
Matthias,

No problem. We've all been there. There has been more than one broken
release as a result of my mistakes. It's part of the reality we inhabit.

Cheers,

Simon.
Post by Steven Shiau
Post by Simon Kelley
Ugh. Apologies for letting that one through. How annoying.
I've committed Chris's patch into git.
I'll leave it a week or two in case anything similar emerges, and then
push another release.
Hi Simon,
I am offering my apologies for misreading the original logic when
proposing the patch, and the churn this causes in its wake.
Incidentally, this was the patch of my proposed "fix compiler warnings"
patch set that you were the most loathe to take, and rightfully so.
FreeBSD's dnsmasq port in version 2.77_1,1 (r442888) contains the fix
you've committed to Git (2446514e),
thanks to Steven and Chris for report, patch proposal, test and Simon
for the commit.
Sorry again.
Cheers,
Matthias
pointy hat bearer of the day
_______________________________________________
Dnsmasq-discuss mailing list
http://lists.thekelleys.org.uk/mailman/listinfo/dnsmasq-discuss
Loading...