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

Attachment: signature.asc
Description: Digital signature

Reply via email to