Sample Code

Windows Driver Samples/ Windows Filtering Platform Sample/ C++/ HCK/ WFPLogo_WFPSampler.Info/

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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
#######################################
#                                     #
#        Provider Information         #
#                                     #
#######################################
 
   CompanyName = "Microsoft Corporation";
   ProductName = "WFPSampler";
 
#######################################
#                                     #
#  Use the answer file to script the  #
# addition and removal of the filters #
#                                     #
#   Use only if the answer file has   #
#    been modified for your needs.    #
#                                     #
#        0 if not implemented         #
#        1 if implemented             #
#                                     #
#######################################
 
   UseAnswerFile = 1;
 
#######################################
#                                     #
#       Requirement Information       #
#                                     #
#        0 if not implemented         #
#        1 if implemented             #
#                                     #
#######################################
 
   CalloutDriver = 1;
 
   IsAFirewall = 1;
 
   LayeredOnMicrosoftWindowsFirewall = 0;
 
   DoesMACFiltering = 1;
 
   DoesVSwitchFiltering = 1;
 
   DoesPacketInjection = 1;
 
   DoesStreamInjection = 1;
 
   DoesConnectionProxying = 1;
 
#######################################
#                                     #
#            Attestations             #
#                                     #
#             0 if FALSE              #
#             1 if TRUE               #
#                                     #
#######################################
 
# NETWORK-0XXX Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.AppContainers.SupportModernApplications
#    WFP-based products must not block App Container apps operating within their declared network intentions by default, and should only do so when following specific user/admin intention or protecting the system against a specific threat.
 
   SupportModernApplications = 1;
 
# NETWORK-0270 Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.CleanUninstall
#    WFP-based products stop cleanly and clean up all running state upon uninstall.
 
   CleanUninstall = 1;
 
# NETWORK-0XXX Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.ConnectionProxying.NoDeadlocks
#    WFP-based products which redirect or proxy at redirect layers (connect redirect), must use the new proxying API so that other WFP-based products can determine that the connection has been proxied.
 
   NoProxyDeadlocks = 1;
 
# NETWORK-0262 Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.FwpmProviders.MaintainIdentifying
#    WFP-based products must create and maintain at least 1 identifying FWPM_PROVIDER provider object.
 
   IdentifyingProvider = 1;
 
# NETWORK-0265 Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.FwpmProviders.AssociateWithObjects
#    WFP-based products must associate all of their Provider Contexts, Filters, Sublayers, and Callouts with their corresponding identifying provider object.
 
   AssociateProvider = 1;
 
# NETWORK-0263 Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.FwpmFilters.MaintainOneTerminating
#    WFP-based products must create and maintain at least 1 terminating FWPM_FILTER object.
 
   TerminatingFilter = 1;
 
# NETWORK-0264 Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.FwpmSublayers.UseOwnOrBuiltIn
#    WFP-based products must use only their own sublayer or one of the built-in sublayers
 
   UseOwnSubLayer = 1;
 
# NETWORK-0288 Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.NetworkDiagnosticsFramework.HelperClass
#    WFP-based products must include a Network Diagnostics Framework (NDF) helper class that extends the Filtering Platform helper class (FPHC)
 
   MaintainHelperClass = 1;
 
# NETWORK-0269 Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.NoAccessViolations
#    WFP-based products must not be the resulting cause of any Access Violation under high load or during driver load/unload.
 
   NoAVs = 1;
 
# NETWORK-0261 Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.NoTamperingWith3rdPartyObjects
#    WFP-based products must not attempt to remove or alter another WFP-based product�s WFP objects and built-in objects.
 
   NonTampered3rdPartyObjects = 1;
 
# NETWORK-0287 Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.PacketInjection.NoDeadlocks
#    WFP-based products must not continually modify network packets that have already been modified and re-injected, so as to create potential deadlocks.
 
   NoPacketInjectionDeadlocks = 1;
 
# NETWORK-0267 Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.StreamInjection.NoStreamStarvation
#    WFP-based product callouts at FWPM_LAYER_STREAM must not starve the data throughput.
 
   NoStreamStarvation = 1;
 
# NETWORK-0268 Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.SupportPowerManagedStates
#    WFP-based products must ensure network connectivity upon recovering from power managed states.
 
   SupportPowerManagement = 1;
 
