none
[WFP] Windows Filtering Platform Sample fails to build x64\Release\WFPSamplerCalloutDriver.sys with Visual Studio 2015 U3 RRS feed

  • Question

  • I run into the troubles when building complete solution. All other configurations works well.
    Does someone solved it? Is that known problem? What is solution to build?

    Here is output from build:

    1>------ Rebuild All started: Project: WFPSampler (Syslib\WFPSampler), Configuration: Release x64 ------
    1>  Building 'WFPSampler' with toolset 'WindowsKernelModeDriver10.0' and the 'Desktop' target platform.
    1>  HelperFunctions_ClassifyData.cpp
    1>  HelperFunctions_DeferredProcedureCalls.cpp
    1>  HelperFunctions_FlowContext.cpp
    1>  HelperFunctions_FwpObjects.cpp
    1>  HelperFunctions_Headers.cpp
    1>  HelperFunctions_InjectionData.cpp
    1>  HelperFunctions_NDIS.cpp
    1>  HelperFunctions_NetBuffer.cpp
    1>  HelperFunctions_PendData.cpp
    1>  HelperFunctions_RedirectData.cpp
    1>  HelperFunctions_WorkItems.cpp
    1>  Generating Code...
    1>  WFPSampler.vcxproj -> D:\Projects\Windows-driver-samples\Windows-driver-samples-master\network\trans\WFPSampler\syslib\x64\Release\WFPSampler.lib
    2>------ Rebuild All started: Project: WFPSamplerCalloutDriver, Configuration: Release x64 ------
    2>  Building 'WFPSamplerCalloutDriver' with toolset 'WindowsKernelModeDriver10.0' and the 'Desktop' target platform.
    2>  Stamping .\x64\Release\\WFPSamplerCalloutDriver.inf [Version] section with DriverVer=07/07/2017,14.8.24.504
    2>  ClassifyFunctions_AdvancedPacketInjectionCallouts.cpp
    2>  ClassifyFunctions_BasicActionCallouts.cpp
    2>  ClassifyFunctions_BasicPacketExaminationCallouts.cpp
    2>  ClassifyFunctions_BasicPacketInjectionCallouts.cpp
    2>  ClassifyFunctions_BasicPacketModificationCallouts.cpp
    2>  ClassifyFunctions_BasicStreamInjectionCallouts.cpp
    2>  ClassifyFunctions_FastPacketInjectionCallouts.cpp
    2>  ClassifyFunctions_FastStreamInjectionCallouts.cpp
    2>  ClassifyFunctions_FlowAssociationCallouts.cpp
    2>  ClassifyFunctions_PendAuthorizationCallouts.cpp
    2>  ClassifyFunctions_PendEndpointClosureCallouts.cpp
    2>  ClassifyFunctions_ProxyCallouts.cpp
    2>  CompletionFunctions_AdvancedPacketInjectionCallouts.cpp
    2>  CompletionFunctions_BasicPacketInjectionCallouts.cpp
    2>  CompletionFunctions_BasicPacketModificationCallouts.cpp
    2>  CompletionFunctions_BasicStreamInjectionCallouts.cpp
    2>  CompletionFunctions_FastPacketInjectionCallouts.cpp
    2>  CompletionFunctions_FastStreamInjectionCallouts.cpp
    2>  CompletionFunctions_PendAuthorizationCallouts.cpp
    2>  CompletionFunctions_ProxyCallouts.cpp
    2>  Generating Code...
    2>  Compiling...
    2>  Framework_WFPSamplerCalloutDriver.cpp
    2>  Framework_Events.cpp
    2>  Framework_PowerStates.cpp
    2>  HelperFunctions_ExposedCallouts.cpp
    2>  NotifyFunctions_AdvancedCallouts.cpp
    2>  NotifyFunctions_BasicCallouts.cpp
    2>  NotifyFunctions_FastCallouts.cpp
    2>  NotifyFunctions_FlowDelete.cpp
    2>  NotifyFunctions_PendCallouts.cpp
    2>  NotifyFunctions_ProxyCallouts.cpp
    2>  SubscriptionFunctions_BFEState.cpp
    2>  Generating Code...
    2>  UUID.lib(fwpapi.obj) : MSIL .netmodule or module compiled with /GL found; restarting link with /LTCG; add /LTCG to the link command line to improve linker performance
    2>CompletionFunctions_BasicPacketModificationCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprClassifyDataDestroyLocalCopy(struct CLASSIFY_DATA_ * *)" (?KrnlHlprClassifyDataDestroyLocalCopy@@YAXPEAPEAUCLASSIFY_DATA_@@@Z)
    2>CompletionFunctions_BasicStreamInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprClassifyDataDestroyLocalCopy(struct CLASSIFY_DATA_ * *)" (?KrnlHlprClassifyDataDestroyLocalCopy@@YAXPEAPEAUCLASSIFY_DATA_@@@Z)
    2>CompletionFunctions_PendAuthorizationCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprClassifyDataDestroyLocalCopy(struct CLASSIFY_DATA_ * *)" (?KrnlHlprClassifyDataDestroyLocalCopy@@YAXPEAPEAUCLASSIFY_DATA_@@@Z)
    2>CompletionFunctions_ProxyCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprClassifyDataDestroyLocalCopy(struct CLASSIFY_DATA_ * *)" (?KrnlHlprClassifyDataDestroyLocalCopy@@YAXPEAPEAUCLASSIFY_DATA_@@@Z)
    2>ClassifyFunctions_PendAuthorizationCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprClassifyDataDestroyLocalCopy(struct CLASSIFY_DATA_ * *)" (?KrnlHlprClassifyDataDestroyLocalCopy@@YAXPEAPEAUCLASSIFY_DATA_@@@Z)
    2>ClassifyFunctions_ProxyCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprClassifyDataDestroyLocalCopy(struct CLASSIFY_DATA_ * *)" (?KrnlHlprClassifyDataDestroyLocalCopy@@YAXPEAPEAUCLASSIFY_DATA_@@@Z)
    2>CompletionFunctions_AdvancedPacketInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprClassifyDataDestroyLocalCopy(struct CLASSIFY_DATA_ * *)" (?KrnlHlprClassifyDataDestroyLocalCopy@@YAXPEAPEAUCLASSIFY_DATA_@@@Z)
    2>CompletionFunctions_BasicPacketInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprClassifyDataDestroyLocalCopy(struct CLASSIFY_DATA_ * *)" (?KrnlHlprClassifyDataDestroyLocalCopy@@YAXPEAPEAUCLASSIFY_DATA_@@@Z)
    2>ClassifyFunctions_AdvancedPacketInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprClassifyDataDestroyLocalCopy(struct CLASSIFY_DATA_ * *)" (?KrnlHlprClassifyDataDestroyLocalCopy@@YAXPEAPEAUCLASSIFY_DATA_@@@Z)
    2>ClassifyFunctions_BasicPacketInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprClassifyDataDestroyLocalCopy(struct CLASSIFY_DATA_ * *)" (?KrnlHlprClassifyDataDestroyLocalCopy@@YAXPEAPEAUCLASSIFY_DATA_@@@Z)
    2>ClassifyFunctions_BasicPacketModificationCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprClassifyDataDestroyLocalCopy(struct CLASSIFY_DATA_ * *)" (?KrnlHlprClassifyDataDestroyLocalCopy@@YAXPEAPEAUCLASSIFY_DATA_@@@Z)
    2>ClassifyFunctions_BasicStreamInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprClassifyDataDestroyLocalCopy(struct CLASSIFY_DATA_ * *)" (?KrnlHlprClassifyDataDestroyLocalCopy@@YAXPEAPEAUCLASSIFY_DATA_@@@Z)
    2>CompletionFunctions_BasicPacketModificationCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprInjectionDataDestroy(struct INJECTION_DATA_ * *)" (?KrnlHlprInjectionDataDestroy@@YAXPEAPEAUINJECTION_DATA_@@@Z)
    2>CompletionFunctions_BasicStreamInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprInjectionDataDestroy(struct INJECTION_DATA_ * *)" (?KrnlHlprInjectionDataDestroy@@YAXPEAPEAUINJECTION_DATA_@@@Z)
    2>CompletionFunctions_PendAuthorizationCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprInjectionDataDestroy(struct INJECTION_DATA_ * *)" (?KrnlHlprInjectionDataDestroy@@YAXPEAPEAUINJECTION_DATA_@@@Z)
    2>CompletionFunctions_ProxyCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprInjectionDataDestroy(struct INJECTION_DATA_ * *)" (?KrnlHlprInjectionDataDestroy@@YAXPEAPEAUINJECTION_DATA_@@@Z)
    2>ClassifyFunctions_PendAuthorizationCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprInjectionDataDestroy(struct INJECTION_DATA_ * *)" (?KrnlHlprInjectionDataDestroy@@YAXPEAPEAUINJECTION_DATA_@@@Z)
    2>ClassifyFunctions_ProxyCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprInjectionDataDestroy(struct INJECTION_DATA_ * *)" (?KrnlHlprInjectionDataDestroy@@YAXPEAPEAUINJECTION_DATA_@@@Z)
    2>CompletionFunctions_AdvancedPacketInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprInjectionDataDestroy(struct INJECTION_DATA_ * *)" (?KrnlHlprInjectionDataDestroy@@YAXPEAPEAUINJECTION_DATA_@@@Z)
    2>CompletionFunctions_BasicPacketInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprInjectionDataDestroy(struct INJECTION_DATA_ * *)" (?KrnlHlprInjectionDataDestroy@@YAXPEAPEAUINJECTION_DATA_@@@Z)
    2>ClassifyFunctions_AdvancedPacketInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprInjectionDataDestroy(struct INJECTION_DATA_ * *)" (?KrnlHlprInjectionDataDestroy@@YAXPEAPEAUINJECTION_DATA_@@@Z)
    2>ClassifyFunctions_BasicPacketInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprInjectionDataDestroy(struct INJECTION_DATA_ * *)" (?KrnlHlprInjectionDataDestroy@@YAXPEAPEAUINJECTION_DATA_@@@Z)
    2>ClassifyFunctions_BasicPacketModificationCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprInjectionDataDestroy(struct INJECTION_DATA_ * *)" (?KrnlHlprInjectionDataDestroy@@YAXPEAPEAUINJECTION_DATA_@@@Z)
    2>ClassifyFunctions_BasicStreamInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprInjectionDataDestroy(struct INJECTION_DATA_ * *)" (?KrnlHlprInjectionDataDestroy@@YAXPEAPEAUINJECTION_DATA_@@@Z)
    2>ClassifyFunctions_PendAuthorizationCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprDPCDataDestroy(struct DPC_DATA_ * *)" (?KrnlHlprDPCDataDestroy@@YAXPEAPEAUDPC_DATA_@@@Z)
    2>ClassifyFunctions_PendEndpointClosureCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprDPCDataDestroy(struct DPC_DATA_ * *)" (?KrnlHlprDPCDataDestroy@@YAXPEAPEAUDPC_DATA_@@@Z)
    2>ClassifyFunctions_ProxyCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprDPCDataDestroy(struct DPC_DATA_ * *)" (?KrnlHlprDPCDataDestroy@@YAXPEAPEAUDPC_DATA_@@@Z)
    2>ClassifyFunctions_AdvancedPacketInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprDPCDataDestroy(struct DPC_DATA_ * *)" (?KrnlHlprDPCDataDestroy@@YAXPEAPEAUDPC_DATA_@@@Z)
    2>ClassifyFunctions_BasicPacketInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprDPCDataDestroy(struct DPC_DATA_ * *)" (?KrnlHlprDPCDataDestroy@@YAXPEAPEAUDPC_DATA_@@@Z)
    2>ClassifyFunctions_BasicPacketModificationCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprDPCDataDestroy(struct DPC_DATA_ * *)" (?KrnlHlprDPCDataDestroy@@YAXPEAPEAUDPC_DATA_@@@Z)
    2>ClassifyFunctions_BasicStreamInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprDPCDataDestroy(struct DPC_DATA_ * *)" (?KrnlHlprDPCDataDestroy@@YAXPEAPEAUDPC_DATA_@@@Z)
    2>NotifyFunctions_BasicCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprWorkItemDataDestroy(struct WORKITEM_DATA_ * *)" (?KrnlHlprWorkItemDataDestroy@@YAXPEAPEAUWORKITEM_DATA_@@@Z)
    2>NotifyFunctions_FastCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprWorkItemDataDestroy(struct WORKITEM_DATA_ * *)" (?KrnlHlprWorkItemDataDestroy@@YAXPEAPEAUWORKITEM_DATA_@@@Z)
    2>NotifyFunctions_PendCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprWorkItemDataDestroy(struct WORKITEM_DATA_ * *)" (?KrnlHlprWorkItemDataDestroy@@YAXPEAPEAUWORKITEM_DATA_@@@Z)
    2>NotifyFunctions_ProxyCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprWorkItemDataDestroy(struct WORKITEM_DATA_ * *)" (?KrnlHlprWorkItemDataDestroy@@YAXPEAPEAUWORKITEM_DATA_@@@Z)
    2>ClassifyFunctions_PendAuthorizationCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprWorkItemDataDestroy(struct WORKITEM_DATA_ * *)" (?KrnlHlprWorkItemDataDestroy@@YAXPEAPEAUWORKITEM_DATA_@@@Z)
    2>ClassifyFunctions_PendEndpointClosureCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprWorkItemDataDestroy(struct WORKITEM_DATA_ * *)" (?KrnlHlprWorkItemDataDestroy@@YAXPEAPEAUWORKITEM_DATA_@@@Z)
    2>ClassifyFunctions_ProxyCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprWorkItemDataDestroy(struct WORKITEM_DATA_ * *)" (?KrnlHlprWorkItemDataDestroy@@YAXPEAPEAUWORKITEM_DATA_@@@Z)
    2>NotifyFunctions_AdvancedCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprWorkItemDataDestroy(struct WORKITEM_DATA_ * *)" (?KrnlHlprWorkItemDataDestroy@@YAXPEAPEAUWORKITEM_DATA_@@@Z)
    2>ClassifyFunctions_AdvancedPacketInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprWorkItemDataDestroy(struct WORKITEM_DATA_ * *)" (?KrnlHlprWorkItemDataDestroy@@YAXPEAPEAUWORKITEM_DATA_@@@Z)
    2>ClassifyFunctions_BasicPacketInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprWorkItemDataDestroy(struct WORKITEM_DATA_ * *)" (?KrnlHlprWorkItemDataDestroy@@YAXPEAPEAUWORKITEM_DATA_@@@Z)
    2>ClassifyFunctions_BasicPacketModificationCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprWorkItemDataDestroy(struct WORKITEM_DATA_ * *)" (?KrnlHlprWorkItemDataDestroy@@YAXPEAPEAUWORKITEM_DATA_@@@Z)
    2>ClassifyFunctions_BasicStreamInjectionCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprWorkItemDataDestroy(struct WORKITEM_DATA_ * *)" (?KrnlHlprWorkItemDataDestroy@@YAXPEAPEAUWORKITEM_DATA_@@@Z)
    2>ClassifyFunctions_PendAuthorizationCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprPendDataDestroy(struct PEND_DATA_ * *)" (?KrnlHlprPendDataDestroy@@YAXPEAPEAUPEND_DATA_@@@Z)
    2>ClassifyFunctions_PendEndpointClosureCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprPendDataDestroy(struct PEND_DATA_ * *)" (?KrnlHlprPendDataDestroy@@YAXPEAPEAUPEND_DATA_@@@Z)
    2>NotifyFunctions_FlowDelete.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprPendDataDestroy(struct PEND_DATA_ * *)" (?KrnlHlprPendDataDestroy@@YAXPEAPEAUPEND_DATA_@@@Z)
    2>ClassifyFunctions_ProxyCallouts.obj : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprRedirectDataDestroy(struct REDIRECT_DATA_ * *)" (?KrnlHlprRedirectDataDestroy@@YAXPEAPEAUREDIRECT_DATA_@@@Z)
    2>NotifyFunctions_FlowDelete.obj : error LNK2001: unresolved external symbol "long __cdecl KrnlHlprFlowContextDestroy(struct FLOW_CONTEXT_ * *)" (?KrnlHlprFlowContextDestroy@@YAJPEAPEAUFLOW_CONTEXT_@@@Z)
    2>WFPSampler.lib(HelperFunctions_ClassifyData.obj) : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprFwpsIncomingMetadataValuesDestroyLocalCopy(struct FWPS_INCOMING_METADATA_VALUES0_ * *)" (?KrnlHlprFwpsIncomingMetadataValuesDestroyLocalCopy@@YAXPEAPEAUFWPS_INCOMING_METADATA_VALUES0_@@@Z)
    2>WFPSampler.lib(HelperFunctions_ClassifyData.obj) : error LNK2001: unresolved external symbol "void __cdecl KrnlHlprFwpsStreamCalloutIOPacketDestroyLocalCopy(struct FWPS_STREAM_CALLOUT_IO_PACKET0_ * *)" (?KrnlHlprFwpsStreamCalloutIOPacketDestroyLocalCopy@@YAXPEAPEAUFWPS_STREAM_CALLOUT_IO_PACKET0_@@@Z)
    2>x64\Release\WFPSamplerCalloutDriver.sys : fatal error LNK1120: 9 unresolved externals
    ========== Rebuild All: 1 succeeded, 1 failed, 0 skipped ==========

    Friday, July 7, 2017 11:50 AM

