?? filter.cpp
字號:
// Filter.cpp : Defines the entry point for the DLL application.
//
#include "stdafx.h"
#include "Filter.h"
#include <stdlib.h>
#include <malloc.h>
#include "cons_def.h"
#include "ZPIMObject.h"
#include "fw_interface.h"
ZPIMObject *pIMObject=NULL;
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
pIMObject=new ZPIMObject;
break;
case DLL_THREAD_ATTACH:
break;
case DLL_THREAD_DETACH:
break;
case DLL_PROCESS_DETACH:
if(pIMObject) delete pIMObject;
break;
}
return TRUE;
}
FILTER_API void DeleteFilter()
{
unsigned char stat=FWS_ALLOWALL;
if(!pIMObject) return;
pIMObject->SetFwStatus(&stat);
pIMObject->CleanCheckData();
return;
}
FILTER_API int AddFilterKey(unsigned short port, char *pkey)
{
struct Interface_Keyword *pK=NULL;
int ret, len=0;
unsigned char stat, mode;
if(!pkey) return -1;
len=strlen(pkey);
if(len<=0) return -1;
if(!pIMObject) return -1;
pK=(struct Interface_Keyword *)malloc(len+sizeof(struct Interface_Keyword));
if(!pK) return -1;
pK->id=0;
pK->len = len;
pK->port = port;
memcpy((char *)pK+sizeof(*pK), pkey, len);
stat = FWS_NORMAL;
pIMObject->SetFwStatus(&stat);
mode = RM_ALLOW;
pIMObject->SetFwMode(&mode);
ret = pIMObject->AddCheckData(pK);
free(pK);
if(ret==ERROR_SUCCESS) return 1; else return -1;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -