View Issue Details

IDProjectCategoryView StatusLast Update
0001103unrealircdpublic2003-11-20 19:43
ReporterTroco Assigned Tocodemastr 
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Summary0001103: USERLEN bug on bans
Description#define USERLEN 10 (that's ok)
If there is an user that his username's len is 10 (abcdefghij, for example), if I type /mode #channel +b *!*abcdefghij*@*, ircd puts +b *!*abcdefghi@*.
That's a "serious" bug because some users can "override" some bantypes and join to channel if in those bans there are their ident. (I think there's the same problem with NICKLEN and HOSTLEN)
I hope you understand what I mean to explain.
3rd party modules

Activities

AngryWolf

2003-07-09 09:18

reporter   ~0003190

ircu solves this by trimming non-wildcard characters in the begining of a usermask until it reaches USERLEN in length and changing the first character to '*':

/mode #chan +b *!*1234567890*@*
*** Mode change "+b *!*34567890*@* on channel #chan by AngryWolf
/mode #chan +b *!1234567890*@*
(same happens)
/mode #chan +b *!*1234567890@*
*** Mode change "+b *!*234567890@* on channel #chan by AngryWolf
/mode #chan +b *!*2*4*6*8*0*2*@*
*** Mode change "+b *!*6*8*0*2*@* on channel #chan by AngryWolf

In my opinion, it's a great solution; if you follow this procedure, you should keep in mind that the first two masks are considered to be equal.

By the way, if two masks overlap theirselves, ircu also removes the previous one before adding the new one, for example,

/mode #chan +b *!23456*@*
*** Mode change "+b *!23456*@*" on channel #chan by AngryWolf
/mode #chan +b *!*3456*@*
*** Mode change "-b+b *!23456*@* *!*3456*@*" on channel #chan by AngryWolf

Troco

2003-07-09 10:22

reporter   ~0003191

That happens on ircu, but not on unreal. If you type:

/mode #chan b *!*1234567890@*
*** Mode change +b *!*123456789@* on channel #chan by Trocotronic

I think, the best way to solve it would be like this:

*** Mode change +b *!*234567890@* on channel #chan by Trocotronic

AngryWolf

2003-07-10 19:10

reporter   ~0003200

Last edited: 2003-07-12 07:45

Hmm, I found out that irc2.10.3p3+hemp, bahamut-1.4(35), UltimateIRCd-3.0(00).a30 and 2.8/hybrid-6.3.1 does the same as UnrealIRCd currently, and it seems they haven't found anything wrong with it... At least ircu did something to avoid this problem...

By the way, I like your idea, Trocko, but doesn't it break any protocol rules or clients compatibility? I'm not familiar with this problem...

Coders: no response at all?

edited on: 07-12-03 07:45

codemastr

2003-07-13 16:45

reporter   ~0003221

Fixed in .1851. Unreal now handles this (exactly?) the same as ircu. Also a note yes it did affect NICKLEN and HOSTLEN as well, and the same problem existed in +e, all have been fixed.

Issue History

Date Modified Username Field Change
2003-07-08 20:29 Troco New Issue
2003-07-09 09:18 AngryWolf Note Added: 0003190
2003-07-09 10:22 Troco Note Added: 0003191
2003-07-10 19:10 AngryWolf Note Added: 0003200
2003-07-12 07:43 AngryWolf Note Edited: 0003200
2003-07-12 07:45 AngryWolf Note Edited: 0003200
2003-07-13 16:45 codemastr Status new => resolved
2003-07-13 16:45 codemastr Resolution open => fixed
2003-07-13 16:45 codemastr Assigned To => codemastr
2003-07-13 16:45 codemastr Note Added: 0003221
2003-11-20 19:43 syzop Status resolved => closed