summaryrefslogtreecommitdiff
path: root/tests/conntrackd/dissect-sync/l4_udp.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/conntrackd/dissect-sync/l4_udp.c')
-rwxr-xr-xtests/conntrackd/dissect-sync/l4_udp.c26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/conntrackd/dissect-sync/l4_udp.c b/tests/conntrackd/dissect-sync/l4_udp.c
new file mode 100755
index 0000000..6f16142
--- /dev/null
+++ b/tests/conntrackd/dissect-sync/l4_udp.c
@@ -0,0 +1,26 @@
+#include <netinet/ip.h>
+#include <netinet/udp.h>
+
+#include "proto.h"
+
+static int l4_udp_pkt_size(const uint8_t *pkt, uint32_t dataoff)
+{
+ return sizeof(struct udphdr);
+}
+
+static int l4_udp_pkt_no_data(const uint8_t *pkt)
+{
+ /* UDP has no control packets. */
+ return 1;
+}
+
+static struct proto_l4_helper udp = {
+ .l4protonum = IPPROTO_UDP,
+ .l4pkt_size = l4_udp_pkt_size,
+ .l4pkt_no_data = l4_udp_pkt_no_data,
+};
+
+void l4_udp_init(void)
+{
+ proto_l4_helper_register(&udp);
+}