Opened 15 years ago

Closed 12 years ago

Last modified 10 years ago

#2762 closed task (fixed)

DHCP-4.1.0

Reported by: Randy McMurchy Owned by: blfs-book@…
Priority: normal Milestone:
Component: BOOK Version: SVN
Severity: normal Keywords:
Cc:

Description

Version increment to 4.1.0

https://www.isc.org/sw/dhcp

Change History (14)

comment:1 by ken@…, 15 years ago

Doesn't build for me.

if gcc -DHAVE_CONFIG_H -I. -I. -I../includes  -I.. -DLOCALSTATEDIR='"/var"'   -g -O2  -Wall -Werror -fno-strict-aliasing -MT socket.o -MD -MP -MF ".deps/socket.Tpo" -c -o socket.o socket.c; \
	then mv -f ".deps/socket.Tpo" ".deps/socket.Po"; else rm -f ".deps/socket.Tpo"; exit 1; fi
socket.c: In function ‘send_packet6’:
socket.c:591: error: invalid application of ‘sizeof’ to incomplete type ‘struct in6_pktinfo’ 
socket.c:628: error: dereferencing pointer to incomplete type

I remember 4.0.0 would not work for me, but I've now got the whole set of gentoo patches for 4.0.0, will have a look to see if I can get either this version or 4.0.0 to build now.

NB as of 4.0.0 it didn't need LIBDIR and INCDIR, but dhclient needed to be moved from /usr/sbin to /sbin - dhcpcd and dhcrelay can presumably stay in /usr.

comment:2 by ken@…, 15 years ago

FWIW, I was able to build 4.0.0 by passing

CFLAGS='-D_GNU_SOURCE'

to configure (believed to be attributable to a recent glibc change to netinet/in.h). Unfortunately, that doesn't help at all with 4.1.0.

What does allow 4.1.0 to build is to pass --disable-dhcpv6.

There is also an (unanswered) query on the dhcp-users list from November about whether that switch will still require a '-4' option in the scripts to specifiy ipv4.

I'm having difficulty working-up enthusiasm for a version which starts to support ipv6 but only builds on our machines if that support is turned off. Might be a kernel header change somewhere, or yet another glibc header change.

in reply to:  2 ; comment:3 by bdubbs@…, 15 years ago

Replying to ken@…:

I'm having difficulty working-up enthusiasm for a version which starts to support ipv6 but only builds on our machines if that support is turned off. Might be a kernel header change somewhere, or yet another glibc header change.

Are you sure that ipv6 must be turned off or could it be that ipv6 must be enabled in the kernel? Personally, I've never turned ipv6 on because I don't know of a way to test it and I don't have any use for it.

This package is of very limited interest to me personally as I use static addresses on my home system and only need a client for my laptop.

in reply to:  3 comment:4 by ken@…, 15 years ago

Replying to bdubbs@…:

Replying to ken@…:

I'm having difficulty working-up enthusiasm for a version which starts to support ipv6 but only builds on our machines if that support is turned off. Might be a kernel header change somewhere, or yet another glibc header change.

Are you sure that ipv6 must be turned off or could it be that ipv6 must be enabled in the kernel? Personally, I've never turned ipv6 on because I don't know of a way to test it and I don't have any use for it.

This package is of very limited interest to me personally as I use static addresses on my home system and only need a client for my laptop.

I'm _fairly_ sure it should not need a kernel config change to _build_ it. To use it, yes the kernel will obviously need it turned on, but the build is just using the headers - primarily from glibc. As I said, I eventually managed to build 4.0.0 earleir today by adding a define to the configure, so I don't think the system's headers are _too_ broken for 4.1.0 to use them.

As to a definitive answer, I've no idea - google is a bit silent on it. Like you, I have no way to test or use ipv6, but I'm using older versions of the package to issue / claim addresses for my desktop boxes.

comment:5 by ken@…, 15 years ago

