Strange Error message SIOCGIFCONF Invalid argument

Glenn Satchell Glenn.Satchell at uniq.com.au
Thu Sep 20 13:41:16 UTC 2007


>Date: Thu, 20 Sep 2007 12:45:20 +0200
>From: "R.Smits" <R.Smits at tudelft.nl>
>To: dhcp-users at isc.org
>Subject: Strange Error message SIOCGIFCONF Invalid argument
>
>Hello,
>
>We have a Solaris 9 box running ISC 3.03
>
>We have 64 trunked virtual network interfaces. When we try to make
>another one, and start the dhcp server, the messages file says :
>
>ioctl: SIOCGIFCONF: Invalid argument
>
>The dhcp server exits with this error message. What does this mean ?
>
>Greetings... Richard Smits
>TU-Delft

A quick google with that error message shows that Solaris returns
invalid argument if the size of the buffer passed in the ioctl() call
is not big enough to hold the data for all the interfaces.

The string SIOCGIFCONF occurs in only one source file,
common/discover.c. In this file this string is used several times in
the subroutine discover_interfaces(). It starts with a 2048 byte
buffer, but if it gets an error it increases the size and tries again.
At least this is the way it is supposed to work in 3.0.4 and 3.0.5. I
don't have a copy of the 3.0.3 source code handy to see if this
behaviour is in that version. I know it was added somewhere along the
years.

First step would be to try a newer release to see if the behaviour changes.

Otherwise you could increase the size of the buffer until it works.

regards,
-glenn


More information about the dhcp-users mailing list