View Issue Details

IDProjectCategoryView StatusLast Update
0001777unrealircdpublic2004-05-18 18:52
Reporterw00t Assigned To 
PrioritynormalSeveritycrashReproducibilityunable to reproduce
Status closedResolutionopen 
Product Version3.2-RC2 
Summary0001777: Crash with developmental (my own :P) services
DescriptionI know that 3.2Final has been released, but havent had time to upgrade yet... I read the core file, and it seems a bit odd anyhow... :/

I am totally clueless here.

I was working on some IRC services for windows, which I am writing from scratch. They connected fine, and stayed there for... 4 minutes or so when the IRCd cored. Doesnt seem to want to happen again. I did have the status window open, if somehow that contributed to it.
3rd party modules

Activities

codemastr

2004-05-02 21:51

reporter   ~0005983

I can almost asure you that it's because you're sending something illegal to the server.

w00t

2004-05-02 22:27

reporter   ~0005988

From a ping command??

The only two things that I am sending which I could imagine triggering the issue would be my SERVER command (I had to guess the parameters, as I didnt have the RFC next to me) or my NICK command (same) BOTH of which werent triggered, and both of which had already executed 100% sucessfully around 20 times... Is it relevant that in the core file it talks about win32gui.c or whatever it was a lot? To me, I believe it may have something to do with me having the status window open... I shall bugtest more extensivly tonight.

codemastr

2004-05-02 22:56

reporter   ~0005989

The issue has nothing to do with a PING. That is only listed because it was the last command Unreal received. The function it crashed in, win_map, in fact has nothing to do with pings. It is actually run in a seperate thread and therefore the backup buffer has nothing at all to do with it. Win_map is used to generate the server tree in the status dialog. My guess would be the SERVER command is wrong. Most likely you specified a bad value for the number of hops. But that is just a guess.

w00t

2004-05-02 23:05

reporter   ~0005990

oh, ok... I've never had a crashbug before this... (least, not one ive bothered checking since its usually been me doing something dumb configwise or whatever) but that doesnt explain the lengthy delay... 4 minutes to crash on a SERVER command?? meh... Just to make sure I get it right, what does Unreal ask for? Direct RFC syntax or something else?

codemastr

2004-05-02 23:12

reporter   ~0005991

If you're not using any PROTOCTL settings, then yes, the same as RFC1459.

w00t

2004-05-02 23:18

reporter   ~0005992

Last edited: 2004-05-02 23:21

Hm, That may be it... I think I pass a protoctl with CHANMODES= for some zany reason... Just a sec.

PROTOCTL = "PROTOCTL NOQUIT CHANMODES=be,kfL,l,psmntirRcOAQKVGCuzNSMT"
SERVER = "SERVER " & ServerName & " 1 :" & " " & ServerDescription

Hm. I'll try omitting the PROTOCTL... but it does make me wonder still, when that hasnt changed EVER, it crashed that once, and only after 4 minutes of idling...

[edit:]Yes, I know that those both look FUGLY but you try doing it all via reverse engineering in < 1 day :P I didnt look at the unreal source, silly me...[/edit]

edited on: 2004-05-02 23:21

w00t

2004-05-03 22:06

reporter   ~0006019

Better still! I now have another interesting dilemma...
I am using NICK <name> [hopcount] with no protoctl, as codemastr suggested... I get a flood (cause services tracks pseudoclients getting killed, and reintroduces them):

":irc.symmetic.net KILL DebugServ :irc.symmetic.net (Lost user field!)
:irc.symmetic.net KILL DebugServ :irc.symmetic.net (Lost user field!)
:irc.symmetic.net KILL DebugServ :irc.symmetic.net (Nick Collision)"

Maybe I am missing something here... after those 3 messages for each service, it let's them connect happily :| I must really be doing something wrong here, or what...

Praetorian_

2004-05-03 23:25

reporter   ~0006020

Atleast have a read of RFC1459 ..

NICK <nick> <hopcount>
looks very wrong, but maybe that is a lack of sleep.

Atleast read:
http://web.ircsystems.net/stskeeps/unrealprotocol.html
before you continue on.

codemastr

2004-05-03 23:37

reporter   ~0006023

Ok here is the thing, I don't mind entertaining questions about how the Unreal protocol works, but this is where you go to report bugs. The thing with the NICK message is not a bug. Unreal (nor any other IRCd written in the last 10 years) uses the syntax for NICK described by RFC1459.

If you want to discuss the protocol, that's fine. But this is not the place to do it.

w00t

2004-05-04 00:29

reporter   ~0006026

Ekkkk... My apologies. I misread one of your posts. You referred to the SERVER as following RFC syntax. Praetorian, just because I said <name> instead of <nick>... I know what I mean, as hopefully do you. My apologies. Consider this closed, if you don't want to follow it up.

Issue History

Date Modified Username Field Change
2004-05-02 19:55 w00t New Issue
2004-05-02 19:55 w00t File Added: wircd.4072.core
2004-05-02 21:51 codemastr Note Added: 0005983
2004-05-02 22:27 w00t Note Added: 0005988
2004-05-02 22:56 codemastr Note Added: 0005989
2004-05-02 23:05 w00t Note Added: 0005990
2004-05-02 23:12 codemastr Note Added: 0005991
2004-05-02 23:18 w00t Note Added: 0005992
2004-05-02 23:21 w00t Note Edited: 0005992
2004-05-03 22:06 w00t Note Added: 0006019
2004-05-03 23:25 Praetorian_ Note Added: 0006020
2004-05-03 23:37 codemastr Note Added: 0006023
2004-05-04 00:29 w00t Note Added: 0006026
2004-05-18 18:52 syzop Status new => closed