summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorluwenpeng <[email protected]>2024-10-25 13:19:58 +0800
committerluwenpeng <[email protected]>2024-10-25 13:19:58 +0800
commite2c212fb71769f1a4cd9f66c984bf82e6b6bdb42 (patch)
treef9301b09c3a74cf01e7b4638d972cb145f1efdea /include
parentb5606c689d6b4437e62d38a4445c2aaa0efbafbd (diff)
move stellar/packet_manager.h into stellar/packet.h
Diffstat (limited to 'include')
-rw-r--r--include/stellar/packet.h31
-rw-r--r--include/stellar/packet_manager.h41
2 files changed, 31 insertions, 41 deletions
diff --git a/include/stellar/packet.h b/include/stellar/packet.h
index 2e4b78e..413676a 100644
--- a/include/stellar/packet.h
+++ b/include/stellar/packet.h
@@ -16,6 +16,9 @@ extern "C"
#include <linux/if_ether.h>
#include <linux/mpls.h>
+#include "stellar/exdata.h"
+#include "stellar/module_manager.h"
+
struct packet;
/******************************************************************************
* layer
@@ -188,6 +191,34 @@ uint16_t packet_get_payload_len(const struct packet *pkt);
void packet_set_exdata(struct packet *pkt, int idx, void *ex_ptr);
void *packet_get_exdata(struct packet *pkt, int idx);
+/******************************************************************************
+ * packet manager
+ ******************************************************************************/
+
+enum packet_stage
+{
+ PACKET_STAGE_PREROUTING,
+ PACKET_STAGE_INPUT,
+ PACKET_STAGE_FORWARD,
+ PACKET_STAGE_OUTPUT,
+ PACKET_STAGE_POSTROUTING,
+ PACKET_STAGE_MAX,
+};
+
+struct packet_manager;
+struct packet_manager *stellar_module_get_packet_manager(struct stellar_module_manager *mod_mgr);
+int packet_manager_new_packet_exdata_index(struct packet_manager *pkt_mgr, const char *name, exdata_free *func, void *arg);
+
+typedef void on_packet_stage_callback(struct packet *pkt, enum packet_stage stage, void *arg);
+int packet_manager_subscribe(struct packet_manager *pkt_mgr, enum packet_stage stage, on_packet_stage_callback *cb, void *arg);
+
+// if two modules claim the same packet at the same stage, the second 'claim' fails.
+// return 0 on success
+// return -1 on failure
+typedef void on_packet_claimed_callback(struct packet *pkt, void *arg);
+int packet_manager_claim_packet(struct packet_manager *pkt_mgr, uint16_t thread_id, struct packet *pkt, on_packet_claimed_callback cb, void *arg);
+void packet_manager_schedule_packet(struct packet_manager *pkt_mgr, uint16_t thread_id, struct packet *pkt, enum packet_stage stage);
+
#ifdef __cplusplus
}
#endif
diff --git a/include/stellar/packet_manager.h b/include/stellar/packet_manager.h
deleted file mode 100644
index 870eb2a..0000000
--- a/include/stellar/packet_manager.h
+++ /dev/null
@@ -1,41 +0,0 @@
-#pragma once
-
-#ifdef __cplusplus
-extern "C"
-{
-#endif
-
-#include "stellar/exdata.h"
-#include "stellar/packet.h"
-
-#include "stellar/module_manager.h"
-
-enum packet_stage
-{
- PACKET_STAGE_PREROUTING,
- PACKET_STAGE_INPUT,
- PACKET_STAGE_FORWARD,
- PACKET_STAGE_OUTPUT,
- PACKET_STAGE_POSTROUTING,
- PACKET_STAGE_MAX,
-};
-
-struct packet_manager;
-
-struct packet_manager *stellar_module_get_packet_manager(struct stellar_module_manager *mod_mgr);
-
-int packet_manager_new_packet_exdata_index(struct packet_manager *pkt_mgr, const char *name, exdata_free *func, void *arg);
-
-typedef void on_packet_stage_callback(enum packet_stage stage, struct packet *pkt, void *arg);
-int packet_manager_subscribe(struct packet_manager *pkt_mgr, enum packet_stage stage, on_packet_stage_callback *cb, void *arg);
-
-// if two modules claim the same packet at the same stage, the second 'claim' fails.
-// return 0 on success
-// return -1 on failure
-typedef void on_packet_claimed_callback(struct packet *pkt, void *arg);
-int packet_manager_claim_packet(struct packet_manager *pkt_mgr, uint16_t thread_id, struct packet *pkt, on_packet_claimed_callback cb, void *arg);
-void packet_manager_schedule_packet(struct packet_manager *pkt_mgr, uint16_t thread_id, struct packet *pkt, enum packet_stage stage);
-
-#ifdef __cplusplus
-}
-#endif