diff options
| author | niubinghui <[email protected]> | 2024-09-06 18:59:12 +0800 |
|---|---|---|
| committer | niubinghui <[email protected]> | 2024-09-06 18:59:12 +0800 |
| commit | f32a799e7d0ebfea23ba9712965c025ec771510c (patch) | |
| tree | fe773ac30ef9d3ee815751bf5cfbab9308aee030 /test/include/plugin_manager.h | |
| parent | 1d9e18762499e652af25b943001bc4fc307f989d (diff) | |
【修改】修改名称
Diffstat (limited to 'test/include/plugin_manager.h')
| -rw-r--r-- | test/include/plugin_manager.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/test/include/plugin_manager.h b/test/include/plugin_manager.h new file mode 100644 index 0000000..cf07167 --- /dev/null +++ b/test/include/plugin_manager.h @@ -0,0 +1,22 @@ +#pragma once + +#include "stellar/stellar.h" + +struct plugin_manager_schema; +struct plugin_manager_runtime; + +struct plugin_manager_schema *plugin_manager_init(struct stellar *st, const char *plugin_spec_file_path); +void plugin_manager_exit(struct plugin_manager_schema *plug_mgr); + +void plugin_manager_on_packet_ingress(struct plugin_manager_schema *plug_mgr, struct packet *pkt); +void plugin_manager_on_packet_egress(struct plugin_manager_schema *plug_mgr, struct packet *pkt); +//return polling work state, 0: idle, 1: working +int plugin_manager_on_polling(struct plugin_manager_schema *plug_mgr); + +//publish and dispatch session msg(msg, pkt) on session_mq +void plugin_manager_on_session_ingress(struct session *sess,struct packet *pkt); +void plugin_manager_on_session_egress(struct session *sess,struct packet *pkt); +void plugin_manager_on_session_closing(struct session *sess); + +struct plugin_manager_runtime *plugin_manager_session_runtime_new(struct plugin_manager_schema *plug_mgr, struct session *sess); +void plugin_manager_session_runtime_free(struct plugin_manager_runtime *plug_mgr_rt); |
