View Issue Details

IDProjectCategoryView StatusLast Update
0001851unrealircdpublic2004-06-01 18:00
ReporterTroco Assigned Tocodemastr 
PrioritynormalSeveritycrashReproducibilityalways
Status resolvedResolutionfixed 
Platformwin32OSXP ProfessionalOS Version5.1 - 2600
Summary0001851: Another core
DescriptionException:
    Access Violation
-----------------
Backup Buffer:
    psLag-137853656
-----------------
Registers:
    EAX=0x0140faaf EBX=0x00c645b0 ECX=0x00000000
    EDX=0x00000000 ESI=0x009a41a0 EDI=0x77d13c1f
    EIP=0x0044477a EBP=0x0140f60c ESP=0x0140f5c4
-----------------
Stack Trace:
    Module: WIRCD
        #0 src/ircsprintf.c:289: ircvsprintf
        #1 src/ircsprintf.c:471: ircsprintf
        #2 src/send.c:1796: sendto_connectnotice
        #3 src/s_misc.c:451: exit_client
        #4 src/s_bsd.c:1921: read_message
        #5 src/ircd.c:1551: SocketLoop
    Module: MSVCRTD
        #6 src/ircd.c:1551: beginthread
    Module: kernel32
        #7 src/ircd.c:1551: RegisterWaitForInputIdle
TagsNo tags attached.
3rd party modules

Activities

syzop

2004-06-01 12:13

administrator   ~0006494

Which version? (build id.. from /info, the last number.. eg: '.29')
I hate to ask that every time, could you mention it in the future in every of your bugreports? Thanks ;p.

syzop

2004-06-01 12:17

administrator   ~0006495

Correction... could you just include the FULL text (and NOT censored/ripping stuff out ;p) of the core file. I hate it you are hiding stuff all the time.

codemastr

2004-06-01 12:21

reporter   ~0006496

Yeah, we output all the stuff that the file contains, because that's what we need to solve the problem. If you don't want to give it to us, that's your choice, but we will probably be unable to solve it then.

Troco

2004-06-01 12:29

reporter   ~0006499

Generated at Tue Jun 01 11:24:19 2004

Windows XP Service Pack 1 (5.1.2600)
Unreal3.2[FinWXeOoZEm3] (1.1.1.1.2.38 2004/05/30 23:29:29)
-----------------
Memory Information:
    Physical: (Available:29MB/Total:223MB)
    Virtual: (Available:2010MB/Total:2047MB)
-----------------
Exception:
    Access Violation
-----------------
Backup Buffer:
    psLag-137853656
-----------------
Registers:
    EAX=0x0140faaf EBX=0x00c645b0 ECX=0x00000000
    EDX=0x00000000 ESI=0x009a41a0 EDI=0x77d13c1f
    EIP=0x0044477a EBP=0x0140f60c ESP=0x0140f5c4
-----------------
Stack Trace:
    Module: WIRCD
        #0 src/ircsprintf.c:289: ircvsprintf
        #1 src/ircsprintf.c:471: ircsprintf
        #2 src/send.c:1796: sendto_connectnotice
        #3 src/s_misc.c:451: exit_client
        #4 src/s_bsd.c:1921: read_message
        #5 src/ircd.c:1551: SocketLoop
    Module: MSVCRTD
        #6 src/ircd.c:1551: beginthread
    Module: kernel32
        #7 src/ircd.c:1551: RegisterWaitForInputIdle

My apologizes.

syzop

2004-06-01 12:33

administrator   ~0006500

That helps :).
Try upgrading to latest CVS (.41), a couple of NICKIP crashbugs were fixed.

Troco

2004-06-01 12:37

reporter   ~0006501

Last edited: 2004-06-01 12:38

Another more recent,
Generated at Tue Jun 01 16:32:40 2004

Windows XP Service Pack 1 (5.1.2600)
Unreal3.2[FinWXeOoZEm3] (1.1.1.1.2.39 2004/05/31 21:10:40)
-----------------
Memory Information:
    Physical: (Available:29MB/Total:223MB)
    Virtual: (Available:2010MB/Total:2047MB)
-----------------
Exception:
    Access Violation
-----------------
Backup Buffer:
    NOTICE Trocotronic :PING 690802371 MIDOLAG
-----------------
Registers:
    EAX=0x0140f681 EBX=0x00c645b0 ECX=0x00000000
    EDX=0x00000000 ESI=0x00921190 EDI=0x77d13c1f
    EIP=0x0044477a EBP=0x0140f5a4 ESP=0x0140f55c