Meanwhile, 3.1.2 was released today. The iproute2 patch is available, the other patch is already applied. Works for me (I've been using 3.1.1 for a couple of months, just installed 3.1.2 and rebooted to confirm it is ok).

If we were to move dhcp-4 releases (i.e. ipv6 partial support) to the future, 3.1.2 is current and not a million miles away from how dhcp-3.0 was configured. It defaults to /usr/man, which does not bother me since we have the symlink, but we could override that with

echo 'ADMMANDIR = /usr/share/man8'     >>site.conf &&
echo 'FFMANDIR = /usr/share/man/man5'  >>site.conf &&
echo 'LIBMANDIR = /usr/share/man/man3' >>site.conf &&
echo 'USRMANDIR = /usr/share/man/man1' >>site.conf &&

Let's wait a few days - maybe someone here can spot the problem with 4.1.0, or perhaps a distro will fix it.

comment:6 by thomas, 15 years ago

Hi, was looking for a reason why we didnt have 4.1 in the book and found that ticket as an answer... Now, I simply tried a configure/make to reproduce the failure and it went quite fine even I saw that an include file "net/if6.h" wasn't found. But the later seems not to have some influence on having v6 support enabled. I did that on a quite old SuSE (Kernel-2.6.5, glibc-2.3.3) as well as on a nearly up to date LFS-box (Kernel 2.6.24, glibc-2.8). In the file include/config.h there is a line "#define DHCPv6 1" which enables the whole IPv6-stuff, isn't it?

What could be the difference that your builds did not succeed but mine does?

In the meanwhile I'll do some further checks what we need to do for an update of the page (3.0.7 is end-of-live now, 3.1.2 degraded to "maintenance" now).

in reply to:  6 ; comment:7 by ken@…, 15 years ago

Replying to thomas:

What could be the difference that your builds did not succeed but mine does?

No idea, I've just tried it again, and that error message is the first sign of problems. Maybe I was mistaken in blaming ipv6 - it might be a gcc issue : you say "nearly up to date LFS", but I call the 2.6.24 kernel "quite old" ;-) Are you using gcc-4.3, or an earlier version ?

I hadn't looked at the detail of how it configures, but I agree DHCPv6 is enabled in config.h.

Looking for net/if6.h seems to be a test to see if it is configuring on netbsd.

in reply to:  7 comment:8 by thomas, 15 years ago

Replying to ken@…:

Replying to thomas:

What could be the difference that your builds did not succeed but mine does?

No idea, I've just tried it again, and that error message is the first sign of problems. Maybe I was mistaken in blaming ipv6 - it might be a gcc issue : you say "nearly up to date LFS", but I call the 2.6.24 kernel "quite old" ;-)

Yeah, not really the newest version - I'm just about to do some updates on my machines...

Are you using gcc-4.3, or an earlier version ?

Thats the point. On both machines I quickly tested to compile, I have 4.2.x versions. I did it again on a box with 4.3.2, and it fails there too. So it seems to be more a gcc issue. There we need to have an eye on - I think its a good starting point...

I hadn't looked at the detail of how it configures, but I agree DHCPv6 is enabled in config.h.

Looking for net/if6.h seems to be a test to see if it is configuring on netbsd.

Ah, interesting.

comment:9 by thomas, 15 years ago

I did some searches and found that Gentoo fixed an issue like this one by using -D_GNU_SOURCE (it has already been mentioned a few lines above too). See http://bugs.gentoo.org/show_bug.cgi?id=225417 . What I did is

CFLAGS=-D_GNU_SOURCE ./configure --prefix=/usr ...
make

It compiled quite fine (on a LFS-6.4, gcc-4.3.2, glibc-2.8) Unclear why it hasn't worked for you (Ken) the time you tried that - could you give it another try?

comment:10 by Randy McMurchy, 15 years ago

Milestone: 6.46.5

Modified milestone from 6.4 to 6.5

comment:11 by (none), 13 years ago

Milestone: 6.5

Milestone 6.5 deleted

comment:12 by Randy McMurchy, 13 years ago

Milestone: 6.7

Updated milestone to 6.7

comment:13 by ken@…, 12 years ago

Resolution: fixed
Status: newclosed

Upgraded to 4.2.3 in r9044.

comment:14 by bdubbs@…, 10 years ago

Milestone: 6.7

Milestone 6.7 deleted

Note: See TracTickets for help on using tickets.