View Issue Details

IDProjectCategoryView StatusLast Update
0001790unrealircdpublic2004-05-11 11:29
Reporterblotter45 Assigned To 
PrioritynormalSeverityfeatureReproducibilityalways
Status closedResolutionopen 
Product Version3.2 
Summary0001790: segfault on startup with Unreal 3.2 final
Descriptioncould this be related to any of the modules I have loaded? I removed the include for spamfilter.conf and the segfault still happens on startup.
Additional Informationircd@odin2:~/tealc/Unreal3.2Leaf$ ./unreal start
Starting UnrealIRCd
 _ _ _ ___________ _____ _
| | | | | |_ _| ___ \/ __ \ | |
| | | |_ __ _ __ ___ __ _| | | | | |_/ /| / \/ __| |
| | | | '_ \| '__/ _ \/ _` | | | | | / | | / _` |
| |_| | | | | | | __/ (_| | |_| |_| |\ \ | \__/\ (_| |
 \___/|_| |_|_| \___|\__,_|_|\___/\_| \_| \____/\__,_|
                           v3.2
                     using OpenSSL 0.9.7d 17 Mar 2004
                     using zlib 1.1.4
                     using libcurl/7.11.1 OpenSSL/0.9.7d zlib/1.1.4 c-ares/1.2.0

* Loading IRCd configuration ..
./unreal: line 36: 12548 Segmentation fault (core dumped) /home/ircd/tealc/Unreal3.2Leaf/src/ircd
Possible error encountered (IRCd seemily not started)
=====================================================
Check above for possible errors, and this output of
ircd.log. If you cannot solve the problem, read
Unreal.nfo on where to get support
=====================================================
tail: /home/ircd/tealc/Unreal3.2Leaf/ircd.log: No such file or directory

ircd@odin2:~/tealc/Unreal3.2Leaf$ gdb src/ircd core
GNU gdb 5.3
Copyright 2002 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-slackware-linux"...
Core was generated by `/home/ircd/tealc/Unreal3.2Leaf/src/ircd'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/lib/libssl.so.0...done.
Loaded symbols for /usr/lib/libssl.so.0
Reading symbols from /usr/lib/libcrypto.so.0...done.
Loaded symbols for /usr/lib/libcrypto.so.0
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 /usr/lib/libz.so.1...done.
Loaded symbols for /usr/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/AD196B0C.commands.so...done.
Loaded symbols for tmp/AD196B0C.commands.so
Reading symbols from tmp/D80319A1.m_getinfo.so...done.
Loaded symbols for tmp/D80319A1.m_getinfo.so
Reading symbols from tmp/120FDF03.m_ircops.so...done.
Loaded symbols for tmp/120FDF03.m_ircops.so
Reading symbols from tmp/32DFEC6F.m_jumpserver.so...done.
Loaded symbols for tmp/32DFEC6F.m_jumpserver.so
Reading symbols from tmp/3802040F.m_privdeaf.so...done.
Loaded symbols for tmp/3802040F.m_privdeaf.so
Reading symbols from tmp/B1058E46.joinpartsno.so...done.
Loaded symbols for tmp/B1058E46.joinpartsno.so
Reading symbols from tmp/257EBE5B.commandsno.so...done.
Loaded symbols for tmp/257EBE5B.commandsno.so
Reading symbols from tmp/C9C3DDAB.netadmins.so...done.
Loaded symbols for tmp/C9C3DDAB.netadmins.so
Reading symbols from tmp/EC671AE5.hideserver.so...done.
Loaded symbols for tmp/EC671AE5.hideserver.so
#0 0x080797f4 in _test_spamfilter (conf=Cannot access memory at address 0x9
) at s_conf.c:4969
4969 if (!(cep = config_find_entry(ce->ce_entries, "action")))
(gdb) bt
#0 0x080797f4 in _test_spamfilter (conf=Cannot access memory at address 0x9
) at s_conf.c:4969
Cannot access memory at address 0x1
3rd party modules

Activities

blotter45

2004-05-07 04:04

reporter   ~0006115

I found what was causing this ;)

When I compiled Unreal 3.2 on this box, it had OpenSSL 0.9.7c on it.. A short time afterwards, OpenSSL was upgraded to 0.9.7d on the box. This was causing curl to fail, and the ircd to segfault when I tried to start it..

So basically what this means is (correct me if I'm wrong), anyone using Unreal 3.2 with remote includes cannot upgrade their OpenSSL version unless they also re-compile Unreal and curl, otherwise the ircd will segfault the next time its restarted.

Without curl and remote includes, Unreal can restart with no problems at all, even if the OpenSSL version installed doesn't match the version that was in use during compilation.

 I hope somebody has a way around this problem with curl (besides using curl without ssl), because if an important update for OpenSSL is released in the future, I doubt if everybody wants to re-compile unreal and curl just because of that :(

vonitsanet

2004-05-07 06:31

reporter   ~0006116

Anyway i don't think that is SOOO difficult to recompile unreal..

blotter45

2004-05-07 07:03

reporter   ~0006118

No it's not difficult, but that's not the point. If someone who is running unreal with curl+ssl has to upgrade OpenSSL for whatever reason (some vulnerability is discovered etc), and then a while later their box is rebooted, or if their ircd needs to be restarted for some other reason, the ircd will segfault on startup and they won't know why (unless they read this).

I'm probably just going to use curl without ssl support for now, that way this won't become a problem for other servers on the network.

syzop

2004-05-07 12:26

administrator   ~0006120

heh I'm not surprised, openssl has been giving me weird kind of issues too in the past... They also don't seem to care much about it, here's an excerpt from 'INSTALL':

 Note on shared libraries
 ------------------------

 Shared library is currently an experimental feature. The only reason to
 have them would be to conserve memory on systems where several program
 are using OpenSSL. Binary backward compatibility can't be guaranteed
 before OpenSSL version 1.0.

syzop

2004-05-11 11:29

administrator   ~0006162

I guess this can be closed then :p.

Issue History

Date Modified Username Field Change
2004-05-07 02:44 blotter45 New Issue
2004-05-07 04:04 blotter45 Note Added: 0006115
2004-05-07 06:31 vonitsanet Note Added: 0006116
2004-05-07 07:03 blotter45 Note Added: 0006118
2004-05-07 12:26 syzop Note Added: 0006120
2004-05-11 11:29 syzop Status new => closed
2004-05-11 11:29 syzop Note Added: 0006162