interfaces bug
Sergey Naumov
sknaumov at gmail.com
Sat May 7 15:47:10 UTC 2011
2011/5/6 Sergey Naumov <sknaumov at gmail.com>:
> Hello.
>
> I want to report a regression in dhcp4 (4.1-ESV-R2) in contrast to dhcp3.
>
> Lets assume that there is an interface definition in dhclient.conf
> (interface "eth1" { ... }).
>
> If I run
> #> killall dhclient
> #> echo -n > /tmp/dhclient.leases (there is symbolic link to this
> file)
> #> ifconfig eth1 0.0.0.0 up
> #> dhclient -cf /etc/dhcp/dhclient.conf
> there is no action for eth1 (tcpdump doen't show any dhcp traffic).
>
> I figured out that it happens for interface with 0.0.0.0 address or
> interface which had 0.0.0.0 address before it was put down.
> The problem somewhere in discover_interfaces(DISCOVER_UNCONFIGURED), because
> "interface" list is identical (empty) for working and not working case
> before this function and in the bad case there is no eth1 interface in this
> list after this function (in the good case there is eth1 with REQUESTED,
> AUTOMATIC flags and after config parsing AUTOMATIC flag disappears).
>
> Environment: buildroot + uclibc-0.9.31 system based on busybox 1.17.1,
> linux-2.6.35 kernel, dhclient-script slightly modified (0 address replaced
> with 0.0.0.0 because busybox's ifconfig does not accept 0 as valid address).
>
> By the way, is there a way to disable bind compilation in dhcp 4.2 (I have
> problems with cross-compilation with uclibc)?
>
> Thanks in advance,
>
> Sergey Naumov.
>
It seems that ioctl(SIOCGIFADDR) for interface with 0.0.0.0 address
returns EADDRNOTAVAIL in next_iface4() function and such interfaces
are not included in the list. Is it correct behavior?
More information about the dhcp-hackers
mailing list