]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/ctables.h
Queue changes in socketengine_kqueue and submit them as we poll for new events
[user/henk/code/inspircd.git] / include / ctables.h
index 747901459b67a98dd6d7b99d4b042da6fbbb1ff5..a69f5c86f65e14c3fc18ae7abdd75b4deee4905c 100644 (file)
@@ -75,10 +75,17 @@ struct RouteDescriptor
         */
        std::string serverdest;
 
+       /** For unicast, the destination Server
+        */
+       Server* server;
+
        /** Create a RouteDescriptor
         */
        RouteDescriptor(RouteType t, const std::string &d)
-               : type(t), serverdest(d) { }
+               : type(t), serverdest(d), server(NULL) { }
+
+       RouteDescriptor(RouteType t, Server* srv)
+               : type(t), server(srv) { }
 };
 
 /** Do not route this command */
@@ -217,8 +224,14 @@ class CoreExport CommandBase : public ServiceProvider
 class CoreExport Command : public CommandBase
 {
  public:
+       /** If true, the command will not be forwarded by the linking module even if it comes via ENCAP.
+        * Can be used to forward commands before their effects.
+        */
+       bool force_manual_route;
+
        Command(Module* me, const std::string& cmd, unsigned int minpara = 0, unsigned int maxpara = 0)
                : CommandBase(me, cmd, minpara, maxpara)
+               , force_manual_route(false)
        {
        }