-----------------
Stack Trace:
    Module: WIRCD
        #0 src/ircsprintf.c:289: ircvsprintf
        #1 src/s_extra.c:169: ircd_log
        #2 src/s_misc.c:432: exit_client
        #3 src/s_bsd.c:1921: read_message
        #4 src/ircd.c:1532: SocketLoop
    Module: MSVCRTD
        #5 src/ircd.c:1532: beginthread
    Module: kernel32
        #6 src/ircd.c:1532: RegisterWaitForInputIdle

It's from latest CVS.

editada el: 2004-06-01 12:38

Troco

2004-06-01 12:53

reporter   ~0006502

It ocurs always that I use /disconnect (with /quit bla no problems).

syzop

2004-06-01 13:01

administrator   ~0006503

Last edited: 2004-06-01 13:04

Yes, well.. let us know if you still have it with .41 ;P. both nickip and socket error reporting bugs have been fixed in that.

*edit*
> It's from latest CVS.
But... it says .39, latest is .41. Be sure to do a clean compile? I dunno.

edited on: 2004-06-01 13:04

Troco

2004-06-01 13:13

reporter   ~0006504

Yes, but if your guide is releaseid I have to tell that I use my own CVS system and it changes id exp (cacthed from changes). In changes file there is:
* $Id: Changes,v 1.1.1.1.2.39 2004/05/31 21:10:40 Trocotronic Exp $
...
- And another one, should be fixed now.

(last change made).
My own CVS system it's built in order to translate entire unreal to spanish.

syzop

2004-06-01 14:14

administrator   ~0006506

Right, well.. we can't support that. Please use official unmodified cvs if you report crashbugs (shouldn't be hard to just compile). In this particular case you are "lucky" because my win cvs build from yesterday is .41 -> http://www.vulnscan.org/UnrealIrcd/win_cvs_download.php?f=Unreal3.2-cvs20040531.exe
And also check if you still crash without using any 3rd party modules.
[Even if it still crashes, debugoutput would be more trustfull...]

I cannot reproduce it here, tried /disconnect various times, with and without cloaked host, with +sF and with&without PROTOCTL HCN. I got logging enabled etc. Even linked to another server and services to see if it then crashes, but still nothing.

Troco

2004-06-01 14:25

reporter   ~0006507

Last edited: 2004-06-01 14:28

Well, I've installed your cvs build and I get the "same" core:
Generated at Tue Jun 01 18:24:29 2004

Windows XP Service Pack 1 (5.1.2600)
Unreal3.2cvs20040531[FinWXeOoZE] (1.1.1.1.2.1.2.1.2.2234.2.41 2004/05/31 18:49:24)
-----------------
Memory Information:
    Physical: (Available:39MB/Total:223MB)
    Virtual: (Available:2010MB/Total:2047MB)
-----------------
Exception:
    Access Violation
-----------------
Backup Buffer:
    MODE #rallados nt
-----------------
Registers:
    EAX=0x011af68d EBX=0x00f4b500 ECX=0x00000000
    EDX=0x00000000 ESI=0x009de960 EDI=0x77d13c1f
    EIP=0x0045640a EBP=0x011af5f4 ESP=0x011af5ac
-----------------
Stack Trace:
    Module: wircd
        #0 c:\dev\unreal3.2\src\ircsprintf.c:289: ircvsprintf
        #1 c:\dev\unreal3.2\src\ircsprintf.c:471: ircsprintf
        #2 c:\dev\unreal3.2\src\send.c:1796: sendto_connectnotice
        #3 c:\dev\unreal3.2\src\s_misc.c:451: exit_client
        #4 c:\dev\unreal3.2\src\s_bsd.c:1921: read_message
        #5 c:\dev\unreal3.2\src\ircd.c:1551: SocketLoop
    Module: MSVCR70D
        #6 c:\dev\unreal3.2\src\ircd.c:1551: beginthread
    Module: kernel32
        #7 c:\dev\unreal3.2\src\ircd.c:1551: RegisterWaitForInputIdle

There aren't any services or servers, I'm completly alone.
Furthermore, I have two more files (*.mdmp) about 215K and 46M. I'm connecting through SSL.

editada el: 2004-06-01 14:27

editada el: 2004-06-01 14:28

syzop

2004-06-01 14:51

administrator   ~0006508

Last edited: 2004-06-01 15:01

> Well, I've installed your cvs build and I get the "same" core:

Yeah, except the line numbers now make more sense ;).

> I'm connecting through SSL.

That's it :p. I'm now able to crash too... will take a look.

edited on: 2004-06-01 15:01

syzop

2004-06-01 14:58

