X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fmodules%2Fm_callerid.cpp;h=b575491d6153376d56325481516f1e90b92b5046;hb=3151d60c1ecc9462e4c335282ee6c31672f45111;hp=a13d4d613fb36e2f4ba728959365a0789550e1ac;hpb=e57d1b19ff4823b7885eb7f4d3b37c84d2edca0e;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/modules/m_callerid.cpp b/src/modules/m_callerid.cpp index a13d4d613..b575491d6 100644 --- a/src/modules/m_callerid.cpp +++ b/src/modules/m_callerid.cpp @@ -1,10 +1,16 @@ /* * InspIRCd -- Internet Relay Chat Daemon * - * Copyright (C) 2009 Daniel De Graaf + * Copyright (C) 2013, 2017-2019 Sadie Powell + * Copyright (C) 2013 Adam + * Copyright (C) 2012-2016 Attila Molnar + * Copyright (C) 2012, 2019 Robby + * Copyright (C) 2009-2010 Daniel De Graaf + * Copyright (C) 2009 Uli Schlachter + * Copyright (C) 2009 John Brooks * Copyright (C) 2008-2009 Robin Burchell + * Copyright (C) 2008, 2010 Craig Edwards * Copyright (C) 2008 Thomas Stagner - * Copyright (C) 2008 Craig Edwards * * This file is part of InspIRCd. InspIRCd is free software: you can * redistribute it and/or modify it under the terms of the GNU General Public @@ -54,7 +60,7 @@ class callerid_data callerid_data() : lastnotify(0) { } - std::string ToString(SerializeFormat format) const + std::string ToString(bool human) const { std::ostringstream oss; oss << lastnotify; @@ -62,7 +68,7 @@ class callerid_data { User* u = *i; // Encode UIDs. - oss << "," << (format == FORMAT_USER ? u->nick : u->uuid); + oss << "," << (human ? u->nick : u->uuid); } return oss.str(); } @@ -75,22 +81,20 @@ struct CallerIDExtInfo : public ExtensionItem { } - std::string serialize(SerializeFormat format, const Extensible* container, void* item) const CXX11_OVERRIDE + std::string ToHuman(const Extensible* container, void* item) const CXX11_OVERRIDE { - std::string ret; - if (format != FORMAT_NETWORK) - { - callerid_data* dat = static_cast(item); - ret = dat->ToString(format); - } - return ret; + callerid_data* dat = static_cast(item); + return dat->ToString(true); } - void unserialize(SerializeFormat format, Extensible* container, const std::string& value) CXX11_OVERRIDE + std::string ToInternal(const Extensible* container, void* item) const CXX11_OVERRIDE { - if (format == FORMAT_NETWORK) - return; + callerid_data* dat = static_cast(item); + return dat->ToString(false); + } + void FromInternal(Extensible* container, const std::string& value) CXX11_OVERRIDE + { void* old = get_raw(container); if (old) this->free(NULL, old); @@ -198,7 +202,7 @@ public: parameter = (action.second ? "" : "-") + action.first->uuid; } - /** Will take any number of nicks (up to MaxTargets), which can be seperated by commas. + /** Will take any number of nicks (up to MaxTargets), which can be separated by commas. * - in front of any nick removes, and an * lists. This effectively means you can do: * /accept nick1,nick2,nick3,* * to add 3 nicks and then show your list @@ -239,12 +243,12 @@ public: RouteDescriptor GetRouting(User* user, const Params& parameters) CXX11_OVERRIDE { // There is a list in parameters[0] in two cases: - // Either when the source is remote, this happens because 2.0 servers send comma seperated uuid lists, + // Either when the source is remote, this happens because 2.0 servers send comma separated uuid lists, // we don't split those but broadcast them, as before. // // Or if the source is local then LoopCall() runs OnPostCommand() after each entry in the list, // meaning the linking module has sent an ACCEPT already for each entry in the list to the - // appropiate server and the ACCEPT with the list of nicks (this) doesn't need to be sent anywhere. + // appropriate server and the ACCEPT with the list of nicks (this) doesn't need to be sent anywhere. if ((!IS_LOCAL(user)) && (parameters[0].find(',') != std::string::npos)) return ROUTE_BROADCAST; @@ -392,7 +396,7 @@ public: Version GetVersion() CXX11_OVERRIDE { - return Version("Implementation of callerid, provides user mode +g and the ACCEPT command", VF_COMMON | VF_VENDOR); + return Version("Provides user mode g (bot) which allows users to require that other users are on their whitelist before messaging them.", VF_COMMON | VF_VENDOR); } void On005Numeric(std::map& tokens) CXX11_OVERRIDE