# NETWORK-0260 Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.WFPObjectACLs
#    WFP-based products must ACL all of their objects in a way that any other WFP-based product can at least enumerate those objects using the corresponding WFP enumeration APIs.
 
   WFPObjectEnumAndACLs = 1;
 
# NETWORK-0XXX Filter.Driver.WindowsFilteringPlatform.ArchitecturalDesign.WinSock
#    Kernel Mode Filter Drivers are architected to maximize the reliability and functionality of Windows Sockets, as well as interact accurately with the core components of the operating system.
 
   MaxWinSock = 1;
 
# NETWORK-0271 Filter.Driver.WindowsFilteringPlatform.Firewall.DisableWindowsFirewallProperly
#    Host firewalls must disable Windows Firewall using only the supported method.
 
   ProperlyDisableWindowsFirewall = 1;
 
# NETWORK-0266 Filter.Driver.WindowsFilteringPlatform.Firewall.NotOnlyPermitAllFilters
#    Host firewalls must not have only �permit_all� filters.
 
   NoPermitBlockAll = 1;
 
# NETWORK-0XXX Filter.Driver.WindowsFilteringPlatform.Firewall.Support5TupleExceptions
#    All host based firewalls must be able to Block/Allow by 5-Tuple Parts (including Port (ICMP Type and Code, UDP and TCP) IP Address, Protocol (e.g. UDP/TCP/ICMP)
 
   SupportTupleExceptions = 1;
 
# NETWORK-0253 Filter.Driver.WindowsFilteringPlatform.Firewall.SupportApplicationExceptions
#    WFP-based products must support exceptions from corresponding applications.
 
   SupportAppExceptions = 1;
 
# NETWORK-0XXX Filter.Driver.WindowsFilteringPlatform.Firewall.SupportMACAddressExceptions
#    All host based firewalls which have filters in L2 (Native/Mac) layers must be able to Block or Allow by Mac Address.
 
   SupportMACAddressExceptions = 1;
 
# NETWORK-0259 Filter.Driver.WindowsFilteringPlatform.Firewall.UseWindowsFilteringPlatform
#    Firewalls must comply with Windows Filtering Platform based APIs for filtering network traffic on home user solutions.
 
   UseWFP = 1;
 
# NETWORK-0247 Filter.Driver.WindowsFilteringPlatform.NetworkingFundamentals.SupportARP
#    WFP-based products must support support allowing for successful ARP exchanges.
 
   SupportARP = 1;
 
   SupportNeighborDiscovery = 1;
 
# NETWORK-0245 Filter.Driver.WindowsFilteringPlatform.NetworkingFundamentals.SupportDynamicAddressing
#    WFP-based products support allowing for successful DHCP exchanges over both IPv4 and IPv6.
 
   SupportDHCP = 1;
 
# NETWORK-0243 Filter.Driver.WindowsFilteringPlatform.NetworkingFundamentals.SupportIPv4
#    WFP-based products must support IPv4 traffic.
 
   SupportIPv4 = 1;
 
# NETWORK-0244 Filter.Driver.WindowsFilteringPlatform.NetworkingFundamentals.SupportIPv6
#    WFP-based products must support IPv6 traffic.
 
   SupportIPv6 = 1;
 
# NETWORK-0246 Filter.Driver.WindowsFilteringPlatform.NetworkingFundamentals.SupportNameResolution
#    WFP-based products must support allowing for successful DNS client queries.
 
   SupportDNS = 1;
 
# NETWORK-0249 Filter.Driver.WindowsFilteringPlatform.Scenarios.Support6To4
#    WFP-based products must support 6to4.
 
   Support6To4 = 1;
 
# NETWORK-0257 Filter.Driver.WindowsFilteringPlatform.Scenarios.SupportAutomaticUpdates
#    WFP-based products must support Automatic Updates in Windows.
 
   SupportAutomaticUpdates = 1;
 
# NETWORK-0251 Filter.Driver.WindowsFilteringPlatform.Scenarios.SupportBasicWebsiteBrowsing
#    WFP-based products must support basic internet browsing experiences.
 
   SupportBasicWebsiteBrowsing = 1;
 
# NETWORK-0252 Filter.Driver.WindowsFilteringPlatform.Scenarios.SupportFileAndPrinterSharing
#    WFP-based products must support file and printer sharing.
 
   SupportFileAndPrinterSharing = 1;
 
