<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body bgcolor="#ffffff" text="#000000">
<font size="-1"><font face="Verdana">Hi!<br>
<br>
As a system integrator we currently run ~40 sites using ISC DHCPd. The
Linux distro is Ubuntu 6.10 (not upgraded to later versions by
different reasons).<br>
<br>
I've successfully compiled and installed the 3.1.0 version on many of
these sites, though some are running 3.0.4. (self-compiled)<br>
<br>
We're installing a replacement-server for a customer, and during the
setup of 3.1.0, we hit a show-stopper. The dhcpd.conf and dhcpd.leases
used are from the existing system, which is running 3.0.4.<br>
dhcpd.leases is what's causing the problem. Using a freshly touched
dhcpd.leases, everything functions as it should. (using the existing
dhcpd.conf). Trying to start dhcpd using the existing dhcpd.leases
results in a<br>
<br>
*** glibc detected *** /usr/sbin/dhcpd: munmap_chunk(): invalid
pointer: 0x080d7f47 ***<br>
[snip]<br>
<br>
I've read through the changelogs and see that are changes done to
dhcpd.leases from 3.0.4 to 3.1.0, but can not find any information
about special procedures to follow when upgrading.<br>
<br>
</font></font><font size="-1"><font face="Verdana">The dhcpd.leases is
1.3MB.<br>
<br>
I hope there's something "#¤"# simple step/limitation(?) I've
overlooked..<br>
<br>
Looking forward to your reply!<br>
<br>
Best regards,<br>
Ola<br>
<br>
here's the gdb output:<br>
  <br>