administrator   ~0006509

Last edited: 2004-06-01 15:05

(void)exit_client(cptr, cptr, &me,
                    ((sockerr = get_sockerr(cptr))
                    ? STRERROR(sockerr) : "Client exited"));

->
sockerr becomes 5
STRERROR() [alias sock_strerror] doesn't recognize this error and returns NULL. I think we should change this to something like "Unknown error %d". Note that '5' is access denied, so there might be even a bug 'below this', but in any case.. returning NULL doesn't feel good :p.

So let's dig some deeper... on why it's actually returning 5 (!?)...

 in get_sockerr(), WSAGetLastError() returns 5... then the SOL_SOCKET/SO_ERROR stuff is done, which says the error is 0... So the value keeps at 5...

I just checked with cvs from a few days ago (before our new strerror stuff) and there it doesn't crash and the exit_client comment is 'Input/output error'. Fun eh ;).

edited on: 2004-06-01 15:05

syzop

2004-06-01 15:06

administrator   ~0006510

/me hands the bug over to codemastr ;P.

codemastr

2004-06-01 15:37

reporter   ~0006511

if (error < WSABASEERR) return strerror(error);
???

That would tell it to use the system error, which would be "Input/Output Error"

syzop

2004-06-01 16:27

administrator   ~0006519

Yeah, but the errornr we get from get_sockerr() is '5'... which is AFAIK not 'Input/Output Error' but 'Access denied' which is incorrect (see the whole story @ previous bugnote ;p)... Win32 ownz~

codemastr

2004-06-01 16:31

reporter   ~0006520

Well, if you use FormatMessage with a 5, you'll get "access denied", if you use strerror(5), you get "Input/Output Error". So, are you sure that by 5 they mean "Access denied" and not "Input/Output Error"? Or are you just guessing?

syzop

2004-06-01 17:03

administrator   ~0006523

I was using my memory (see those codes all the time) + m$ visual studio error lookup. I didn't expect error numbers to have different meanings depending on the weather... Anyway, if you think that the strerror() thing fixes it, then go ahead ;) [cannot test right now].

codemastr

2004-06-01 17:26

reporter   ~0006524

Ah, that's the problem then, you're not thinking like MS... things don't have to make sense :P

Anyway, I added the strerror() in .47, it works for me, but I guess I might as well wait till Troco can confirm it.

Troco

2004-06-01 17:40

reporter   ~0006525

Yeah, it seems that works fine :P

codemastr

2004-06-01 18:00

reporter   ~0006526

Ok, if it happens again, let us know!

Issue History

Date Modified Username Field Change
2004-06-01 12:09 Troco New Issue
2004-06-01 12:13 syzop Note Added: 0006494
2004-06-01 12:17 syzop Note Added: 0006495
2004-06-01 12:21 codemastr Note Added: 0006496
2004-06-01 12:29 Troco Note Added: 0006499
2004-06-01 12:33 syzop Note Added: 0006500
2004-06-01 12:37 Troco Note Added: 0006501
2004-06-01 12:38 Troco Note Edited: 0006501
2004-06-01 12:53 Troco Note Added: 0006502
2004-06-01 13:01 syzop Note Added: 0006503
2004-06-01 13:04 syzop Note Edited: 0006503
2004-06-01 13:13 Troco Note Added: 0006504
2004-06-01 14:14 syzop Note Added: 0006506
2004-06-01 14:25 Troco Note Added: 0006507
2004-06-01 14:27 Troco Note Edited: 0006507
2004-06-01 14:28 Troco Note Edited: 0006507
2004-06-01 14:51 syzop Note Added: 0006508
2004-06-01 14:53 syzop Note Edited: 0006508
2004-06-01 14:58 syzop Note Added: 0006509
2004-06-01 15:00 syzop Note Edited: 0006509
2004-06-01 15:01 syzop Note Edited: 0006508
2004-06-01 15:05 syzop Note Edited: 0006509
2004-06-01 15:06 syzop Note Added: 0006510
2004-06-01 15:37 codemastr Note Added: 0006511
2004-06-01 16:27 syzop Note Added: 0006519
2004-06-01 16:31 codemastr Note Added: 0006520
2004-06-01 17:03 syzop Note Added: 0006523
2004-06-01 17:26 codemastr Note Added: 0006524
2004-06-01 17:40 Troco Note Added: 0006525
2004-06-01 18:00 codemastr Status new => resolved
2004-06-01 18:00 codemastr Resolution open => fixed
2004-06-01 18:00 codemastr Assigned To => codemastr
2004-06-01 18:00 codemastr Note Added: 0006526