diff options
author | Adam <Adam@anope.org> | 2013-02-25 00:26:49 -0500 |
---|---|---|
committer | Adam <Adam@anope.org> | 2013-02-25 00:26:49 -0500 |
commit | 8561941e222cfeef8d99e93782d7f7e146e60932 (patch) | |
tree | 3491edebd08d77ff8a62459704f8a03a7b9721e9 /modules/protocol/unreal.cpp | |
parent | 5d4db2b85408202086ae35f38306e81f9216959e (diff) |
Don't enforce session limit on clients with no IP on Unreal, fix typo in /cs down syntax, fix os_session messages to reference ip
Diffstat (limited to 'modules/protocol/unreal.cpp')
-rw-r--r-- | modules/protocol/unreal.cpp | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/modules/protocol/unreal.cpp b/modules/protocol/unreal.cpp index 01141b6a3..b7cd2e322 100644 --- a/modules/protocol/unreal.cpp +++ b/modules/protocol/unreal.cpp @@ -778,17 +778,20 @@ struct IRCDMessageNick : IRCDMessage { if (params.size() == 11) { - Anope::string decoded_ip; - Anope::B64Decode(params[9], decoded_ip); - Anope::string ip; - try + if (params[9] != "*") { - sockaddrs ip_addr; - ip_addr.ntop(params[9].length() == 8 ? AF_INET : AF_INET6, decoded_ip.c_str()); - ip = ip_addr.addr(); + Anope::string decoded_ip; + Anope::B64Decode(params[9], decoded_ip); + + try + { + sockaddrs ip_addr; + ip_addr.ntop(params[9].length() == 8 ? AF_INET : AF_INET6, decoded_ip.c_str()); + ip = ip_addr.addr(); + } + catch (const SocketException &ex) { } } - catch (const SocketException &ex) { } Anope::string vhost = params[8]; if (vhost.equals_cs("*")) |