summaryrefslogtreecommitdiff
path: root/modules/protocol/bahamut.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2011-02-25 21:56:00 -0500
committerAdam <Adam@anope.org>2011-02-25 21:56:00 -0500
commit0d1a0e8db94cdbffbf72a90800c327e6e42aa8b4 (patch)
tree70d24c7d8d523c70c34c37efadb6d8be8092026e /modules/protocol/bahamut.cpp
parentb9fb2f8e638a95398330c9dfe56102a858f4a2da (diff)
Fixed tracking umodes on bahamut and fjoins on inspircd11
Diffstat (limited to 'modules/protocol/bahamut.cpp')
-rw-r--r--modules/protocol/bahamut.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/modules/protocol/bahamut.cpp b/modules/protocol/bahamut.cpp
index 70dffb8ce..ed0695ba8 100644
--- a/modules/protocol/bahamut.cpp
+++ b/modules/protocol/bahamut.cpp
@@ -450,7 +450,11 @@ bool event_nick(const Anope::string &source, const std::vector<Anope::string> &p
if (params.size() != 2)
{
- user = do_nick(source, params[0], params[4], params[5], params[6], params[9], Anope::string(params[2]).is_pos_number_only() ? convertTo<time_t>(params[2]) : 0, params[8], "", "", params[3]);
+ /* Currently bahamut has no ipv6 support */
+ sockaddrs ip;
+ ip.ntop(AF_INET, params[8].c_str());
+
+ user = do_nick(source, params[0], params[4], params[5], params[6], params[9], Anope::string(params[2]).is_pos_number_only() ? convertTo<time_t>(params[2]) : 0, ip.addr(), "", "", params[3]);
if (user)
{
NickAlias *na;
@@ -585,12 +589,9 @@ bool event_quit(const Anope::string &source, const std::vector<Anope::string> &p
/* EVENT: MODE */
bool event_mode(const Anope::string &source, const std::vector<Anope::string> &params)
{
- if (params.size() < 3)
- return true;
-
- if (params[0][0] == '#' || params[0][0] == '&')
+ if (params.size() > 2 && (params[0][0] == '#' || params[0][0] == '&'))
do_cmode(source, params[0], params[2], params[1]);
- else
+ else if (params.size() > 1)
do_umode(source, params[0], params[1]);
return true;
}