]> git.ipfire.org Git - thirdparty/snort3.git/commitdiff
suspend active when purging caches
authorrcombs <rcombs@sq18.sfeng.sourcefire.com>
Wed, 12 Nov 2014 22:51:38 +0000 (17:51 -0500)
committerrcombs <rcombs@sq18.sfeng.sourcefire.com>
Wed, 12 Nov 2014 22:51:38 +0000 (17:51 -0500)
ChangeLog
src/flow/flow_cache.cc
src/main/snort.cc

index ab9584afd15f911d1d13e8136259f84abe7f85c8..66cb1d5b9a4d5ae698a1990140f67509bde5831b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -23,6 +23,7 @@
 -- flush available data for non-paf splitters
 -- fixed inspector reinit
 -- fixed byte_extract and byte_jump endianisms
+-- suspend active when purging caches
 
 127
 -- REG_TEST out logging tcp options for rebuilt packets to match snort bug
index 5464213a24a17f32c86d571222b5afa58781d4c0..7858da32cb39067a88daba292922545153f80100 100644 (file)
@@ -313,6 +313,7 @@ int FlowCache::purge()
 {
     int retCount = 0;
 
+    Active_Suspend();
     flags |= SESSION_CACHE_FLAG_PURGING;
     Flow* flow = (Flow*)hash_table->first();
 
@@ -325,6 +326,7 @@ int FlowCache::purge()
     }
 
     flags &= ~SESSION_CACHE_FLAG_PURGING;
+    Active_Resume();
 
     return retCount;
 }
index 04a8e66229cc7f1704795313cd9395e2841fbb87..951464bd2061dc36e198084945f814fe9e1332af 100644 (file)
@@ -1003,6 +1003,7 @@ void snort_thread_term()
 
     DAQ_Delete();
 
+    // FIXIT-L this is kinda squiffy for multithreads
     if ( snort_conf->dirty_pig )
         return;