aboutsummaryrefslogtreecommitdiff
path: root/analyzer/capture.c
diff options
context:
space:
mode:
authorMosder <xmosder12@gmail.com>2026-06-13 20:14:51 +0200
committerMosder <xmosder12@gmail.com>2026-06-13 20:14:51 +0200
commitf0d9f0c2dcc2029a907deee7981e7e5230b6d77c (patch)
treec20714dd85629f7fbacb10c0dfc8d80bc45c14a6 /analyzer/capture.c
parent66226cdc6eb6dbcfde7932a192a438ebfe438bda (diff)
feat: added the simple capturing packets mode
Diffstat (limited to 'analyzer/capture.c')
-rw-r--r--analyzer/capture.c28
1 files changed, 28 insertions, 0 deletions
diff --git a/analyzer/capture.c b/analyzer/capture.c
new file mode 100644
index 0000000..0a75e09
--- /dev/null
+++ b/analyzer/capture.c
@@ -0,0 +1,28 @@
+#include "capture.h"
+
+#include <stdio.h>
+#include <stdlib.h>
+
+#include "headers/interface.h"
+#include "headers/server.h"
+#include "utils/fs.h"
+#include "utils/time.h"
+
+void capture_to_file(char *path) {
+ char command[128];
+ sprintf(command, "tshark -i %s -f \"src host %s\" -w %s", INTERFACE, SERVER_IP, path);
+ system(command);
+}
+
+void capturing_mode(char *path) {
+ if (path != NULL) {
+ capture_to_file(path);
+ return;
+ }
+
+ char capture_dir[256], new_path[256], date_time[128];
+ get_capture_dir(capture_dir);
+ get_date_time_string(date_time);
+ sprintf(new_path, "%s/capture-%s.pcap", capture_dir, date_time);
+ capture_to_file(new_path);
+}