View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0001882 | unreal | ircd | public | 2004-06-18 08:29 | 2004-06-18 11:46 |
| Reporter | Gilou | Assigned To | syzop | ||
| Priority | normal | Severity | crash | Reproducibility | random |
| Status | closed | Resolution | open | ||
| Summary | 0001882: Crash around the tmp/ thing | ||||
| Description | Unreal has problems accessing the tmp/ thing for modules. Let's begin the story : We used to let the original install script unmodified, and we had : [error] Unable to open 'tmp' directory: No such file or directory, please create one with the appropriate permissions So we added something to create the $IRCDDIR/tmp. We used to have the m_antidccbug thing activated. Unreal randomly crashed (don't know if the module was called before), complaining about being unable to read the tmp/ .so file. So we deactivated it. Last news : Core was generated by `/home/ircd/IRCd/ircd'. Program terminated with signal 11, Segmentation fault. Error while mapping shared library sections: tmp/12FB402C.commands.so: No such file or directory. | ||||
| Additional Information | Few informations: Permission are correctly set. Our OSs aren't weird, they are various linux distributions, FreeBSD, ... so it is not OS specific. If I get answer of the same level I got for my other feature suggestions, I'll probably get angry. We run a large network, and we want this bug to get solved, so we can perform tests (well, depend of what we are asked to do). Here's a backtrace, other will come Error while reading shared library symbols: tmp/12FB402C.commands.so: No such file or directory. #0 0x080659c9 in ircvsprintf () (gdb) bt #0 0x080659c9 in ircvsprintf () #1 0x0808d83c in vsendto_one () #2 0x0808d817 in sendto_one () #3 0x402e9a2d in ?? () #4 0x402e9496 in ?? () #5 0x402e895e in ?? () #6 0x080694ac in parse () #7 0x08068555 in dopacket () 0000008 0x0806f0cd in start_of_normal_client_handshake () #9 0x0806fa3d in read_message () #10 0x080651eb in main () #11 0x401b6d06 in __libc_start_main () from /lib/libc.so.6 | ||||
| 3rd party modules | |||||
|
|
Well sorry, it might have nothing to do with the tmp/ directory, it's just gdb being unable to find the old .so, because of course, Unreal has been restarted and the filename has changed. Still, it crashed ;) modifié le : 2004-06-18 08:56 |
|
|
Another more explicit bt, but our s_user.c is modified, so the original line number is 1317 instead of 1351. Our modification is protected by #ifdef statements, and these are evaluated to false for this build, so there's no way it can be the reason of the crash. The same applies for s_kline.c, the line should be 532 instead of 537. #0 0x08084424 in Inet_ia2p (ia=0x845a048) at socket.c:209 #1 0x0807dbb7 in find_qline (cptr=0x8459d08, nick=0xbffff7bc "Gilou", ishold=0xbffff7b8) at s_kline.c:537 #2 0x08086f22 in m_nick (cptr=0x8187e88, sptr=0x8459d08, parc=3, parv=0x813d4c0) at s_user.c:1351 #3 0x080682c3 in parse (cptr=0x8187e88, buffer=0x8187f6c ":Hagrid &", bufend=0x8187f86 "") at parse.c:440 #4 0x080670c8 in dopacket (cptr=0x8187e88, buffer=0x813de60 ":Hagrid | +q\r\n:Hagrid & Gilou 1086355761\r\n\nin.epiknet.org\r\n@I ] :Hagrid ([email protected]) [Gilou] is now a co administrator (C)\r\n:Hagrid | +ohaCW\r\n] \r\n@1m ~ !10h5jL #som-online :LebrEf["..., length=42) at packet.c:138 #5 0x0806d37f in read_packet (cptr=0x8187e88, rfd=0xbffff95c) at s_bsd.c:1447 #6 0x0806dc51 in read_message (delay=1, listp=0x8152400) at s_bsd.c:1937 #7 0x080641a8 in main (argc=1, argv=0xbffffab4) at ircd.c:1432 |
|
|
Could you package (a .tar.gz, a .zip, whatever) your whole UnrealIRCd dir (source + core files + .so's + binary bla, just the whole Unreal3.2/ or whatever) and send it to me at [email protected]? (you leave me no other choice due to the mods). Then I'll certainly look into it. Thanks :) |
|
|
hm, nevermind. found. If you want to double check what I found was the issue, then do this (with that core file): > frame 1 That should print that the crash happend at line 'cip = (char *)Inet_ia2p(&cptr->ip);' > p cptr->fd That should print -256 I'll commit the fix within a few minutes. |
|
|
Fixed in latest CVS (.61): - Fixed find_qline crashes regarding except tkl 'type qline', reported by Gilou (0001882). - Fixed some CIDR bugs causing things not to match. If you still have this crash after upgrading, mail me at [email protected] |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2004-06-18 08:29 | Gilou | New Issue | |
| 2004-06-18 08:50 | Gilou | Note Added: 0006692 | |
| 2004-06-18 08:56 | Gilou | Note Edited: 0006692 | |
| 2004-06-18 09:32 | Gilou | Note Added: 0006693 | |
| 2004-06-18 10:41 | syzop | Note Added: 0006694 | |
| 2004-06-18 11:04 | syzop | Status | new => assigned |
| 2004-06-18 11:04 | syzop | Assigned To | => syzop |
| 2004-06-18 11:18 | syzop | Note Added: 0006695 | |
| 2004-06-18 11:46 | syzop | Status | assigned => closed |
| 2004-06-18 11:46 | syzop | Note Added: 0006696 |