View Issue Details

IDProjectCategoryView StatusLast Update
0001279unrealircdpublic2003-09-29 16:38
Reporterl0ngb0ng Assigned To 
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionopen 
Product Version3.2-beta18 
Summary0001279: CRASH ON OPERSERV
DescriptionLinking OperServ crashes all b18 servers.
Steps To ReproduceLink HabberNet OperServ
Additional Information-bash-2.05b$ gdb src/ircd ircd.core
GNU gdb 4.18 (FreeBSD)
Copyright 1998 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-unknown-freebsd"...Deprecated bfd_read called at /usr/src/gnu/usr.bin/binutils/gdb/../../../../contrib/gdb/gdb/dbxread.c line 2627 in elfstab_build_psymtabs
Deprecated bfd_read called at /usr/src/gnu/usr.bin/binutils/gdb/../../../../contrib/gdb/gdb/dbxread.c line 933 in fill_symbuf

Core was generated by `ircd'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/local/lib/libssl.so.3...done.
Reading symbols from /usr/local/lib/libcrypto.so.3...done.
Reading symbols from /usr/lib/libcrypt.so.2...done.
Reading symbols from /usr/lib/libz.so.2...done.
Reading symbols from /usr/lib/libc.so.4...done.
Reading symbols from /usr/home1/rjp/Unreal/src/modules/commands.so...done.
Reading symbols from /usr/libexec/ld-elf.so.1...done.
#0 ircvsprintf (str=0x8123a60 ":IRC.CannabisCulture.com NOTICE l0ngb0ng :Stats 'u' requested by OperStats.CannabisCulture.com (ents)\r\n",
    format=0xbfbff518 "@%s)", vl=0xbfbff8ec "#") at ircsprintf.c:289
289 if ((*str = *p1))
(gdb)
3rd party modules

Activities

syzop

2003-09-29 00:02

administrator   ~0003731

Last edited: 2003-09-29 00:06

Well it looks like a SERVER is requesting /stats so it's really a services issue, as you can see we don't seem to support that.... I'll see what codemastr has to say.

[and ignore Sinus, that 3.1* bug has NOTHING to do with this]

edited on: 09-29-03 00:06

syzop

2003-09-29 00:27

administrator   ~0003732

Just to be sure, could you type the following in gdb:
bt
p backupbuf

l0ngb0ng

2003-09-29 01:10

reporter   ~0003733

[FROM MY BOX]:


[ircd@THC]:[3]:(~/Unreal)$ gdb src/ircd ircd.core
GNU gdb 5.2.1 (FreeBSD)
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-undermydesk-freebsd"...
Core was generated by `ircd'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/lib/libssl.so.3...done.
Loaded symbols for /usr/lib/libssl.so.3
Reading symbols from /usr/lib/libcrypto.so.3...done.
Loaded symbols for /usr/lib/libcrypto.so.3
Reading symbols from /usr/lib/libcrypt.so.2...done.
Loaded symbols for /usr/lib/libcrypt.so.2
Reading symbols from /usr/lib/libz.so.2...done.
Loaded symbols for /usr/lib/libz.so.2
Reading symbols from /usr/lib/libc.so.5...done.
Loaded symbols for /usr/lib/libc.so.5
Reading symbols from src/modules/commands.so...done.
Loaded symbols for src/modules/commands.so
Reading symbols from /usr/libexec/ld-elf.so.1...done.
Loaded symbols for /usr/libexec/ld-elf.so.1
#0 ircvsprintf (str=0x8121c97 "nts)\r\n", format=0xbfbff5cf "@%s)", vl=0xbfbff9c4 "#") at ircsprintf.c:289
289 if ((*str = *p1))
(gdb)


(gdb) bt
#0 ircvsprintf (str=0x8121c97 "nts)\r\n", format=0xbfbff5cf "@%s)", vl=0xbfbff9c4 "#") at ircsprintf.c:289
#1 0x0808bfa2 in vsendto_one (to=0x8188800,
    pattern=0xbfbff590 ":IRC.Pot-TV.Net NOTICE l0ngb0ng :Stats '%c' requested by %s (%s@%s)", vl=0xbfbff9b8 "u")
    at send.c:239
#2 0x0808d436 in sendto_snomask (snomask=64, pattern=0x80a7840 "Stats '%c' requested by %s (%s@%s)") at send.c:1376
#3 0x08090b51 in m_stats (cptr=0x18, sptr=0x8197400, parc=3, parv=0x811a400) at s_stats.c:407
#4 0x08068e71 in parse (cptr=0x8197400, buffer=0x81974e4 ":OperStats.CannabisCulture.com 2", bufend=0x8197515 "")
    at parse.c:471
#5 0x08067c65 in dopacket (cptr=0x8197400,
    buffer=0x811ada0 ":OperStats.CannabisCulture.com + IRC.Pot-TV.Net\r\n\n:OperStats.CannabisCulture.com 2 u IRC.Pot-TV.Net\r\n\n:OperStats.CannabisCulture.com 8 OperStats.CannabisCulture.com IRC.Pot-TV.Net\r\n\n:OperStats.Cannabi"..., length=688) at packet.c:137
#6 0x0806e2b9 in read_packet (cptr=0x8197400, rfd=0x18) at s_bsd.c:1443
#7 0x0806ebe4 in read_message (delay=8, listp=0x8148ea0) at s_bsd.c:1927
0000008 0x0806544b in main (argc=0, argv=0x81446c0) at ircd.c:1387
#9 0x08052665 in _start ()
(gdb)


(gdb) p backupbuf
$1 = ":OperStats.CannabisCulture.com 2 u IRC.Pot-TV.Net\0obalNotice\0et OperStats.CannabisCulture.com 1 + * :hi\0l Noticer\0e\0\0,#activism,#medpot,#CIA,#cannabuzz,#freeweedclub,#stoners,#reggae,#gaming,#mushroom"...
(gdb)

syzop

2003-09-29 16:38

administrator   ~0003736

k, codemastr says the same.
We don't support /STATS issued by servers, as I explained servers shouldn't do that kind of stuff, a server shouldn't JOIN/PART a channel either for example :p.
It didn't crash in beta17 (and earlier) because there was a check (so it simply didn't work, but didn't crash either).
Tell the author to fix his program.
He should use a psuedo client, like 'OperStats' and let him do the stats (:OperStats STATS ...).

Issue History

Date Modified Username Field Change
2003-09-28 23:49 l0ngb0ng New Issue
2003-09-29 00:02 syzop Note Added: 0003731
2003-09-29 00:06 syzop Note Edited: 0003731
2003-09-29 00:27 syzop Note Added: 0003732
2003-09-29 01:10 l0ngb0ng Note Added: 0003733
2003-09-29 16:38 syzop Status new => closed
2003-09-29 16:38 syzop Note Added: 0003736