View Issue Details

IDProjectCategoryView StatusLast Update
0002501unrealircdpublic2005-06-06 20:30
ReporterMonk Assigned To 
PrioritynormalSeveritycrashReproducibilityrandom
Status closedResolutionduplicate 
OSUnix 
Product Version3.2.3 
Summary0002501: Segmentation Fault
DescriptionCore Dump:
This GDB was configured as "i586-suse-linux"...
Core was generated by `/home/mindirc/lircd/lircd'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /lib/libcrypt.so.1...done.
Loaded symbols for /lib/libcrypt.so.1
Reading symbols from /lib/libnsl.so.1...done.
Loaded symbols for /lib/libnsl.so.1
Reading symbols from /lib/libz.so.1...done.
Loaded symbols for /lib/libz.so.1
Reading symbols from /lib/libdl.so.2...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib/libc.so.6...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from tmp/2D546E75.commands.so...done.
Loaded symbols for tmp/2D546E75.commands.so
Reading symbols from tmp/B8DD08C6.cloak.so...done.
Loaded symbols for tmp/B8DD08C6.cloak.so
#0 0x08064d46 in find_cache_number (rptr=0x0, numb=0x825ad5c "Pf´sú\b") at res.c:1443
1443 for (i = 0; HE(cp)->h_addr_list[i]; i++)

Steps To ReproduceSorry, no idea. No preceeding log messages.
TagsNo tags attached.
3rd party modules

Relationships

related to 0002499 resolvedsyzop find_cache_number crash 
related to 0002505 closed Crash in find_cache_number - res.c:1446 

Activities

syzop

2005-04-27 17:44

administrator   ~0009834

These bugs are hard to trace, so I'm gonna flood you with some questions :P.
1. What precise OS are you on? (name + version)
2. Did you recently reconfigure/recompile unreal, like.. changing a config.h setting or running ./Config to enable/disable something?
3. How many clients were connected locally?
4. How many servers were connected locally?
5. Do you use any services? If so, which?
6. How long have you been running unrealircd without problems? Or did this happen anytime before?
7. If you have multiple servers, did they ever experience the same issue?

Hm.. that's all I can think of for now.

HERZ

2005-04-28 16:52

reporter   ~0009852

Well,

yesterday we had an crazy dns problem, then server was crashing..
Someone has removed 1 server from Round Robin and set this
Server in Servername IN CNAME irc (to Round Robin Adress).
After 10 Minutes some other Techadmin add this Server to
Round Robin and deleted the CNAME irc. But ....
CNAME irc is TTL 86400 and Round Robin irc is TTL 10.
After this changes , Servers crashing all Day...
Today, Servers running fine, because noone has change the dns config.

Just my 3 Cents...

Btw. Its not an SSL Problem , Server was running fine for WEEKS !

syzop

2005-05-18 10:36

administrator   ~0009959

Monk, you can help out by running the ircd with valgrind (www.valgrind.org, but perhaps your distro already has a nice package for it). Then run the ircd by executing the following command (taken from HERZ ;p):
valgrind --error-limit=no --verbose --time-stamp=yes --log-file=unrealdebug.log src/ircd

Whenever you crash, you can mail me the log (zipped?) to [email protected]

Thanks :)

Monk

2005-05-19 17:30

reporter   ~0009961

Sorry for the delay in answering your questions. The first crash was on a boy not owned by me so I'll have to get the details.

Meanwhile I had two crashes on my box too.

Answers to your questions:
1. OS: Debian 3.1 (Sarge) - all standard via apt, nothing self compiled sofar
2. Crash is from a fresh compile, nothing changed whatsoever after compiling
3. I guess about 700
4. Only connection was to a hub / the box is running a second unrealircd connected to the same hub
5. Anope service 1.7.8
6. Happens now irregularly but left the realm of "rarely"
7. Experiencing it on different server too

Additional infos:
a) Had a crash before but debug dump was empty. Recompiled after this experience from a clean source. Had prolly been empty because I compiled the second ircd from the same source files with slightly different settings

b) The crash mentioned in a) did happen right after taking it out of DNS.

c) Servers are compiled for 4096 users, but limited in the conf to 1k currently

d) Servers are compiled with (of course using the ./Config script ;)):
./configure --with-showlistmodes --enable-ssl --enable-ziplinks --enable-prefixaq --with-listen=20 --with-dpath=/home/mindirc/lircd1 --with-spath=/home/mindirc/lircd1/lircd1 --with-nick-history=2000 --with-sendq=5000000 --with-bufferpool=18 --with-hostname=yxz --with-permissions=0600 --with-fd-setsize=4096 --enable-dynamic-linking

e) Currently running the ircd under valgrind with the proposed settings

f) The crash of the following debug dump was not the direct consequence of any DNS changes.

#0 0x080670dd in find_cache_number (rptr=0x0, numb=0x87a7530 "Õ\232D3S\016") at res.c:1443
1443 for (i = 0; HE(cp)->h_addr_list[i]; i++)
(gdb) bt full
#0 0x080670dd in find_cache_number (rptr=0x0, numb=0x87a7530 "Õ\232D3S\016") at res.c:1443
        cp = (aCache *) 0x84168a0
        hashv = 83
        i = 0
#1 0x08065ee8 in gethost_byaddr (addr=0x87a7530 "Õ\232D3S\016", lp=0xbffff580) at res.c:466
        cp = (aCache *) 0x84168a0
#2 0x0806b23d in start_of_normal_client_handshake (acptr=0x87a71f0) at s_bsd.c:1353
        lin = {next = 0x214, flags = 0, value = {cptr = 0x87a71f0, chptr = 0x87a71f0, aconf = 0x87a71f0, wptr = 0x87a71f0, whowas = 0x87a71f0,
    cp = 0x87a71f0 "\20005\b", ban = {banstr = 0x87a71f0 "\20005\b", who = 0x0, when = 0}}}
#3 0x0806af28 in add_connection (cptr=0x819a938, fd=532) at s_bsd.c:1338
        addr = {sin_family = 2, sin_port = 21262, sin_addr = {s_addr = 860134101}, sin_zero = "\000\000\000\000\000\000\000"}
        len = 16
        acptr = (aClient *) 0x87a71f0
        bconf = (ConfigItem_ban *) 0x0
        i = 138504352
        j = 0
#4 0x0806ba4b in read_message (delay=1, listp=0x8166880) at s_bsd.c:1872
        s = 138504352
        cptr = (aClient *) 0x819a938
        nfds = 532
        wait = {tv_sec = 0, tv_usec = 939000}
        read_set = {__fds_bits = {0 <repeats 128 times>}}
        write_set = {__fds_bits = {0 <repeats 128 times>}}
        j = 2
        delay2 = 1
        res = 0
        length = 532
        fd = 532
        i = 138504352
        sockerr = 138504352
#5 0x0806012e in main (argc=0, argv=0xbffffb34) at ircd.c:1564
        oldtimeofday = 1116530825
        uid = 0
        euid = 0
        delay = 1
        corelim = {rlim_cur = 4294967295, rlim_max = 4294967295}
        nextfdlistcheck = 1116530820

HTH,

Monk

syzop

2005-05-19 18:21

administrator   ~0009962

Thanks for the additional info.
Good to hear you are running w/valgrind now as well.

syzop

2005-06-06 20:30

administrator   ~0010051

moving all find_cache_number crashes --> 0002499

Issue History

Date Modified Username Field Change
2005-04-26 16:40 Monk New Issue
2005-04-27 17:44 syzop Note Added: 0009834
2005-04-28 16:26 syzop Relationship added related to 0002505
2005-04-28 16:52 HERZ Note Added: 0009852
2005-05-18 10:36 syzop Note Added: 0009959
2005-05-18 10:37 syzop Relationship added related to 0002499
2005-05-19 17:30 Monk Note Added: 0009961
2005-05-19 18:21 syzop Note Added: 0009962
2005-06-06 20:30 syzop Status new => closed
2005-06-06 20:30 syzop Note Added: 0010051
2005-06-06 20:30 syzop Resolution open => duplicate