Hello Release Team, A grave bug was reported against wide-dhcpv6 earlier today [0]. The fix is really simple [2] and I already prepared a package. The thing is the current version in unstable (20080615-3) has quite a lot of changes compared to the one in testing (20080615-1). Therefore I prepared a testing package [1] and I ask for permission to upload it via t-p-u.
Here are stats about the changes between 20080615-1 and the proposed package: $ git diff --stat debian/20080615-1..testing-proposed-updates/20080615-1lenny1 debian/changelog | 8 +++++ debian/patches/200_close_fds.diff | 55 +++++++++++++++++++++++++++++++++++++ debian/patches/series | 1 + 3 files changed, 64 insertions(+), 0 deletions(-) $ cat debian/patches/200_close_fds.diff | diffstat dhcp6c.c | 5 +++++ dhcp6relay.c | 6 ++++++ dhcp6s.c | 5 +++++ 3 files changed, 16 insertions(+) Thank you for your great work, -- Jérémie /* ``Engineering does not require science. Science helps a lot, but people built perfectly good brick walls long before they knew why cement works.'' -- Alan Cox */ [0] http://bugs.debian.org/512397 [1] http://alioth.debian.org/~toadstool-guest/wide-dhcpv6_20080615-1lenny1.dsc [2] debian/patches/200_close_fds.diff: diff --git a/dhcp6c.c b/dhcp6c.c index 1caaaa5..4c1ecfc 100644 --- a/dhcp6c.c +++ b/dhcp6c.c @@ -226,8 +226,13 @@ main(argc, argv) } if (foreground == 0 && infreq_mode == 0) { + int fd; + if (daemon(0, 0) < 0) err(1, "daemon"); + + for (fd = 3; fd < 1024; fd++) + close(fd); } /* dump current PID */ diff --git a/dhcp6relay.c b/dhcp6relay.c index fb84ce3..eb0bce9 100644 --- a/dhcp6relay.c +++ b/dhcp6relay.c @@ -207,8 +207,14 @@ main(argc, argv) } if (foreground == 0) { + int fd; + if (daemon(0, 0) < 0) err(1, "daemon"); + + for (fd = 3; fd < 1024; fd++) + close(fd); + openlog(progname, LOG_NDELAY|LOG_PID, LOG_DAEMON); } setloglevel(debug); diff --git a/dhcp6s.c b/dhcp6s.c index 544afff..494e571 100644 --- a/dhcp6s.c +++ b/dhcp6s.c @@ -316,8 +316,13 @@ main(argc, argv) } if (foreground == 0) { + int fd; + if (daemon(0, 0) < 0) err(1, "daemon"); + + for (fd = 3; fd < 1024; fd++) + close(fd); } /* dump current PID */
pgpzZxRGxN1L5.pgp
Description: PGP signature