aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMosder <xmosder12@gmail.com>2026-07-10 10:17:47 +0200
committerMosder <xmosder12@gmail.com>2026-07-10 10:17:47 +0200
commit54fdf207352a0ee44a8264972118f6cc9d30cad1 (patch)
treee5182fabb386bef41ccf4b55a89bb4dfb1cd5653
parent9c7b6c0800434aa9e320e547605ca77bd84eeb71 (diff)
feat: defined unsigned char as byte_t
-rw-r--r--analyzer/analyzer.c4
-rw-r--r--analyzer/utils/pcap.c11
-rw-r--r--analyzer/utils/pcap.h15
3 files changed, 14 insertions, 16 deletions
diff --git a/analyzer/analyzer.c b/analyzer/analyzer.c
index acbd5de..7db377e 100644
--- a/analyzer/analyzer.c
+++ b/analyzer/analyzer.c
@@ -15,8 +15,8 @@ void analyze_file(char *path) {
}
struct pcap_pkthdr *packet_data;
- const unsigned char *packet;
- const unsigned char *payload;
+ const byte_t *packet;
+ const byte_t *payload;
// read packets from the file
while (pcap_next_ex(handle, &packet_data, &packet) == 1) {
diff --git a/analyzer/utils/pcap.c b/analyzer/utils/pcap.c
index d9687b3..d38cbff 100644
--- a/analyzer/utils/pcap.c
+++ b/analyzer/utils/pcap.c
@@ -4,7 +4,7 @@
#include <netinet/ip.h>
#include <netinet/tcp.h>
-const unsigned char *get_payload_from_packet(const unsigned char *packet, const struct pcap_pkthdr *packet_data, int *payload_len, uint32_t *tcp_seq) {
+const byte_t *get_payload_from_packet(const byte_t *packet, const struct pcap_pkthdr *packet_data, int *payload_len, uint32_t *tcp_seq) {
// get Ethernet header
const struct ether_header *eth_header = (const struct ether_header *)packet;
int eth_header_len = sizeof(struct ether_header);
@@ -38,20 +38,17 @@ const unsigned char *get_payload_from_packet(const unsigned char *packet, const
return packet + total_header_len;
}
-PendingPayload new_pending(const unsigned char *payload, int payload_len) {
- // TODO: impement
+PendingPayload new_pending(const byte_t *payload, int payload_len) {
PendingPayload tmp;
return tmp;
}
-unsigned char *free_parsed_data(unsigned char *stream, uint32_t stream_seq, int stream_len, int parsed_len) {
+byte_t *free_parsed_data(byte_t *stream, uint32_t stream_seq, int stream_len, int parsed_len) {
// TODO: impement
return NULL;
}
-int add_segment_to_stream(
- unsigned char *stream, uint32_t stream_seq, int stream_len, const unsigned char *payload, uint32_t payload_seq, int payload_len, HashMap *pending
-) {
+int add_segment_to_stream(byte_t *stream, uint32_t stream_seq, int stream_len, const byte_t *payload, uint32_t payload_seq, int payload_len, HashMap *pending) {
// TODO: impement
return 0;
}
diff --git a/analyzer/utils/pcap.h b/analyzer/utils/pcap.h
index a423083..10f01f1 100644
--- a/analyzer/utils/pcap.h
+++ b/analyzer/utils/pcap.h
@@ -5,6 +5,8 @@
#include "hashmap.h"
+typedef unsigned char byte_t;
+
// get payload from a TCP/IP packet
// params:
// - packet - captured packet
@@ -13,11 +15,11 @@
// - tcp_seq - pointer to save the TCP sequence number
// returns:
// pointer to the payload or NULL if not a correct packet
-extern const unsigned char *get_payload_from_packet(const unsigned char *packet, const struct pcap_pkthdr *packet_data, int *payload_len, uint32_t *tcp_seq);
+extern const byte_t *get_payload_from_packet(const byte_t *packet, const struct pcap_pkthdr *packet_data, int *payload_len, uint32_t *tcp_seq);
// struct to persistently store pending payloads
typedef struct {
- unsigned char *payload;
+ byte_t *payload;
int payload_len;
} PendingPayload;
@@ -27,7 +29,7 @@ typedef struct {
// - payload_len - length of the payload to store
// returns:
// PendingPayload struct with stored payload
-extern PendingPayload new_pending(const unsigned char *payload, int payload_len);
+extern PendingPayload new_pending(const byte_t *payload, int payload_len);
// remove parsed part of the stream from memory and return only unparsed part
// params:
@@ -37,7 +39,7 @@ extern PendingPayload new_pending(const unsigned char *payload, int payload_len)
// - parsed_len - count of n first bytes of the stream that were parsed
// returns:
// pointer to the new, reduced stream
-extern unsigned char *free_parsed_data(unsigned char *stream, uint32_t stream_seq, int stream_len, int parsed_len);
+extern byte_t *free_parsed_data(byte_t *stream, uint32_t stream_seq, int stream_len, int parsed_len);
// add TCP segment to stream
// params:
@@ -50,6 +52,5 @@ extern unsigned char *free_parsed_data(unsigned char *stream, uint32_t stream_se
// - pending - hashmap (seq -> PendingPayload) of pending payloads to be added to stream
// returns:
// 1 if the payload was added to the stream, 0 if it was discarded or saved to pending
-extern int add_segment_to_stream(
- unsigned char *stream, uint32_t stream_seq, int stream_len, const unsigned char *payload, uint32_t payload_seq, int payload_len, HashMap *pending
-);
+extern int
+add_segment_to_stream(byte_t *stream, uint32_t stream_seq, int stream_len, const byte_t *payload, uint32_t payload_seq, int payload_len, HashMap *pending);