ports/57943: isc-dhcp3 port broken with lots of interfaces.

Stefan `Sec` Zehl sec at 42.org
Mon Oct 13 09:50:18 UTC 2003


>Number:         57943
>Category:       ports
>Synopsis:       isc-dhcp3 port broken with lots of interfaces.
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Oct 13 02:50:16 PDT 2003
>Closed-Date:
>Last-Modified:
>Originator:     Stefan `Sec` Zehl
>Release:        FreeBSD 4.9-PRERELEASE i386
>Organization:
>Environment:
System: FreeBSD ice 4.9-PRERELEASE FreeBSD 4.9-PRERELEASE #6: Sun Sep 28 14:48:37 CEST 2003 root at ice:/export/obj/export/src/sys/ICE i386

isc-dhcp3-3.0.1.r12 ISC Dynamic Host Configuration Protocol client and server c

>Description:
	

When I upgraded my isc-dhcp3 port it stopped recognising my wi0 interface:

Oct 11 03:48:13 ice dhcpd: wi0: not found

and refused to start.


After some googling I found this problem mentioned somewhere else. It
happens because some buffer in dhcpd is too small to hold lots of
interfaces, and I happen to have a lot:

ice:~>ifconfig -l
fxp0 lp0 stf0 ipr0 ipr1 ipr2 ipr3 faith0 isp0 isp1 isp2 isp3 lo0 ppp0 ppp1 gif0 gif1 gif2 gif3 wi0

>How-To-Repeat:
	
>Fix:

A workaround is to increase the relevant buffer. Patch attached.

--- common/discover.c.org	Fri Jul 25 21:44:15 2003
+++ common/discover.c	Mon Oct 13 00:13:17 2003
@@ -135,7 +135,7 @@
 {
 	struct interface_info *tmp, *ip;
 	struct interface_info *last, *next;
-	char buf [2048];
+	char buf [20480];
 	struct ifconf ic;
 	struct ifreq ifr;
 	int i;



>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list