summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAttila Molnar <attilamolnar@hush.com>2014-01-26 13:05:09 +0100
committerAttila Molnar <attilamolnar@hush.com>2014-01-26 13:05:09 +0100
commit92cc388aebd55245b24aef5950afe845feffe9e2 (patch)
treea0d38cacd6589b88a274ced74e7e054a8cf73c78 /include
parent1db0e984be491125d8f954aa22f17cad1d4c453f (diff)
ProtocolInterface::SendEncapsulatedData() changes
- Pass command name and destination as real parameters - Allow callers to specify the command source - Send a SID instead of a server name if the target is a single server
Diffstat (limited to 'include')
-rw-r--r--include/protocol.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/include/protocol.h b/include/protocol.h
index 4afb0bf59..4c58c78ba 100644
--- a/include/protocol.h
+++ b/include/protocol.h
@@ -56,14 +56,17 @@ class CoreExport ProtocolInterface
virtual ~ProtocolInterface() { }
- /** Send an ENCAP message to one or more linked servers.
+ /** Send an ENCAP message to all servers matching a wildcard string.
* See the protocol documentation for the purpose of ENCAP.
- * @param encap This is a list of string parameters, the first of which must be a server ID or glob matching servernames.
- * The second must be a subcommand. All subsequent parameters are dependant on the subcommand.
+ * @param targetmask The target server mask (can contain wildcards)
+ * @param cmd The ENCAP subcommand
+ * @param params List of string parameters which are dependant on the subcommand
+ * @param source The source of the message (prefix), must be a local user or NULL which means use local server
+ * @return Always true if the target mask contains wildcards; otherwise true if the server name was found,
+ * and the message was sent, false if it was not found.
* ENCAP (should) be used instead of creating new protocol messages for easier third party application support.
- * @return True if the message was sent out (target exists)
*/
- virtual bool SendEncapsulatedData(const parameterlist &encap) { return false; }
+ virtual bool SendEncapsulatedData(const std::string& targetmask, const std::string& cmd, const parameterlist& params, User* source = NULL) { return false; }
/** Send metadata for a channel to other linked servers.
* @param chan The channel to send metadata for