1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
| #define NDIS_WDM 1 #define NDIS620 1 #include <guiddef.h> #include <fwpmk.h> #include <fwpsk.h>
typedef struct _REGISTER_INFO { GUID FwpmLayerGuid; GUID FwpmSubLayerGuid; GUID FwpsCalloutGuid; UINT32 FwpsCalloutID; UINT32 FwpmCalloutID; UINT64 FwpmFilterID; } REGISTER_INFO, *PREGISTER_INFO; typedef struct _FLOWCXT_ENTRY { LIST_ENTRY Entry; UINT64 flowId; UINT16 layerId; UINT32 calloutId; UINT64 Pid; WCHAR Path[MAX_PATH]; } FLOWCXT_ENTRY, *PFLOWCXT_ENTRY;
KSPIN_LOCK MyFlowCtxLock = 0; LIST_ENTRY MyFlowCtxList = { 0 }; PDEVICE_OBJECT MyNetDevice = NULL; REGISTER_INFO MyConnect = { { 0xc38d57d1, 0x05a7, 0x4c33, 0x90, 0x4f, 0x7f, 0xbc, 0xee, 0xe6, 0x0e, 0x82 }, { 0xeebecc03, 0xced4, 0x4380, 0x81, 0x9a, 0x27, 0x34, 0x39, 0x7b, 0x2b, 0x74 }, { 0xd969fc61, 0x6fb2, 0x4504, 0x91, 0xce, 0xa9, 0x7c, 0x3c, 0x32, 0xad, 0x36 } }; REGISTER_INFO MyDatagram = { { 0x3d08bf4e, 0x45f6, 0x4930, 0xa9, 0x22, 0x41, 0x70, 0x98, 0xe2, 0x00, 0x27 }, { 0xeebecc03, 0xced4, 0x4380, 0x81, 0x9a, 0x27, 0x34, 0x39, 0x7b, 0x2b, 0x74 }, { 0xd969fc62, 0x6fb2, 0x4504, 0x91, 0xce, 0xa9, 0x7c, 0x3c, 0x32, 0xad, 0x36 } };
|