Here is a backtrace of error from both sid version as well upstream most recent version (1.4.05).
I also give my config file at end. Compiled with CFLAGS="-O1 -g" (by modifing build system) backtrace for debian's maradns 1.4.03-1 sredniczarny:/home/baryluk/Dane/linux/maradns-dos/maradns-1.4.03# gdb ./server/maradns GNU gdb (GDB) 7.2-debian Copyright (C) 2010 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "i486-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /sctank2/Dane/linux/maradns-dos/maradns-1.4.03/server/maradns...done. (gdb) run -f /etc/maradns/mararc Starting program: /sctank2/Dane/linux/maradns-dos/maradns-1.4.03/server/maradns -f /etc/maradns/mararc [Thread debugging using libthread_db enabled] Adding root nameserver icann for zone . Log: Root directory changed Log: Binding to address 127.0.0.1 Log: Socket opened on UDP port 53 Log: Root privileges dropped Log: All RRs have been loaded [New Thread 0xb7e5db70 (LWP 8726)] [New Thread 0xb765cb70 (LWP 8727)] [Thread 0xb7e5db70 (LWP 8726) exited] [New Thread 0xb7e5db70 (LWP 8728)] [Thread 0xb765cb70 (LWP 8727) exited] maradns: malloc.c:3097: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed. Program received signal SIGABRT, Aborted. [Switching to Thread 0xb7e5db70 (LWP 8728)] 0xb7fe2424 in __kernel_vsyscall () (gdb) bt #0 0xb7fe2424 in __kernel_vsyscall () #1 0xb7e8a751 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #2 0xb7e8db82 in abort () at abort.c:92 #3 0xb7ecb484 in __malloc_assert (assertion=<value optimized out>, file=<value optimized out>, line=3097, function=0xb7f8249c "sYSMALLOc") at malloc.c:352 #4 0xb7ece136 in sYSMALLOc (av=<value optimized out>, bytes=<value optimized out>) at malloc.c:3094 #5 _int_malloc (av=<value optimized out>, bytes=<value optimized out>) at malloc.c:4747 #6 0xb7ecfc8c in __libc_malloc (bytes=2051) at malloc.c:3661 #7 0x0805bd4f in js_alloc (unit_count=2051, unit_size=1) at JsStrOS.c:66 #8 0x0805ab88 in js_create (max_count=2048, unit_size=1) at JsStr.c:34 #9 0x0805677c in query_nameserver (remote_ip=1472994316, query=0x8096100, bailiwick=0x8096558) at recursive.c:1570 #10 0x08058b41 in recurse_call (id=53801, sock=6, client=..., query=0x8096100, queries_sent=1, glueless_level=1, ipret=0xb7e5d330, ptrret=0x0) at recursive.c:3115 #11 0x08058c90 in recurse_call (id=53801, sock=6, client=..., query=0x8095bc8, queries_sent=0, glueless_level=0, ipret=0x0, ptrret=0x0) at recursive.c:3158 #12 0x08059151 in recurse_thread (req=0x8095d70) at recursive.c:2637 #13 0xb7fab955 in start_thread (arg=0xb7e5db70) at pthread_create.c:300 #14 0xb7f2be7e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130 (gdb) q backtrace for upstream 1.4.5 (only changed CFLAGS to -g -O0) Starting program: /sctank2/Dane/linux/maradns-dos/recent/maradns-1.4.05/server/maradns -f /etc/maradns/mararc [Thread debugging using libthread_db enabled] Adding root nameserver icann for zone . Log: Root directory changed Log: Binding to address 127.0.0.1 Log: Socket opened on UDP port 53 Log: Root privileges dropped Log: All RRs have been loaded [New Thread 0xb7e5db70 (LWP 10277)] [Thread 0xb7e5db70 (LWP 10277) exited] [New Thread 0xb765cb70 (LWP 10278)] [New Thread 0xb7e5db70 (LWP 10279)] [Thread 0xb765cb70 (LWP 10278) exited] maradns: malloc.c:3097: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed. Program received signal SIGABRT, Aborted. [Switching to Thread 0xb7e5db70 (LWP 10279)] 0xb7fe2424 in __kernel_vsyscall () (gdb) bt #0 0xb7fe2424 in __kernel_vsyscall () #1 0xb7e8a751 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #2 0xb7e8db82 in abort () at abort.c:92 #3 0xb7ecb484 in __malloc_assert (assertion=<value optimized out>, file=<value optimized out>, line=3097, function=0xb7f8249c "sYSMALLOc") at malloc.c:352 #4 0xb7ece136 in sYSMALLOc (av=<value optimized out>, bytes=<value optimized out>) at malloc.c:3094 #5 _int_malloc (av=<value optimized out>, bytes=<value optimized out>) at malloc.c:4747 #6 0xb7ecfc8c in __libc_malloc (bytes=2051) at malloc.c:3661 #7 0x0805f63c in js_alloc (unit_count=2051, unit_size=1) at JsStrOS.c:66 #8 0x0805dfb3 in js_create (max_count=2048, unit_size=1) at JsStr.c:34 #9 0x080568be in query_nameserver (remote_ip=1472994316, query=0x8089e20, bailiwick=0x809e318) at recursive.c:1570 #10 0x08059843 in recurse_call (id=32218, sock=6, client=..., query=0x8089e20, queries_sent=1, glueless_level=1, ipret=0xb7e5d2ec, ptrret=0x0) at recursive.c:3115 #11 0x080599c1 in recurse_call (id=32218, sock=6, client=..., query=0x809e518, queries_sent=0, glueless_level=0, ipret=0x0, ptrret=0x0) at recursive.c:3158 #12 0x0805877f in recurse_thread (req=0x809c4a0) at recursive.c:2637 #13 0xb7fab955 in start_thread (arg=0xb7e5db70) at pthread_create.c:300 #14 0xb7f2be7e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130 (gdb) q A debugging session is active. Inferior 1 [process 10267] will be killed. Quit anyway? (y or n) y sredniczarny:/home/baryluk/Dane/linux/maradns-dos/recent/maradns-1.4.05# Valgrind report for 1.4.05: sredniczarny:/home/baryluk/Dane/linux/maradns-dos/recent/maradns-1.4.05# valgrind ./server/maradns -f /etc/maradns/mararc ==10341== Memcheck, a memory error detector ==10341== Copyright (C) 2002-2010, and GNU GPL'd, by Julian Seward et al. ==10341== Using Valgrind-3.6.0.SVN-Debian and LibVEX; rerun with -h for copyright info ==10341== Command: ./server/maradns -f /etc/maradns/mararc ==10341== Adding root nameserver icann for zone . Log: Root directory changed Log: Binding to address 127.0.0.1 Log: Socket opened on UDP port 53 Log: Root privileges dropped Log: All RRs have been loaded ==10341== Thread 3: ==10341== Invalid write of size 4 ==10341== at 0x8063971: compress_add_dlabel_points (Compress.c:200) ==10341== by 0x8063E22: compress_dlabel (Compress.c:390) ==10341== by 0x806413F: compress_rddata (Compress.c:527) ==10341== by 0x80648F5: compress_answers (Compress.c:899) ==10341== by 0x80649E3: compress_data (Compress.c:960) ==10341== by 0x804C838: udpnotfound (MaraDNS.c:2070) ==10341== by 0x805839C: give_answer (recursive.c:2524) ==10341== by 0x8058CE5: recurse_call (recursive.c:2794) ==10341== by 0x8059AE7: recurse_call (recursive.c:3191) ==10341== by 0x805877E: recurse_thread (recursive.c:2637) ==10341== by 0x404E954: start_thread (pthread_create.c:300) ==10341== by 0x412EE7D: clone (clone.S:130) ==10341== Address 0x42db290 is 512 bytes inside a block of size 515 alloc'd ==10341== at 0x4023F50: malloc (vg_replace_malloc.c:236) ==10341== by 0x805F63B: js_alloc (JsStrOS.c:66) ==10341== by 0x8063781: compress_init_state (Compress.c:90) ==10341== by 0x8064962: compress_data (Compress.c:940) ==10341== by 0x804C838: udpnotfound (MaraDNS.c:2070) ==10341== by 0x805839C: give_answer (recursive.c:2524) ==10341== by 0x8058CE5: recurse_call (recursive.c:2794) ==10341== by 0x8059AE7: recurse_call (recursive.c:3191) ==10341== by 0x805877E: recurse_thread (recursive.c:2637) ==10341== by 0x404E954: start_thread (pthread_create.c:300) ==10341== by 0x412EE7D: clone (clone.S:130) ==10341== ==10341== Invalid read of size 4 ==10341== at 0x8063B74: compress_sub_dlabel (Compress.c:289) ==10341== by 0x8063DFA: compress_dlabel (Compress.c:382) ==10341== by 0x806413F: compress_rddata (Compress.c:527) ==10341== by 0x80648F5: compress_answers (Compress.c:899) ==10341== by 0x80649E3: compress_data (Compress.c:960) ==10341== by 0x804C838: udpnotfound (MaraDNS.c:2070) ==10341== by 0x805839C: give_answer (recursive.c:2524) ==10341== by 0x8058CE5: recurse_call (recursive.c:2794) ==10341== by 0x8059AE7: recurse_call (recursive.c:3191) ==10341== by 0x805877E: recurse_thread (recursive.c:2637) ==10341== by 0x404E954: start_thread (pthread_create.c:300) ==10341== by 0x412EE7D: clone (clone.S:130) ==10341== Address 0x42db290 is 512 bytes inside a block of size 515 alloc'd ==10341== at 0x4023F50: malloc (vg_replace_malloc.c:236) ==10341== by 0x805F63B: js_alloc (JsStrOS.c:66) ==10341== by 0x8063781: compress_init_state (Compress.c:90) ==10341== by 0x8064962: compress_data (Compress.c:940) ==10341== by 0x804C838: udpnotfound (MaraDNS.c:2070) ==10341== by 0x805839C: give_answer (recursive.c:2524) ==10341== by 0x8058CE5: recurse_call (recursive.c:2794) ==10341== by 0x8059AE7: recurse_call (recursive.c:3191) ==10341== by 0x805877E: recurse_thread (recursive.c:2637) ==10341== by 0x404E954: start_thread (pthread_create.c:300) ==10341== by 0x412EE7D: clone (clone.S:130) ==10341== ==10341== Invalid read of size 4 ==10341== at 0x80638A9: compress_add_dlabel_points (Compress.c:167) ==10341== by 0x8063E22: compress_dlabel (Compress.c:390) ==10341== by 0x806413F: compress_rddata (Compress.c:527) ==10341== by 0x80648F5: compress_answers (Compress.c:899) ==10341== by 0x80649E3: compress_data (Compress.c:960) ==10341== by 0x804C838: udpnotfound (MaraDNS.c:2070) ==10341== by 0x805839C: give_answer (recursive.c:2524) ==10341== by 0x8058CE5: recurse_call (recursive.c:2794) ==10341== by 0x8059AE7: recurse_call (recursive.c:3191) ==10341== by 0x805877E: recurse_thread (recursive.c:2637) ==10341== by 0x404E954: start_thread (pthread_create.c:300) ==10341== by 0x412EE7D: clone (clone.S:130) ==10341== Address 0x42db290 is 512 bytes inside a block of size 515 alloc'd ==10341== at 0x4023F50: malloc (vg_replace_malloc.c:236) ==10341== by 0x805F63B: js_alloc (JsStrOS.c:66) ==10341== by 0x8063781: compress_init_state (Compress.c:90) ==10341== by 0x8064962: compress_data (Compress.c:940) ==10341== by 0x804C838: udpnotfound (MaraDNS.c:2070) ==10341== by 0x805839C: give_answer (recursive.c:2524) ==10341== by 0x8058CE5: recurse_call (recursive.c:2794) ==10341== by 0x8059AE7: recurse_call (recursive.c:3191) ==10341== by 0x805877E: recurse_thread (recursive.c:2637) ==10341== by 0x404E954: start_thread (pthread_create.c:300) ==10341== by 0x412EE7D: clone (clone.S:130) ==10341== ==10341== Invalid write of size 4 ==10341== at 0x806395E: compress_add_dlabel_points (Compress.c:199) ==10341== by 0x8063E22: compress_dlabel (Compress.c:390) ==10341== by 0x806413F: compress_rddata (Compress.c:527) ==10341== by 0x80648F5: compress_answers (Compress.c:899) ==10341== by 0x80649E3: compress_data (Compress.c:960) ==10341== by 0x804C838: udpnotfound (MaraDNS.c:2070) ==10341== by 0x805839C: give_answer (recursive.c:2524) ==10341== by 0x8058CE5: recurse_call (recursive.c:2794) ==10341== by 0x8059AE7: recurse_call (recursive.c:3191) ==10341== by 0x805877E: recurse_thread (recursive.c:2637) ==10341== by 0x404E954: start_thread (pthread_create.c:300) ==10341== by 0x412EE7D: clone (clone.S:130) ==10341== Address 0x42db290 is 512 bytes inside a block of size 515 alloc'd ==10341== at 0x4023F50: malloc (vg_replace_malloc.c:236) ==10341== by 0x805F63B: js_alloc (JsStrOS.c:66) ==10341== by 0x8063781: compress_init_state (Compress.c:90) ==10341== by 0x8064962: compress_data (Compress.c:940) ==10341== by 0x804C838: udpnotfound (MaraDNS.c:2070) ==10341== by 0x805839C: give_answer (recursive.c:2524) ==10341== by 0x8058CE5: recurse_call (recursive.c:2794) ==10341== by 0x8059AE7: recurse_call (recursive.c:3191) ==10341== by 0x805877E: recurse_thread (recursive.c:2637) ==10341== by 0x404E954: start_thread (pthread_create.c:300) ==10341== by 0x412EE7D: clone (clone.S:130) ==10341== .... maradns do not crash here, and still runs here (this is probably becuase valgrind changes libc malloc/free, so it is here not so catastrophic) Configuration file sredniczarny:/home/baryluk/Dane/linux/maradns-dos/maradns-1.4.03# egrep -v '^#|^$' /etc/maradns/mararc csv1 = {} bind_address = "127.0.0.1" chroot_dir = "/etc/maradns" maradns_uid = 132 maradns_gid = 141 maxprocs = 96 no_fingerprint = 0 default_rrany_set = 3 max_chain = 8 max_ar_chain = 1 max_total = 20 verbose_level = 1 ipv4_alias = {} ipv4_alias["icann"] = "198.41.0.4,192.228.79.201,192.33.4.12,128.8.10.90,192.203.230.10,192.5.5.241,192.112.36.4,128.63.2.53,192.36.148.17,192.58.128.30,193.0.14.129,199.7.83.42,202.12.27.33" ipv4_alias["osrc"] = "199.166.24.1,205.189.73.102,199.166.24.3,207.126.103.16,195.117.6.10,205.189.73.10,204.57.55.100,213.196.2.97" ipv4_alias["alternic"] = "160.79.129.192,24.6.78.12,160.79.133.70,65.15.8.202,216.162.42.240,195.224.64.190,160.79.133.66,216.162.42.185" ipv4_alias["opennic"] = "131.161.247.226,209.151.84.102,64.247.218.140,64.247.218.149,209.104.33.250,209.104.63.249,209.151.84.103,199.175.137.211,207.6.128.246,65.243.92.254" ipv4_alias["lokalna"] = "169.254.0.0/16" ipv4_alias["localhost"] = "127.0.0.0/8" ipv4_alias["xen"] = "10.0.42.0/24" recursive_acl = "localhost,lokalna,xen" maximum_cache_elements = 4096 ipv4_alias["polskie_rooty"] = "195.187.245.44,193.0.80.11,212.51.192.5,217.17.34.50,149.156.1.3,149.156.2.101,80.50.50.10,193.0.0.193,157.25.5.30,192.36.125.2" root_servers = {} root_servers["."] = "icann" timeout_seconds = 7 hide_disclaimer = "YES" sredniczarny:/home/baryluk/Dane/linux/maradns-dos/maradns-1.4.03# Regards, Witek -- Witold Baryluk JID: witold.baryluk // jabster.pl
signature.asc
Description: Digital signature