summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/protocol.h2
-rw-r--r--src/modules/m_spanningtree/protocolinterface.cpp11
-rw-r--r--src/modules/m_spanningtree/protocolinterface.h2
3 files changed, 9 insertions, 6 deletions
diff --git a/include/protocol.h b/include/protocol.h
index 3d8f86cca..9634ee4ec 100644
--- a/include/protocol.h
+++ b/include/protocol.h
@@ -56,7 +56,7 @@ class ProtocolInterface : public Extensible
* @param key The 'key' of the data, e.g. "swhois" for swhois desc on a user
* @param data The string representation of the data
*/
- virtual void SendMetaData(void* target, int type, const std::string &key, const std::string &data) { }
+ virtual void SendMetaData(void* target, TargetTypeFlags type, const std::string &key, const std::string &data) { }
/** Send a topic change for a channel
* @param channel The channel to change the topic for.
diff --git a/src/modules/m_spanningtree/protocolinterface.cpp b/src/modules/m_spanningtree/protocolinterface.cpp
index 386f2bc31..9f32963a0 100644
--- a/src/modules/m_spanningtree/protocolinterface.cpp
+++ b/src/modules/m_spanningtree/protocolinterface.cpp
@@ -31,7 +31,7 @@ void SpanningTreeProtocolInterface::SendEncapsulatedData(parameterlist &encap)
Utils->DoOneToMany(ServerInstance->Config->GetSID(), "ENCAP", encap);
}
-void SpanningTreeProtocolInterface::SendMetaData(void* target, int type, const std::string &key, const std::string &data)
+void SpanningTreeProtocolInterface::SendMetaData(void* target, TargetTypeFlags type, const std::string &key, const std::string &data)
{
parameterlist params;
@@ -39,13 +39,16 @@ void SpanningTreeProtocolInterface::SendMetaData(void* target, int type, const s
{
case TYPE_USER:
params.push_back(((User*)target)->uuid);
- break;
+ break;
case TYPE_CHANNEL:
params.push_back(((Channel*)target)->name);
- break;
+ break;
case TYPE_SERVER:
params.push_back("*");
- break;
+ break;
+ default:
+ throw CoreException("I don't know how to handle TYPE_OTHER.");
+ break;
}
params.push_back(key);
params.push_back(":" + data);
diff --git a/src/modules/m_spanningtree/protocolinterface.h b/src/modules/m_spanningtree/protocolinterface.h
index 38b15a1ed..50db7bf05 100644
--- a/src/modules/m_spanningtree/protocolinterface.h
+++ b/src/modules/m_spanningtree/protocolinterface.h
@@ -14,7 +14,7 @@ class SpanningTreeProtocolInterface : public ProtocolInterface
virtual ~SpanningTreeProtocolInterface() { }
virtual void SendEncapsulatedData(parameterlist &encap);
- virtual void SendMetaData(void* target, int type, const std::string &key, const std::string &data);
+ virtual void SendMetaData(void* target, TargetTypeFlags type, const std::string &key, const std::string &data);
virtual void SendTopic(Channel* channel, std::string &topic);
virtual void SendMode(const std::string &target, parameterlist &modedata);
virtual void SendModeNotice(const std::string &modes, const std::string &text);