🐞 fix(plugin manager api): enhanced parameter check
This commit is contained in:
@@ -895,7 +895,7 @@ int stellar_packet_plugin_register(struct stellar *st, unsigned char ip_proto, p
|
||||
|
||||
void plugin_manager_on_packet_ingress(struct plugin_manager_schema *plug_mgr, struct packet *pkt)
|
||||
{
|
||||
if(plug_mgr->registered_packet_plugin_array == NULL || pkt == NULL)return;
|
||||
if(plug_mgr==NULL || plug_mgr->registered_packet_plugin_array == NULL || pkt == NULL)return;
|
||||
struct registered_packet_plugin_schema *p=NULL;
|
||||
|
||||
//TODO: get innermost layer ip protocol by packet api
|
||||
@@ -919,7 +919,7 @@ void plugin_manager_on_packet_ingress(struct plugin_manager_schema *plug_mgr, st
|
||||
|
||||
void plugin_manager_on_packet_egress(struct plugin_manager_schema *plug_mgr, struct packet *pkt)
|
||||
{
|
||||
if(plug_mgr->registered_packet_plugin_array == NULL || pkt == NULL)return;
|
||||
if(plug_mgr == NULL || plug_mgr->registered_packet_plugin_array == NULL || pkt == NULL)return;
|
||||
int tid=stellar_get_current_thread_index();
|
||||
stellar_mq_dispatch(plug_mgr->per_thread_data[tid].priority_mq, &plug_mgr->per_thread_data[tid].dealth_letter_queue, NULL, pkt);
|
||||
plug_mgr->per_thread_data[tid].pub_packet_msg_cnt=-1;//disable packet message publish
|
||||
@@ -950,7 +950,7 @@ int stellar_polling_plugin_register(struct stellar *st, plugin_on_polling_func o
|
||||
|
||||
int plugin_manager_on_polling(struct plugin_manager_schema *plug_mgr)
|
||||
{
|
||||
if(plug_mgr->registered_polling_plugin_array == NULL)return 0;
|
||||
if(plug_mgr==NULL || plug_mgr->registered_polling_plugin_array == NULL)return 0;
|
||||
struct registered_polling_plugin_schema *p=NULL;
|
||||
int polling_state=0;
|
||||
while ((p = (struct registered_polling_plugin_schema *)utarray_next(plug_mgr->registered_polling_plugin_array, p)))
|
||||
@@ -992,6 +992,7 @@ int stellar_session_plugin_register(struct stellar *st,
|
||||
|
||||
void plugin_manager_on_session_ingress(struct session *sess, struct packet *pkt)
|
||||
{
|
||||
if(sess==NULL)return;
|
||||
struct plugin_manager_runtime *plug_mgr_rt = (struct plugin_manager_runtime *)session_get_user_data(sess);
|
||||
if(plug_mgr_rt==NULL)return;
|
||||
#if 0
|
||||
@@ -1062,6 +1063,7 @@ void plugin_manager_on_session_ingress(struct session *sess, struct packet *pkt)
|
||||
|
||||
void plugin_manager_on_session_egress(struct session *sess, struct packet *pkt)
|
||||
{
|
||||
if(sess==NULL)return;
|
||||
struct plugin_manager_runtime *plug_mgr_rt = (struct plugin_manager_runtime *)session_get_user_data(sess);
|
||||
if(plug_mgr_rt==NULL)return;
|
||||
plugin_manager_scratch_session_set(sess);
|
||||
@@ -1076,6 +1078,7 @@ void plugin_manager_on_session_egress(struct session *sess, struct packet *pkt)
|
||||
|
||||
void plugin_manager_on_session_closing(struct session *sess)
|
||||
{
|
||||
if(sess==NULL)return;
|
||||
struct plugin_manager_runtime *plug_mgr_rt = (struct plugin_manager_runtime *)session_get_user_data(sess);
|
||||
if(plug_mgr_rt==NULL)return;
|
||||
plug_mgr_rt->pub_session_msg_cnt=0;// reset pub_msg_cnt
|
||||
|
||||
Reference in New Issue
Block a user