View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0004883 | unreal | ircd | public | 2017-02-21 16:34 | 2017-03-06 10:09 |
Reporter | PeGaSuS | Assigned To | syzop | ||
Priority | high | Severity | major | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Platform | unix | OS | Ubuntu Server | OS Version | 16.04 LTS |
Product Version | 4.0.11 | ||||
Fixed in Version | 4.0.12 | ||||
Summary | 0004883: ChanMode +f: IRCd not properly removing flood parameters after new mode set. | ||||
Description | After setting a flood parameter with /cs mode #chan lock set +f [params]:time and re-setting it with /cs mode #chan lock set [new-params]:time, the mlock is changed but the modes remain the same if we check them with /mode #chan. | ||||
Steps To Reproduce | Example: Enter a channel Register it Do /cs mode #chan lock set +f [5m#m1,5j#i1,3t]:2 Do /cs mode #chan lock set +f [5m#m1,5j#i1]:2 (to remove '3t' parameter) Do /mode #chan (channel modes will display the first flood parameters, wit the '3t' option) | ||||
Additional Information | ### obatained with Anchat IRC client (Android) so some things may seem weird :) ### Joined the channel [15:25] Channel modes: [+] [15:25] Channel created: Tue Feb 21 2017 15:25:44 [15:25] Users: [Total: 1, Ops: 1, Normal: 0] ### Registering the channel [15:26] -ChanServ-: Channel #bla registered under your account: OmniPresente [15:26] Join: ChanServ [services.PTirc.org] [15:26] Mode: [+ao ChanServ ChanServ] by ChanServ [15:26] Mode: [+ntrPq OmniPresente] by ChanServ ### 1st mlock set [15:27] -ChanServ-: +f [5m#m1,5j#i1,3t]:2 locked on #bla. [15:27] Mode: [+f [5j#i1,5m#m1,3t]:2] by ChanServ ### 2nd mlock set [15:27] -ChanServ-: +f [5m#m1,5j#i1]:2 locked on #bla. [15:27] Mode: [+f [5j#i1,5m#m1]:2] by ChanServ ### otuput of /mode #bla (actual +f params are [5m#m1,5j#i1]:2) [15:28] Channel modes: [+Pfnrt [5j#i1,5m#m1,3t]:2] (mlock of +f params doesnt match) ### in Andchat app you can't see me /hoping, but that's what I've done here [15:28] Mode: [+qo OmniPresente OmniPresente] by ChanServ [15:28] Channel modes: [+Pfnrt [5j#i1,5m#m1,3t]:2] [15:28] Channel created: Tue Feb 21 2017 15:25:44 [15:28] Users: [Total: 2, Owners: 1, Admins: 1, Normal: 0] (1st mlock set shown, not second) | ||||
Tags | bug, channel, CHMODE | ||||
3rd party modules | denyban.c by Gottem | ||||
|
just an update: issues happens even without services online ### here it is 16:53:58 <@James_Bond> no services coonected and issue remains 16:54:58 Channel mode set to +f [5j#i1,5m#m1,3t]:2 by James_Bond 16:55:42 <@James_Bond> 1st /mode #chan +f above 16:55:48 Channel mode set to +f [5j#i1,5m#m1]:2 by James_Bond 16:55:57 <@James_Bond> 2nd /mode #chan +f above 16:56:03 Channel mode is +f [5j#i1,5m#m1,3t]:2 16:56:29 <@James_Bond> output of /mode #chan above |
|
just another note (workaround until fixed) ### with services online ### # remove the +f params from mlock /cs mode #chan lock del +f [params]:time # remove +f modes from channel /mode #chan -f [params]:time # re-set the new mlock using "add" instead "set" /cs mode #chan lock add +f [params]:time ### without services ### # remove +f modes from the channel /mode #chan -f [params]:time # re-set the modes /mode #chan +f [params]:time ### obs ### re-setting the +f modes with /mode #chan +f [params]:time will lead to the issue reported |
|
I can reproduce the issue. |
|
Fixed, thanks for the report! https://github.com/unrealircd/unrealircd/commit/cb59538309ffeb8a4cc2d6c07f4d86353d781744 [unreal40 cb59538] Fix chanmode +f issue where unsetting parts were not effective. For example: '+f [5j#i1,5m#m1,3n]:3' and then '+f [5j#i1,5m]:3' In that case the '3n' was not removed and still effective, as could be seen by a '/MODE #chan'. Reported by The_Myth (0004883). |
Date Modified | Username | Field | Change |
---|---|---|---|
2017-02-21 16:34 | PeGaSuS | New Issue | |
2017-02-21 16:34 | PeGaSuS | Tag Attached: CHMODE | |
2017-02-21 16:57 | PeGaSuS | Note Added: 0019659 | |
2017-02-21 16:59 | PeGaSuS | Tag Detached: CHMODE | |
2017-02-21 21:51 | PeGaSuS | Note Added: 0019661 | |
2017-02-21 21:54 | PeGaSuS | Tag Attached: bug | |
2017-02-21 21:54 | PeGaSuS | Tag Attached: channel | |
2017-02-21 21:54 | PeGaSuS | Tag Attached: CHMODE | |
2017-03-06 08:55 | syzop | Status | new => acknowledged |
2017-03-06 09:33 | syzop | Assigned To | => syzop |
2017-03-06 09:33 | syzop | Status | acknowledged => confirmed |
2017-03-06 09:33 | syzop | Note Added: 0019672 | |
2017-03-06 10:08 | syzop | Status | confirmed => resolved |
2017-03-06 10:08 | syzop | Resolution | open => fixed |
2017-03-06 10:08 | syzop | Note Added: 0019673 | |
2017-03-06 10:09 | syzop | Fixed in Version | => 4.0.12 |
2017-03-06 10:09 | syzop | Summary | IRCd not properly removing flood parameters after new mode lock set. => ChanMode +f: IRCd not properly removing flood parameters after new mode set. |