JakobOvrum/Dirk

Handle UnrealIRCd NickServ auth replies

Closed this issue · 1 comments

The commented-out code in

Dirk/irc/client.d

Lines 997 to 999 in 41df4ce

//case "307": // UnrealIRCd?
// fireEvent(onWhoisAccountReply, line.arguments[0], line.arguments[1]);
// break;
is wrong, as it fires the event with arguments 0 and 1, which in practice appear to be the wrong ones. using argument 1 twice works around the issue, but most likely only for users where the account is the same as the nick. The core issue seems to be that UnrealIRCd's nickserv works a bit differently than FreeNode's, in that UnrealIRCd doesn't appear to use accounts but has nick groups which essentially achieve the same, but obviously there won't be an account name or anything.

Listing all nicknames in a group to work around the issue that way is unfortunately not possible, as /msg NickServ GLIST is access-restricted.

The best workaround seems to currently be to just assume the nickname is the account name, which is the one I use. Opinions on whether this change is sensible or if it needs some deeper restructurings are appreciated.

The best workaround seems to currently be to just assume the nickname is the account name, which is the one I use. Opinions on whether this change is sensible or if it needs some deeper restructurings are appreciated.

Did that for now, thanks:

d97f653