View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0004575||unreal||ircd||public||2016-02-09 16:34||2018-09-25 14:04|
|Fixed in Version||4.2.0|
|Summary||0004575: Support for WHOX and extended-join client capability|
|Description||additionally, send away message to away-notify enabled clients on join and when changing user@hosts.|
|Tags||No tags attached.|
|3rd party modules|
unreal4_extended_join_and_chghost_caps.diff (23,097 bytes)
||+ support for chghost client capability.|
+ WHOX support, this is required for account-notify feature to work correctly,
WHO <#channel|nick|mask> [flags][%format]
o - specifies to only list IRC Operators.
n - match nicknames.
u - match usernames ("idents").
h - match hostnames.
i - match numeric IP addresses.
r - match realnames.
s - match server names.
a - match user accounts.
m - match user modes (+abc-def are accepted).
t - Query type. Outputs the given number in each reply.
c - Channel.
u - Username.
i - IP address.
h - Host.
s - Server.
n - Nickname.
f - Status.
d - Hop count.
l - Idle time or 0 for users on other servers.
a - Services account name or 0 if none.
r - GECOS information.
m - Show user modes.
unreal34_extended_join_chghost_whox.diff (68,515 bytes)
The patch is so large and I haven't had the time to look at it yet. Not sure if it will be any better next month or two, probably not. Sorry again. I can't just throw it in production unless I carefully audited/checked the code :p
||I'm interested in getting this merged as it affects a network I'm a part of, but I don't (yet) have any experience with Unreal's code. I'll try to set aside time when possible, though I might not manage more than a cursory review for a long while. If there's any other way to help (e.g. testing), let me know!|
||Bump for this - e.g. this causes IRC bots to have big issues using nickserv to authenticate users|
jesopo just commented in 0005140 wondering the same (why is this not implemented).
Is it only the modified WHO function that is missing nowadays (WHOX)? Or are we missing more?
If it's only that, then perhaps we could make it a separate module so people can choose to load that module instead of regular m_who, and get this code tested.
I'm not going to put it in production as-is as a replacement of who, since the chance of breakage is too high to do in stable series. And, of course, when it isn't put in production it never gets tested (especially since less than a handful of people ever volunteer outside production releases to test stuff)... catch 22... having it a separate module would help.
Question to original reporter (fbi) or anyone else: interested in doing that?
I'm not volunteering myself.
||Interested in using the module? if so, definitely.|
||Interested in using/testing the module*|
||also extended-join and chghost are solved so as far as this issue is concerned it's only WHOX that's left|
As the "away-notify" bug on join likely can be addressed separately with much lower risk and this breakage introduces a regression in functionality for "away-notify"-enabled clients, I've filed a separate bug for it:
Seems someone already did what I suggested in 0004575:0020272: namely to write a separate module that provides a who with WHOX, all contained:
09:14 < jesopo> now where the whox support ?
09:26 < tommo> jesopo: https://gist.github.com/skizzerz/f6697df9140a55ccf533e2620aa0e63c
09:26 < tommo> :o
Don't know about the copyright (the header doesn't mention the author) and if it's based on this patch from fbi or not.
Since there seems someone confusion, just to explain:
I want to have the WHOX offered in an alternate module (provided by fbi or anyone else). Then this is an optional module that the user can load. That way we can get the code tested. Then, after a while, after it has been sufficiently tested, we can switch over to that module by default.
NOTE: "a while" isn't 3 months with only 3 people testing the module, but a serious amount of users and timeframe :D
m_who.c (19,913 bytes)
||the module is ready, anyone wish to test it, feel free to do so :)|
Great, thanks a lot for making this.
i: I take it the module is licensed as GPLv2, is that correct?
The module has been added to current git with only minor changes.
I renamed it to m_whox and made it use a command override so it can be loaded via a loadmodule command (without having to remove m_who). It is now in modules.optional.conf. Not sure if it will stay commented out there, we'll see.
The build farm and testers will now test the module and I will try to give it some extra testing as well, then see what we do. In any case it is very likely bundled in upcoming UnrealIRCd stable (but not enabled by default) in some shape or form.
commit bd0821fc41ed1611510a5635dcfc3d00d3aacb9b (HEAD -> unreal40, origin/unreal40, origin/HEAD)
Author: Bram Matthys <firstname.lastname@example.org>
Date: Thu Sep 20 20:06:19 2018 +0200
Add m_whox to Windows build makefile
Author: Bram Matthys <email@example.com>
Date: Thu Sep 20 20:04:29 2018 +0200
Add initial version of m_whox from 'i'. This is to get it tested
by the buildfarm / autotesters. More commits will follow.
||GPLv2 is ok i think, but i'm not an expert on these license staff :)|
Some build failures
||It should be a warning and not an error. I totally forgot about another pair of parentheses..|
I'm marking this as resolved.
Thanks again for coding the feature and thanks to everyone testing it (only a few people I think? But still..)
One day this will become the new WHO...
|2016-02-09 16:34||argvx||New Issue|
|2016-02-09 16:34||argvx||File Added: unreal4_extended_join_and_chghost_caps.diff|
|2016-02-09 16:36||argvx||Note Added: 0019096|
|2016-03-10 21:09||argvx||Note Added: 0019134|
|2016-03-10 21:09||argvx||File Added: unreal34_extended_join_chghost_whox.diff|
|2016-05-22 20:46||syzop||Note Added: 0019278|
|2016-05-22 20:47||syzop||Note Edited: 0019278||View Revisions|
|2016-06-04 19:28||syzop||Status||new => has patch|
|2016-08-08 22:35||digitalcircuit||Note Added: 0019369|
|2018-09-06 21:04||syzop||Relationship added||has duplicate 0005140|
|2018-09-06 21:05||syzop||Summary||Support for extended-join client capability => Support for WHOX and extended-join client capability|
|2018-09-06 21:07||jesopo||Note Added: 0020271|
|2018-09-06 21:10||syzop||Note Added: 0020272|
|2018-09-06 21:11||syzop||Status||has patch => feedback|
|2018-09-06 21:13||jesopo||Note Added: 0020274|
|2018-09-06 21:14||jesopo||Note Added: 0020275|
|2018-09-06 21:15||jesopo||Note Added: 0020276|
|2018-09-14 21:43||digitalcircuit||Note Added: 0020325|
|2018-09-15 16:06||syzop||Note Added: 0020328|
|2018-09-15 16:17||syzop||Note Added: 0020329|
|2018-09-15 16:17||syzop||Note Edited: 0020329||View Revisions|
|2018-09-15 16:20||syzop||Note Edited: 0020329||View Revisions|
|2018-09-19 20:08||argvx||File Added: m_who.c|
|2018-09-19 20:09||argvx||Note Added: 0020337|
|2018-09-19 20:12||syzop||Assigned To||=> syzop|
|2018-09-19 20:12||syzop||Status||feedback => has patch|
|2018-09-20 20:09||syzop||Note Added: 0020339|
|2018-09-20 20:10||syzop||Status||has patch => feedback|
|2018-09-20 20:15||argvx||Note Added: 0020340|
|2018-09-20 20:18||syzop||Note Added: 0020342|
|2018-09-20 21:14||syzop||Note Added: 0020343|
|2018-09-20 21:27||argvx||Note Added: 0020344|
|2018-09-25 14:04||syzop||Status||feedback => resolved|
|2018-09-25 14:04||syzop||Resolution||open => fixed|
|2018-09-25 14:04||syzop||Fixed in Version||=> 4.2.0|
|2018-09-25 14:04||syzop||Note Added: 0020353|