diff options
| author | lijia <[email protected]> | 2020-09-11 12:09:03 +0800 |
|---|---|---|
| committer | lijia <[email protected]> | 2020-09-11 12:09:03 +0800 |
| commit | 44124cad31f35bd16a771602b936d9acb3e8d672 (patch) | |
| tree | 06f4a94459732d8500b1483ec86df40e6939ea2d | |
| parent | a06e2531fe3e7d38457395ebfbffa0bea5501a3e (diff) | |
修复插件返回DROPPKT后, 后续插件还能获取到包的BUG.v4.1.5
| -rw-r--r-- | src/dealpkt/callapp.c | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/src/dealpkt/callapp.c b/src/dealpkt/callapp.c index cfee3a4..15314e7 100644 --- a/src/dealpkt/callapp.c +++ b/src/dealpkt/callapp.c @@ -442,10 +442,6 @@ int stream_process(struct streaminfo *a_stream,const void *this_iphdr, const voi #endif
}
local_app_ret = pFunInfo->appState;
- if(pFunInfo->appState&APP_STATE_DROPPKT)
- {
- ret=DROP;
- }
if(!(pFunInfo->appState&APP_STATE_DROPME))
{
@@ -482,6 +478,12 @@ int stream_process(struct streaminfo *a_stream,const void *this_iphdr, const voi /* �����pending��, KILL FOLLOWֱ���˳�ѭ������ */
break;
}
+
+ if(local_app_ret & APP_STATE_DROPPKT)
+ {
+ ret=DROP;
+ break; //2020-09-10 lijia add, �������������
+ }
}
//����Ҫ�ٴ��������fun���������ͷ�
@@ -545,11 +547,6 @@ int stream_process(struct streaminfo *a_stream,const void *this_iphdr, const voi }
local_app_ret = pFunInfo->appState;
- if(pFunInfo->appState&APP_STATE_DROPPKT)
- {
- ret=DROP;
- }
-
if(pFunInfo->appState&APP_STATE_DROPME)
{
if(pPrev==NULL)
@@ -609,6 +606,11 @@ int stream_process(struct streaminfo *a_stream,const void *this_iphdr, const voi if(local_app_ret & (APP_STATE_KILL_FOLLOW | APP_STATE_KILL_OTHER)){
break;
}
+ if(local_app_ret&APP_STATE_DROPPKT)
+ {
+ ret=DROP;
+ break; //2020-09-10 lijia add, �������������
+ }
}
//���������д�Ҷ�����Ҫ��
|
