View Issue Details

IDProjectCategoryView StatusLast Update
0003964unrealircdpublic2010-12-29 18:31
Reportercbrowne Assigned To 
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionunable to duplicate 
Product Version3.2.8 
Summary0003964: /oper causes server to crash
DescriptionStrange behaviour noted when attempting to /oper on a server on my network.

My client reports my hostname as blank (symptom 1, very trivial, only aesthetic really).

When I attempt to /oper with legitimate details, and ircd dies. Nothing is left behind in ircd.log for me to examine.
Steps To ReproduceUnknown first step, something preventing the server from accurately deducing a client's hostname.

Second step is to /oper with correct (or incorrect) details.

That is all.
Additional InformationNote that two alternative explanations have been offered, a malicious script causing /oper to /die (disproved by using /quote, but it wasn't very likely anyway) or the server running out of memory (a good suggestion, but the circumstances are not indicative of a memory problem and what's more "free" reveals a good couple of hundred megabytes of free memory for the gobbling).

Other than this, my thoughts are that somewhere along the lines ircd is trying to compare "" to "pemcjd.me.uk" (my hostname) and getting a read fault because "" (an empty string) has an invalid address (ie, the pointer is null).

Solution:
Patch over the function comparing hostnames when /oper is invoked, adding error checking to see if a null pointer is there and if so deal with it more appropriately than killing off the server.
3rd party modulesNone

Activities

goldenwolf

2010-11-02 03:35

reporter   ~0016396

Can't reproduce here >.>

syzop

2010-11-03 12:09

administrator   ~0016397

"" is not the same as NULL. And a DNS server returning an empty hostname wouldn't work either because it cannot not match revdns / dns (it compares both ip->hostname and hostname->ip and they must match).

Do you have a backtrace? Without a backtrace we can't really help or tell you what really happened (unless we can reproduce it, of course).
If it really crashed, then you can produce a backtrace by doing './unreal backtrace' and copy-pasting the results back to us.

Thanks.

syzop

2010-11-15 17:53

administrator   ~0016415

Feedback required from original reporter.

syzop

2010-12-29 18:31

administrator   ~0016535

no response (same for email) + unable to reproduce

Issue History

Date Modified Username Field Change
2010-11-02 01:01 cbrowne New Issue
2010-11-02 01:01 cbrowne 3rd party modules => None
2010-11-02 03:35 goldenwolf Note Added: 0016396
2010-11-03 12:09 syzop Note Added: 0016397
2010-11-15 17:53 syzop Note Added: 0016415
2010-11-15 17:53 syzop Assigned To => syzop
2010-11-15 17:53 syzop Status new => feedback
2010-12-29 18:31 syzop Note Added: 0016535
2010-12-29 18:31 syzop Status feedback => closed
2010-12-29 18:31 syzop Assigned To syzop =>
2010-12-29 18:31 syzop Resolution open => unable to duplicate