[[!meta copyright="Copyright © 2011, 2012, 2013, 2014, 2015 Free Software Foundation, Inc."]] [[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] [[!tag open_issue_porting]] # Open Issues * [[!debbug 616290]] * [[Proper Hurdy DHCP support|hurd/translator/pfinet/dhcp]] * [[!message-id desc="dhclient aborting with a stack smashing error" "874ngfvwn4.fsf@kepler.schwinge.homeip.net"]] IRC, freenode, #hurd, 2013-08-21: yay, I fixed the path of the dhcp leases file... ... and now dhclient dies of a buffer overflow fortunately the fix is rather simple, anyone who cares about the security of his box just has to stop using isc software the code is full of stuff like char foo[100]; /* surely that's enough */ note that our version of isc-dchp (the one in ports) is older than the latest one available in unstable (which is still older than the latest upstream releases) so? dunno, might have been fixed or not ^^ yeah sure A lot of software has these limitations and PATH_MAX, MAXPATHLEN issues :( having a limitation is not a problem per-se no, only software written in c has these kind of problems the problem is not checking whether the limits are hit well, looking at the source of isc-dhcp my time is better spent making another dhcp client work on hurd also reading up on bug #616290 does make me want to avoid touching it ever hehe teythoon: somebody was offering an alternative to the isc dhcpclient, but I think it was rejected by Samuel? why would he do that? probably for compliance He probably thought they would release a new version soon, is 4.3.0 out yet? well, as soon as my fixes for ifupdown go in, dhclient will start crashing no, there is no new version released no major one that is 4.2.5 is out can't you just increase the buffer size, where is the problem exactly? I have no idea The Hurd patches are not in 4.2.5, they were promised for 4.3.0a1. Still the buffer overflow problem might be present in 4.2.5 if patched to build on Hurd. there, darnassus now has a fully featured git/gitweb service :) btw, I managed to reproduce the crash reliably rm /var/lib/dhcp/*; dhclient -v /dev/eth0 ... *boom* ditch the -v, everything works, and now that there is a lease file, you can add the -v again and it works ew :) and what has dhclient.c to say for its defense? log_info("%s", ""); hm, not much :/ IRC, freenode, #hurd, 2013-08-22: uh, the isc-dhcp situation is a huge pita, the source on -ports does not compile anymore :/ IRC, freenode, #hurd, 2013-08-23: teythoon: Was it the slash in the network interface names that caused the buffer overflow in dhclient? gnu_srs: no, previously no dhcp leases file was written and everything was fine teythoon: did you really develop your patch against that old version of ifupdown? gnu_srs: now it is written, and for some reason dhclient crashes *iff* -v is given *and* there is no previous lease file pinotree: no, I did not. that was only reportbug including information from my desktop machine without asking me but when I first looked at ifupdown it was still a 6000 lines noweb file >,< that was fun which version is it against? hg tip IRC, freenode, #hurd, 2013-08-30: teythoon: I understand correctly that you found that id:"874ngfvwn4.fsf@kepler.schwinge.homeip.net" in fact was really "just" a buffer overflow in the dhclient code? tschwinge: ah, most interesting, I didn't realize that you stumbled across this as well to be honest I don't know what's going on there, I only observed what I wrote in my report for me it started crashing once the lease file was actually a valid path (i.e. not to a non-existing directory b/c of the slashes in /dev/eth0) I tried to rebuild the package served on debian-ports, but that failed IRC, freenode, #hurd, 2014-01-03: dhcp 4.3 alpha released and PATH_MAX issue was fixed IRC, freenode, #hurd, 2014-01-21: teythoon: what about this? *** stack smashing detected ***: dhclient terminated gnu_srs: well, dhclient dies i've seen this, it comes and goes not sure what happens, but i tend to blame it on our custom-built dhcp package from debian-ports, and it's outdated it's most likely not your fault i thought there was a new upstream by now and the network configuration can be done with passive translators as it was always done there was ? there is one recently released, haven't checked yet in experimental: 4.3.0a1-2, does still not build out of the box there was, but it does not seem to build on the hurd https://buildd.debian.org/status/logs.php?pkg=isc-dhcp&arch=hurd-i386 the most recent version is from debian-ports IRC, freenode, #hurd, 2014-01-24: stack smashing detected ***: dhclient terminated how nice braunr: dhclient: http://news.gmane.org/find-root.php?message_id=%3C874ngfvwn4.fsf%40kepler.schwinge.homeip.net%3E braunr: And I thought, teythoon had found this to be a buffer overflow; something like char dev[10], and for us the path to the dev (/dev/eth0) was longer (but I may be misremebering). tschwinge: sounds reasonable braunr: By the way: I'm seeing this segfault all the time during boot, but when I again run it manually (root login), it works fine. tschwinge: you mean the dhclient one µ? Yes. mhm braunr, tschwinge: i never found the cause of the dhclient issue i blame the (outdated) build on debian-ports IRC, freenode, #hurd, 2014-01-30: err, still nobody found the dhclient bug? youpi: You found the dh-client bug, right? gnu_srs: yes, the dhclient bug was in libc, as tschwinge guessed I'll probably upload a fixed glibc on debian-ports youpi: dhclient starts OK with libc 2.17-98~0 btw, the experimental version of isc-dhcp has a newer occurrence of PATH_MAX :-( (aside from not including the needed debian files for hurd-i386) * IPv6 IRC, freenode, #hurd, 2014-02-23: seems dhclient can't also set ipv6 translator cheated by setting it manually, i had probably screwed it up somehow exim was complaining 2014-02-23 22:26:41 IPv6 socket creation failed: Address family not supported by protocol