View Issue Details

IDProjectCategoryView StatusLast Update
0002777unrealircdpublic2006-01-27 10:26
ReporterchasingsolAssigned Tosyzop 
PrioritynormalSeveritycrashReproducibilityrandom
Status resolvedResolutionfixed 
Platformi386OSLinuxOS VersionCentOS 4.2 2.6.9
Product Version3.2.3 
Target VersionFixed in Version3.2.4 
Summary0002777: Crash bug apparently SSL related
DescriptionPeriodic occurance of IRCD crashing with a large number of SSL errors output by the IRCD immediately before the crash.

[10:46:56 pm] [N] Exiting ssl client amber[ambrosia@xx.xx.xx.xx.3945]: SSL_write(): Internal OpenSSL error or protocol error
[10:46:56 pm] [N] Exiting ssl client amber[ambrosia@xx.xx.xx.xx.3945]: SSL_write(): Internal OpenSSL error or protocol error
[10:46:56 pm] [N] Exiting ssl client amber[ambrosia@xx.xx.xx.xx.3945]: SSL_write(): Internal OpenSSL error or protocol error
[10:46:56 pm] [N] Exiting ssl client amber[ambrosia@xx.xx.xx.xx.3945]: SSL_write(): Internal OpenSSL error or protocol error
[10:46:56 pm] [N] Exiting ssl client amber[ambrosia@xx.xx.xx.xx.3945]: SSL_write(): Internal OpenSSL error or protocol error
[10:46:56 pm] [N] Exiting ssl client amber[ambrosia@xx.xx.xx.xx.3945]: SSL_write(): Internal OpenSSL error or protocol error
[10:46:56 pm] [N] Exiting ssl client amber[ambrosia@xx.xx.xx.xx.3945]: SSL_write(): Internal OpenSSL error or protocol error
[10:46:56 pm] [N] Exiting ssl client amber[ambrosia@xx.xx.xx.xx.3945]: SSL_write(): Internal OpenSSL error or protocol error

The above message is repeated approximately 60 times before the IRCD crashes. This condition has been noted primary from those with unstable connections to the internet. It's occurrance is on average 3 or 4 days from IRCD start.
Steps To ReproduceUnknown
Additional InformationOpenSSL 0.9.8a 11 Oct 2005
zlib 1.2.1.2
libcurl/7.15.1 OpenSSL/0.9.8a zlib/1.2.1.2 c-ares/1.3.0 libidn/0.5.6
gcc (GCC) 3.4.4 20050721 (Red Hat 3.4.4-2)
TagsNo tags attached.
3rd party modules

Activities

syzop

2006-01-27 08:24

administrator   ~0011075

So it crashed.. and you have a core file? (without it, we are pretty helpless :P).
Assuming so, do this:
-
gdb src/ircd name.of.core.file
bt
-

djGrrr

2006-01-27 09:23

reporter   ~0011076

Last edited: 2006-01-27 09:26

i just uploaded the output of bt in gdb, with the 2 ip addresses replaced of course :)

had to gzip it because it was over 20000 lines long (basically just the same thing repeated many times)

2006-01-27 09:24

 

gdb.txt.gz (71,266 bytes)

syzop

2006-01-27 10:02

administrator   ~0011077

Ok, that helped.

It looks like the junk snomask (snomask +j) itself is the problem (that's where the SSL error message is sent to).

An error is encountered when sending a message (connecting msg in this case, but irrelevant) to 'amber', which causes an error message to be sent to... amber, which causes a message to be sent to... well, you get the idea ;).

This should be an easy fix, I'll get back to you soon.

syzop

2006-01-27 10:21

administrator   ~0011078

This simple patch should fix it: http://www.vulnscan.org/tmp/sslcrashwithjunksnomask.patch

To apply the patch:
1. Go to your Unreal3.2 directory
2. Type: cat /path/to/sslcrashwithjunksnomask.patch|patch -p0
3. The above should not give any error
4. Recompile Unreal: make && make install

Looking at the code, I'm pretty sure this fixes it, but please let me know as soon as possible in case you crash with this fix too (just drop a quick email to syzop@vulnscan.org).

I'll put this fix in 3.2.4 (and/or next rc) also.

syzop

2006-01-27 10:26

administrator   ~0011079

Thanks, fixed in .442

Issue History

Date Modified Username Field Change
2006-01-27 02:08 chasingsol New Issue
2006-01-27 08:24 syzop Note Added: 0011075
2006-01-27 09:23 djGrrr Note Added: 0011076
2006-01-27 09:24 djGrrr File Added: gdb.txt.gz
2006-01-27 09:24 djGrrr Note Edited: 0011076
2006-01-27 09:26 djGrrr Note Edited: 0011076
2006-01-27 10:02 syzop Note Added: 0011077
2006-01-27 10:02 syzop View Status public => private
2006-01-27 10:21 syzop Note Added: 0011078
2006-01-27 10:26 syzop View Status private => public
2006-01-27 10:26 syzop Status new => resolved
2006-01-27 10:26 syzop Fixed in Version => 3.2.4
2006-01-27 10:26 syzop Resolution open => fixed
2006-01-27 10:26 syzop Assigned To => syzop
2006-01-27 10:26 syzop Note Added: 0011079