test(packet manager): test packets flow between multiple queues
This commit is contained in:
@@ -7,6 +7,16 @@ extern "C"
|
||||
|
||||
#include "packet.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_schema;
|
||||
struct packet_manager_runtime;
|
||||
@@ -15,8 +25,10 @@ struct packet_manager_schema *packet_manager_get_schema(struct packet_manager *p
|
||||
struct packet_manager_runtime *packet_manager_get_runtime(struct packet_manager *pkt_mgr, uint16_t thr_idx);
|
||||
|
||||
typedef void on_packet_stage_callback(enum packet_stage stage, struct packet *pkt, void *args);
|
||||
int packet_manager_schema_add_subscriber(struct packet_manager_schema *schema, enum packet_stage stage, on_packet_stage_callback cb, void *args);
|
||||
int packet_manager_schema_add_subscriber(struct packet_manager_schema *pkt_mgr_schema, enum packet_stage stage, on_packet_stage_callback cb, void *args);
|
||||
|
||||
// take 只执行一次 ???
|
||||
// 同一 stage 后面的 msg 是否中断???不中断
|
||||
void packet_manager_runtime_take_packet(struct packet_manager_runtime *pkt_mgr_rt, struct packet *pkt);
|
||||
void packet_manager_runtime_schedule_packet(struct packet_manager_runtime *pkt_mgr_rt, struct packet *pkt, enum packet_stage stage);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user