All replies

  • remove inline keyword in all h and cpp files.
    Tuesday, February 27, 2018 1:45 AM
  • You can be a little more surgical but inline definitely seems to be the problem. My patch was this:

    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_ClassifyData.cpp b/network/trans/WFPSampler/syslib/HelperFunctions_ClassifyData.cpp
    index fa2d410..78db3cd 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_ClassifyData.cpp
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_ClassifyData.cpp
    @@ -179,7 +179,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppClassifyData == 0)
    -inline VOID KrnlHlprClassifyDataDestroyLocalCopy(_Inout_ CLASSIFY_DATA** ppClassifyData)
    +VOID KrnlHlprClassifyDataDestroyLocalCopy(_Inout_ CLASSIFY_DATA** ppClassifyData)
     {
     #if DBG
        
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_ClassifyData.h b/network/trans/WFPSampler/syslib/HelperFunctions_ClassifyData.h
    index 6aa6e83..88efbe4 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_ClassifyData.h
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_ClassifyData.h
    @@ -52,7 +52,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppClassifyData == 0)
    -inline VOID KrnlHlprClassifyDataDestroyLocalCopy(_Inout_ CLASSIFY_DATA** ppClassifyData);
    +VOID KrnlHlprClassifyDataDestroyLocalCopy(_Inout_ CLASSIFY_DATA** ppClassifyData);
     
     _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_DeferredProcedureCalls.cpp b/network/trans/WFPSampler/syslib/HelperFunctions_DeferredProcedureCalls.cpp
    index 071c43f..96fb319 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_DeferredProcedureCalls.cpp
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_DeferredProcedureCalls.cpp
    @@ -111,7 +111,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppDPCData == 0)
    -inline VOID KrnlHlprDPCDataDestroy(_Inout_ DPC_DATA** ppDPCData)
    +VOID KrnlHlprDPCDataDestroy(_Inout_ DPC_DATA** ppDPCData)
     {
     #if DBG
     
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_DeferredProcedureCalls.h b/network/trans/WFPSampler/syslib/HelperFunctions_DeferredProcedureCalls.h
    index 4de525e..5770d1e 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_DeferredProcedureCalls.h
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_DeferredProcedureCalls.h
    @@ -52,7 +52,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppDPCData == 0)
    -inline VOID KrnlHlprDPCDataDestroy(_Inout_ DPC_DATA** ppDPCData);
    +VOID KrnlHlprDPCDataDestroy(_Inout_ DPC_DATA** ppDPCData);
     
     _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_FlowContext.cpp b/network/trans/WFPSampler/syslib/HelperFunctions_FlowContext.cpp
    index b6d561d..a21dcf8 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_FlowContext.cpp
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_FlowContext.cpp
    @@ -105,7 +105,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(return == STATUS_SUCCESS && *ppFlowContext == 0)
    -inline NTSTATUS KrnlHlprFlowContextDestroy(_Inout_ FLOW_CONTEXT** ppFlowContext)
    +NTSTATUS KrnlHlprFlowContextDestroy(_Inout_ FLOW_CONTEXT** ppFlowContext)
     {
     #if DBG
           
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_FlowContext.h b/network/trans/WFPSampler/syslib/HelperFunctions_FlowContext.h
    index 72689de..6e180e7 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_FlowContext.h
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_FlowContext.h
    @@ -113,7 +113,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(return == STATUS_SUCCESS && *ppFlowContext == 0)
    -inline NTSTATUS KrnlHlprFlowContextDestroy(_Inout_ FLOW_CONTEXT** ppFlowContext);
    +NTSTATUS KrnlHlprFlowContextDestroy(_Inout_ FLOW_CONTEXT** ppFlowContext);
     
     _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_FwpObjects.cpp b/network/trans/WFPSampler/syslib/HelperFunctions_FwpObjects.cpp
    index cc9a064..f792472 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_FwpObjects.cpp
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_FwpObjects.cpp
    @@ -6331,7 +6331,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppMetadata == 0)
    -inline VOID KrnlHlprFwpsIncomingMetadataValuesDestroyLocalCopy(_Inout_ FWPS_INCOMING_METADATA_VALUES** ppMetadata)
    +VOID KrnlHlprFwpsIncomingMetadataValuesDestroyLocalCopy(_Inout_ FWPS_INCOMING_METADATA_VALUES** ppMetadata)
     {
     #if DBG
        
    @@ -7169,7 +7169,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppIOPacket == 0)
    -inline VOID KrnlHlprFwpsStreamCalloutIOPacketDestroyLocalCopy(_Inout_ FWPS_STREAM_CALLOUT_IO_PACKET** ppIOPacket)
    +VOID KrnlHlprFwpsStreamCalloutIOPacketDestroyLocalCopy(_Inout_ FWPS_STREAM_CALLOUT_IO_PACKET** ppIOPacket)
     {
     #if DBG
        
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_FwpObjects.h b/network/trans/WFPSampler/syslib/HelperFunctions_FwpObjects.h
    index 39f69f5..19dff1e 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_FwpObjects.h
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_FwpObjects.h
    @@ -461,7 +461,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppMetadata == 0)
    -inline VOID KrnlHlprFwpsIncomingMetadataValuesDestroyLocalCopy(_Inout_ FWPS_INCOMING_METADATA_VALUES** ppMetadata);
    +VOID KrnlHlprFwpsIncomingMetadataValuesDestroyLocalCopy(_Inout_ FWPS_INCOMING_METADATA_VALUES** ppMetadata);
     
     _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
    @@ -548,7 +548,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppIOPacket == 0)
    -inline VOID KrnlHlprFwpsStreamCalloutIOPacketDestroyLocalCopy(_Inout_ FWPS_STREAM_CALLOUT_IO_PACKET** ppIOPacket);
    +VOID KrnlHlprFwpsStreamCalloutIOPacketDestroyLocalCopy(_Inout_ FWPS_STREAM_CALLOUT_IO_PACKET** ppIOPacket);
     
     _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_InjectionData.cpp b/network/trans/WFPSampler/syslib/HelperFunctions_InjectionData.cpp
    index 663f7c6..a9014ed 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_InjectionData.cpp
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_InjectionData.cpp
    @@ -118,7 +118,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppInjectionData == 0)
    -inline VOID KrnlHlprInjectionDataDestroy(_Inout_ INJECTION_DATA** ppInjectionData)
    +VOID KrnlHlprInjectionDataDestroy(_Inout_ INJECTION_DATA** ppInjectionData)
     {
     #if DBG
        
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_InjectionData.h b/network/trans/WFPSampler/syslib/HelperFunctions_InjectionData.h
    index d3d5d79..1e8619c 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_InjectionData.h
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_InjectionData.h
    @@ -57,7 +57,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppInjectionData == 0)
    -inline VOID KrnlHlprInjectionDataDestroy(_Inout_ INJECTION_DATA** ppInjectionData);
    +VOID KrnlHlprInjectionDataDestroy(_Inout_ INJECTION_DATA** ppInjectionData);
     
     _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_PendData.cpp b/network/trans/WFPSampler/syslib/HelperFunctions_PendData.cpp
    index 1ad4338..bc2528a 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_PendData.cpp
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_PendData.cpp
    @@ -142,7 +142,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppPendData == 0)
    -inline VOID KrnlHlprPendDataDestroy(_Inout_ PEND_DATA** ppPendData)
    +VOID KrnlHlprPendDataDestroy(_Inout_ PEND_DATA** ppPendData)
     {
     #if DBG
        
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_PendData.h b/network/trans/WFPSampler/syslib/HelperFunctions_PendData.h
    index 17174e3..12e06b4 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_PendData.h
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_PendData.h
    @@ -51,7 +51,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppPendData == 0)
    -inline VOID KrnlHlprPendDataDestroy(_Inout_ PEND_DATA** ppPendData);
    +VOID KrnlHlprPendDataDestroy(_Inout_ PEND_DATA** ppPendData);
     
     _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_RedirectData.cpp b/network/trans/WFPSampler/syslib/HelperFunctions_RedirectData.cpp
    index 2671e27..22f08c6 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_RedirectData.cpp
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_RedirectData.cpp
    @@ -132,7 +132,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppRedirectData == 0)
    -inline VOID KrnlHlprRedirectDataDestroy(_Inout_ REDIRECT_DATA** ppRedirectData)
    +VOID KrnlHlprRedirectDataDestroy(_Inout_ REDIRECT_DATA** ppRedirectData)
     {
     #if DBG
        
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_WorkItems.cpp b/network/trans/WFPSampler/syslib/HelperFunctions_WorkItems.cpp
    index 4c47f3b..2c513c2 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_WorkItems.cpp
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_WorkItems.cpp
    @@ -112,7 +112,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppWorkItemData == 0)
    -inline VOID KrnlHlprWorkItemDataDestroy(_Inout_ WORKITEM_DATA** ppWorkItemData)
    +VOID KrnlHlprWorkItemDataDestroy(_Inout_ WORKITEM_DATA** ppWorkItemData)
     {
     #if DBG
        
    diff --git a/network/trans/WFPSampler/syslib/HelperFunctions_WorkItems.h b/network/trans/WFPSampler/syslib/HelperFunctions_WorkItems.h
    index cbbc77b..5a715b6 100644
    --- a/network/trans/WFPSampler/syslib/HelperFunctions_WorkItems.h
    +++ b/network/trans/WFPSampler/syslib/HelperFunctions_WorkItems.h
    @@ -52,7 +52,7 @@ _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
     _IRQL_requires_same_
     _Success_(*ppWorkItemData == 0)
    -inline VOID KrnlHlprWorkItemDataDestroy(_Inout_ WORKITEM_DATA** ppWorkItemData);
    +VOID KrnlHlprWorkItemDataDestroy(_Inout_ WORKITEM_DATA** ppWorkItemData);
     
     _IRQL_requires_min_(PASSIVE_LEVEL)
     _IRQL_requires_max_(DISPATCH_LEVEL)
    

    Monday, July 30, 2018 6:54 PM