]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
Add functions for elapsed time computation.
authorEric Leblond <eric@regit.org>
Tue, 14 May 2013 09:09:48 +0000 (11:09 +0200)
committerEric Leblond <eric@regit.org>
Tue, 30 Jul 2013 13:22:34 +0000 (15:22 +0200)
src/suricata.c

index ac014f93e2c3a5a6d37d8e41e4f2fa4bbb2fa90b..2b31d44f6ceb763f17de5c33d535ca1e277fb1c2 100644 (file)
@@ -900,6 +900,8 @@ struct SuriInstance {
     int rule_reload;
     int daemon;
 
+    struct timeval start_time;
+
     char *log_dir;
 };
 
@@ -939,6 +941,22 @@ static TmEcode SuriPrintVersion()
     return TM_ECODE_OK;
 }
 
+static void SuriSetStartTime(struct SuriInstance *suri)
+{
+    memset(&suri->start_time, 0, sizeof(suri->start_time));
+    gettimeofday(&suri->start_time, NULL);
+}
+
+static void SuriPrintElapsedTime(struct SuriInstance *suri)
+{
+    struct timeval end_time;
+    memset(&end_time, 0, sizeof(end_time));
+    gettimeofday(&end_time, NULL);
+    uint64_t milliseconds = ((end_time.tv_sec - suri->start_time.tv_sec) * 1000) +
+        (((1000000 + end_time.tv_usec - suri->start_time.tv_usec) / 1000) - 1000);
+    SCLogInfo("time elapsed %.3fs", (float)milliseconds/(float)1000);
+}
+
 static TmEcode SuriParseCommandLine(int argc, char** argv, struct SuriInstance *suri)
 {
     int opt;
@@ -1980,9 +1998,7 @@ int main(int argc, char **argv)
 
     CoredumpLoadConfig();
 
-    struct timeval start_time;
-    memset(&start_time, 0, sizeof(start_time));
-    gettimeofday(&start_time, NULL);
+    SuriSetStartTime(&suri);
 
     SCDropMainThreadCaps(suri.userid, suri.groupid);
 
@@ -2087,12 +2103,7 @@ int main(int argc, char **argv)
         FlowForceReassembly();
     }
 
-    struct timeval end_time;
-    memset(&end_time, 0, sizeof(end_time));
-    gettimeofday(&end_time, NULL);
-    uint64_t milliseconds = ((end_time.tv_sec - start_time.tv_sec) * 1000) +
-        (((1000000 + end_time.tv_usec - start_time.tv_usec) / 1000) - 1000);
-    SCLogInfo("time elapsed %.3fs", (float)milliseconds/(float)1000);
+    SuriPrintElapsedTime(&suri);
 
     if (suri.rule_reload == 1) {
         /* Disable detect threads first.  This is required by live rule swap */