summaryrefslogtreecommitdiff
path: root/modules/protocol/charybdis.cpp
diff options
context:
space:
mode:
authorDaniel Vassdal <shutter@canternet.org>2014-01-31 01:15:34 -0800
committerDaniel Vassdal <shutter@canternet.org>2014-01-31 01:41:27 -0800
commit405b41ec87d5068821ce065f1d3def307184051e (patch)
tree5060e3323db0cbe19e8820959d0fcf217c4ae2b4 /modules/protocol/charybdis.cpp
parentbacb276181c008069468ebe6b7368b3a8ba7f90b (diff)
protocol/(inspircd12/unreal/charybdis): Have SASL login in on the account name instead of nick alias
Diffstat (limited to 'modules/protocol/charybdis.cpp')
-rw-r--r--modules/protocol/charybdis.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/modules/protocol/charybdis.cpp b/modules/protocol/charybdis.cpp
index bdf6d014b..b1d2e6614 100644
--- a/modules/protocol/charybdis.cpp
+++ b/modules/protocol/charybdis.cpp
@@ -192,6 +192,11 @@ struct IRCDMessageEncap : IRCDMessage
if (!NickServ)
return;
+ Anope::string accountname = GetAccount();
+ NickAlias *na = NickAlias::Find(accountname);
+ if (na)
+ accountname = na->nc->display;
+
/* SVSLOGIN
* parameters: target, new nick, new username, new visible hostname, new login name
* Sent after successful SASL authentication.
@@ -202,7 +207,7 @@ struct IRCDMessageEncap : IRCDMessage
* broadcast, otherwise the changes will be stored, to be used when registration
* completes.
*/
- UplinkSocket::Message(Me) << "ENCAP " << msource.GetName() << " SVSLOGIN " << this->uid << " * * * " << this->GetAccount();
+ UplinkSocket::Message(Me) << "ENCAP " << msource.GetName() << " SVSLOGIN " << this->uid << " * * * " << accountname;
UplinkSocket::Message(Me) << "ENCAP " << msource.GetName() << " SASL " << NickServ->GetUID() << " " << this->uid << " D S";
}