]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
stream-tcp: no longer register as a thread module
authorVictor Julien <victor@inliniac.net>
Fri, 27 May 2016 14:02:06 +0000 (16:02 +0200)
committerVictor Julien <victor@inliniac.net>
Sat, 28 May 2016 07:10:26 +0000 (09:10 +0200)
Now that the FlowWorker handles the TCP Stream directly, having
the TCP engine as a thread module is no longer needed.

This patch removes the registration.

src/runmode-unittests.c
src/stream-tcp.c
src/stream-tcp.h
src/suricata.c

index 6f572d3fce1be594608a41b5338452942ecb5bb2..74e194afc0ef2e95859dcfe570b66b0f1c907e22 100644 (file)
@@ -66,6 +66,8 @@
 #include "ippair-bit.h"
 #include "unix-manager.h"
 
+#include "stream-tcp.h"
+
 #include "app-layer-detect-proto.h"
 #include "app-layer-parser.h"
 #include "app-layer.h"
@@ -193,6 +195,7 @@ void RunUnittests(int list_unittests, char *regex_arg)
 
     UtInitialize();
     UTHRegisterTests();
+    StreamTcpRegisterTests();
     SCReputationRegisterTests();
     TmModuleRegisterTests();
     SigTableRegisterTests();
index d1d1470bf3b0f32a7338bb25cee1eba5a61330e4..ac603e6ef75e4405e1a9dc274008bab36736289e 100644 (file)
 #define STREAMTCP_EMERG_EST_TIMEOUT             300
 #define STREAMTCP_EMERG_CLOSED_TIMEOUT          20
 
-TmEcode StreamTcp (ThreadVars *, Packet *, void *, PacketQueue *, PacketQueue *);
-TmEcode StreamTcpThreadInit(ThreadVars *, void *, void **);
-TmEcode StreamTcpThreadDeinit(ThreadVars *, void *);
-void StreamTcpExitPrintStats(ThreadVars *, void *);
 static int StreamTcpHandleFin(ThreadVars *tv, StreamTcpThread *, TcpSession *, Packet *, PacketQueue *);
-void StreamTcpRegisterTests (void);
 void StreamTcpReturnStreamSegments (TcpStream *);
 void StreamTcpInitConfig(char);
 int StreamTcpGetFlowState(void *);
@@ -122,18 +117,6 @@ SC_ATOMIC_DECLARE(uint64_t, st_memuse);
 /* stream engine running in "inline" mode. */
 int stream_inline = 0;
 
-void TmModuleStreamTcpRegister (void)
-{
-    tmm_modules[TMM_STREAMTCP].name = "StreamTcp";
-    tmm_modules[TMM_STREAMTCP].ThreadInit = StreamTcpThreadInit;
-    tmm_modules[TMM_STREAMTCP].Func = StreamTcp;
-    tmm_modules[TMM_STREAMTCP].ThreadExitPrintStats = StreamTcpExitPrintStats;
-    tmm_modules[TMM_STREAMTCP].ThreadDeinit = StreamTcpThreadDeinit;
-    tmm_modules[TMM_STREAMTCP].RegisterTests = StreamTcpRegisterTests;
-    tmm_modules[TMM_STREAMTCP].cap_flags = 0;
-    tmm_modules[TMM_STREAMTCP].flags = TM_FLAG_STREAM_TM;
-}
-
 void StreamTcpIncrMemuse(uint64_t size)
 {
     (void) SC_ATOMIC_ADD(st_memuse, size);
@@ -4896,8 +4879,6 @@ TmEcode StreamTcp (ThreadVars *tv, Packet *p, void *data, PacketQueue *pq, Packe
 
     (void)StreamTcpPacket(tv, p, stt, pq);
 
-    stt->pkts++;
-
     return TM_ECODE_OK;
 }
 
@@ -4983,16 +4964,6 @@ TmEcode StreamTcpThreadDeinit(ThreadVars *tv, void *data)
     SCReturnInt(TM_ECODE_OK);
 }
 
-void StreamTcpExitPrintStats(ThreadVars *tv, void *data)
-{
-    StreamTcpThread *stt = (StreamTcpThread *)data;
-    if (stt == NULL) {
-        return;
-    }
-
-    SCLogInfo("Stream TCP processed %" PRIu64 " TCP packets", stt->pkts);
-}
-
 /**
  *  \brief   Function to check the validity of the RST packets based on the
  *           target OS of the given packet.
index e23d9eab71e7df36f94ba386b7a408e71ff0b48a..57e8abc4119461f4ea17f2254a4d0c6735cd1f5f 100644 (file)
@@ -76,8 +76,6 @@ typedef struct TcpStreamCnf_ {
 typedef struct StreamTcpThread_ {
     int ssn_pool_id;
 
-    uint64_t pkts;
-
     /** queue for pseudo packet(s) that were created in the stream
      *  process and need further handling. Currently only used when
      *  receiving (valid) RST packets */
@@ -108,7 +106,6 @@ typedef struct StreamTcpThread_ {
 } StreamTcpThread;
 
 TcpStreamCnf stream_config;
-void TmModuleStreamTcpRegister (void);
 void StreamTcpInitConfig (char);
 void StreamTcpFreeConfig(char);
 void StreamTcpRegisterTests (void);
@@ -217,8 +214,12 @@ static inline int StreamNeedsReassembly(TcpSession *ssn, int direction)
     }
 }
 
+TmEcode StreamTcp (ThreadVars *, Packet *, void *, PacketQueue *, PacketQueue *);
+void StreamTcpExitPrintStats(ThreadVars *, void *);
 TmEcode StreamTcpThreadInit(ThreadVars *, void *, void **);
 TmEcode StreamTcpThreadDeinit(ThreadVars *tv, void *data);
+void StreamTcpRegisterTests (void);
+
 int StreamTcpPacket (ThreadVars *tv, Packet *p, StreamTcpThread *stt,
                      PacketQueue *pq);
 /* clear ssn and return to pool */
index ecb1690e1eafc2c0ce4432e7983cdaa438dd262c..b619233ca38803ded908f381ffa4c961347bbb91 100644 (file)
@@ -859,8 +859,6 @@ void RegisterAllModules()
 
     /* flow worker */
     TmModuleFlowWorkerRegister();
-    /* stream engine */
-    TmModuleStreamTcpRegister();
     /* detection */
     TmModuleDetectRegister();
     /* respond-reject */