</font></font><font size="-1"><font face="Verdana"><br>
tt:/etc# gdb /usr/sbin/dhcpd<br>
GNU gdb 6.4.90-debian<br>
Copyright (C) 2006 Free Software Foundation, Inc.<br>
GDB is free software, covered by the GNU General Public License, and
you are<br>
welcome to change it and/or distribute copies of it under certain
conditions.<br>
Type "show copying" to see the conditions.<br>
There is absolutely no warranty for GDB.  Type "show warranty" for
details.<br>
This GDB was configured as "i486-linux-gnu"...Using host libthread_db
library "/lib/tls/i686/cmov/libthread_db.so.1".<br>
<br>
(gdb) run<br>
Starting program: /usr/sbin/dhcpd<br>
Internet Systems Consortium DHCP Server V3.1.0<br>
Copyright 2004-2007 Internet Systems Consortium.<br>
All rights reserved.<br>
For info, please visit <a class="moz-txt-link-freetext" href="http://www.isc.org/sw/dhcp/">http://www.isc.org/sw/dhcp/</a><br>
data: hardware: raw packet not available<br>
*** glibc detected *** /usr/sbin/dhcpd: munmap_chunk(): invalid
pointer: 0x080d7f47 ***<br>
======= Backtrace: =========<br>
/lib/tls/i686/cmov/libc.so.6(__libc_free+0x18a)[0xb7e5cb4a]<br>
/usr/sbin/dhcpd[0x80bd511]<br>
/usr/sbin/dhcpd[0x80a3c28]<br>
/usr/sbin/dhcpd[0x8098c2d]<br>
/usr/sbin/dhcpd[0x80a4de7]<br>
/usr/sbin/dhcpd[0x806f79c]<br>
/usr/sbin/dhcpd[0x80bd993]<br>
/usr/sbin/dhcpd[0x807a8f5]<br>
/usr/sbin/dhcpd[0x8076997]<br>
/usr/sbin/dhcpd[0x8058b3f]<br>
/usr/sbin/dhcpd[0x8058897]<br>
/usr/sbin/dhcpd[0x8062704]<br>
/usr/sbin/dhcpd[0x804af92]<br>
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xdc)[0xb7e0b8cc]<br>
/usr/sbin/dhcpd[0x8049fc1]<br>
======= Memory map: ========<br>
08048000-080e2000 r-xp 00000000 08:01 721911     /usr/sbin/dhcpd<br>
080e2000-080e7000 rwxp 0009a000 08:01 721911     /usr/sbin/dhcpd<br>
080e7000-083b3000 rwxp 080e7000 00:00 0          [heap]<br>
b7311000-b731b000 r-xp 00000000 08:01 409616     /lib/libgcc_s.so.1<br>
b731b000-b731c000 rwxp 00009000 08:01 409616     /lib/libgcc_s.so.1<br>
b731c000-b7dea000 rwxp b731c000 00:00 0<br>
b7dea000-b7df3000 r-xp 00000000 08:01 409633    
/lib/tls/i686/cmov/libnss_files-2.4.so<br>
b7df3000-b7df5000 rwxp 00008000 08:01 409633    
/lib/tls/i686/cmov/libnss_files-2.4.so<br>
b7df5000-b7df6000 rwxp b7df5000 00:00 0<br>
b7df6000-b7f23000 r-xp 00000000 08:01 409624    
/lib/tls/i686/cmov/libc-2.4.so<br>
b7f23000-b7f25000 r-xp 0012c000 08:01 409624    
/lib/tls/i686/cmov/libc-2.4.so<br>
b7f25000-b7f27000 rwxp 0012e000 08:01 409624    
/lib/tls/i686/cmov/libc-2.4.so<br>
b7f27000-b7f2a000 rwxp b7f27000 00:00 0<br>
b7f2e000-b7f30000 rwxp b7f2e000 00:00 0<br>
b7f30000-b7f49000 r-xp 00000000 08:01 412256     /lib/ld-2.4.so<br>
b7f49000-b7f4b000 rwxp 00018000 08:01 412256     /lib/ld-2.4.so<br>
bfc7b000-bfc91000 rw-p bfc7b000 00:00 0          [stack]<br>
ffffe000-fffff000 ---p 00000000 00:00 0          [vdso]<br>
<br>
Program received signal SIGABRT, Aborted.<br>
0xffffe410 in __kernel_vsyscall ()<br>
(gdb) bt<br>
#0  0xffffe410 in __kernel_vsyscall ()<br>
#1  0xb7e1f770 in raise () from /lib/tls/i686/cmov/libc.so.6<br>
#2  0xb7e20ef3 in abort () from /lib/tls/i686/cmov/libc.so.6<br>
#3  0xb7e54d0b in __fsetlocking () from /lib/tls/i686/cmov/libc.so.6<br>
#4  0xb7e5cb4a in free () from /lib/tls/i686/cmov/libc.so.6<br>
#5  0x080bd511 in dfree (ptr=0x80d7f47, file=0x80da788 "options.c",
line=2003) at alloc.c:202<br>
#6  0x080a3c28 in option_dereference (dest=0x8343c04, file=0x80da788
"options.c", line=2003) at tables.c:627<br>
#7  0x08098c2d in option_cache_dereference (ptr=0x8343ae8,
file=0x80ddfa9 "alloc.c", line=150) at options.c:2003<br>
#8  0x080a4de7 in option_chain_head_dereference (ptr=0x820093c,
file=0x80d695c "mdb.c", line=844) at alloc.c:149<br>
#9  0x0806f79c in dhcp_lease_destroy (h=0x82008e4, file=0x80d695c
"mdb.c", line=844) at omapi.c:426<br>
#10 0x080bd993 in omapi_object_dereference (h=0xbfc8e42c,
file=0x80d695c "mdb.c", line=844) at alloc.c:698<br>
#11 0x0807a8f5 in lease_dereference (ptr=0xbfc8e42c, file=0x80d695c
"mdb.c", line=844) at salloc.c:143<br>
#12 0x08076997 in enter_lease (lease=0x8118c88) at mdb.c:844<br>
#13 0x08058b3f in lease_file_subparse (cfile=0x80f5540) at
confpars.c:265<br>
#14 0x08058897 in read_conf_file (filename=0x80d1bd8
"/var/state/dhcp/dhcpd.leases", group=0x0, group_type=0, leasep=1) at
confpars.c:168<br>
#15 0x08062704 in db_startup (testp=0) at db.c:788<br>
#16 0x0804af92 in main (argc=1, argv=0xbfc8e704, envp=0xbfc8e70c) at
dhcpd.c:507<br>
(gdb)<br>
<br>
</font></font>
</body>
</html>