aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/m_spanningtree/servercommand.h
diff options
context:
space:
mode:
authorGravatar Attila Molnar2014-04-16 13:20:39 +0200
committerGravatar Attila Molnar2014-04-16 13:20:39 +0200
commit67e0e32b86885df705a92cdc971a6085c4a7c1ba (patch)
tree1f3ba6b2d1d4f240c287d8ff11d30e98561e7adb /src/modules/m_spanningtree/servercommand.h
parentm_spanningtree Throw an exception on protocol violations instead of returning... (diff)
m_spanningtree Add ServerCommand::ExtractTS() to convert string to raw TS
Throws a ProtocolException if the input is invalid
Diffstat (limited to 'src/modules/m_spanningtree/servercommand.h')
-rw-r--r--src/modules/m_spanningtree/servercommand.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/modules/m_spanningtree/servercommand.h b/src/modules/m_spanningtree/servercommand.h
index f99942079..524520a88 100644
--- a/src/modules/m_spanningtree/servercommand.h
+++ b/src/modules/m_spanningtree/servercommand.h
@@ -40,6 +40,15 @@ class ServerCommand : public CommandBase
virtual CmdResult Handle(User* user, std::vector<std::string>& parameters) = 0;
virtual RouteDescriptor GetRouting(User* user, const std::vector<std::string>& parameters);
+
+ /**
+ * Extract the TS from a string.
+ * @param tsstr The string containing the TS.
+ * @return The raw timestamp value.
+ * This function throws a ProtocolException if it considers the TS invalid. Note that the detection of
+ * invalid timestamps is not designed to be bulletproof, only some cases - like "0" - trigger an exception.
+ */
+ static time_t ExtractTS(const std::string& tsstr);
};
/** Base class for server-to-server command handlers which are only valid if their source is a user.