# NETWORK-0250 Filter.Driver.WindowsFilteringPlatform.Scenarios.SupportICMPErrorMesages
#    WFP-based products must support ICMP error messages and discovery functions.
 
   SupportICMPErrorMesages = 1;
 
# NETWORK-0256 Filter.Driver.WindowsFilteringPlatform.Scenarios.SupportInternetStreaming
#    WFP-based products must support Internet streaming and Media sharing for media player network sharing services.
 
   SupportInternetStreaming = 1;
 
# NETWORK-0285 Filter.Driver.WindowsFilteringPlatform.Scenarios.SupportMediaExtenderStreaming
#    WFP_based products must support media streaming scenarios based on extender technologies.
 
   SupportMediaExtenderStreaming = 1;
 
# NETWORK-0XXX Filter.Driver.WindowsFilteringPlatform.Scenarios.SupportMobileBroadBand
#    WFP-based products must allow mobile broadband devices that are compliant with Windows mobile broadband driver model to function correctly.
 
   SupportMobileBroadBand = 1;
 
# NETWORK-0284 Filter.Driver.WindowsFilteringPlatform.Scenarios.SupportPeerNameResolution
#    WFP-based products must support Peer Name Resolution Protocol and the Peer-to-Peer Grouping Protocol.
 
   SupportPeerNameResolution = 1;
 
# NETWORK-255 Filter.Driver.WindowsFilteringPlatform.Scenarios.SupportRemoteAssistance
#    WFP-based products must support Remote Assistance scenarios.
 
   SupportRemoteAssistance = 1;
 
# NETWORK-0254 Filter.Driver.WindowsFilteringPlatform.Scenarios.SupportRemoteDesktop
#    WFP-based products must support Remote Desktop.
 
   SupportRemoteDesktop = 1;
 
# NETWORK-0248 Filter.Driver.WindowsFilteringPlatform.Scenarios.SupportTeredo
#    WFP-based products must support Teredo.
 
   SupportTeredo = 1;
 
# NETWORK-0258 Filter.Driver.WindowsFilteringPlatform.Scenarios.SupportVirtualPrivateNetworking
#    WFP-based products must support VPN scenarios in Windows.
 
   SupportVirtualPrivateNetworking = 1;
 
# NETWORK-0XXX Filter.Driver.WindowsFilteringPlatform.Scenarios.vSwitch.InteropWithOtherExtensions
#    WFP-based products must not block traffic from another vSwitch extension (WFP or LWF) by default, and should only do so when following specific user/admin intention or protecting the system against a specific threat.
 
   InteropWithOtherExtensions = 1;
 
# NETWORK-0XXX Filter.Driver.WindowsFilteringPlatform.Scenarios.vSwitch.NoEgressModification
#    WFP-based products that operate in the vSwitch must not modify packets on the Egress path of the vSwitch.
 
   NoEgressModification = 1;
 
# NETWORK-0XXX Filter.Driver.WindowsFilteringPlatform.Scenarios.vSwitch.SupportLiveMigration
#    WFP-based products that operate in the vSwitch must present a minimal MOF for Live Migration.
 
   SupportLiveMigration = 1;
 
# NETWORK-0XXX Filter.Driver.WindowsFilteringPlatform.Scenarios.vSwitch.SupportRemoval
#    WFP-based products that operate in the vSwitch must present be allowed to be removed when the admin disabled WFP for the vSwitch instance.
 
   SupportRemoval = 1;
 
# NETWORK-0XXX Filter.Driver.WindowsFilteringPlatform.Scenarios.vSwitch.SupportReordering
#    WFP-based products that operate in the vSwitch must respond to WFP vmSwitch reorder events.
 
   SupportReordering = 1;
 
#Attestation
#   I have performed interop testing with my product and the WFPSampler in various supported scenarios
 
   InteropWithWFPSampler = 1;
 
# Attestation
#    I hereby confirm that the information included within is accurate to the best of my knowledge in regards to the Product mentioned.
 
   RunBy = "Dusty Harper";

Our Services

  • What our customers say about us?

© 2011-2025 All Rights Reserved. Joya Systems. 4425 South Mopac Building II Suite 101 Austin, TX 78735 Tel: 800-DEV-KERNEL

Privacy Policy. Terms of use. Valid XHTML & CSS