// fwpmk.h
NTSTATUS FwpmProviderAdd0(
[in] HANDLE engineHandle,
[in] const FWPM_PROVIDER0 *provider,
[in, optional] PSECURITY_DESCRIPTOR sd
);
View the official Windows Driver Kit DDI referenceNo description available.
The FwpmProviderAdd0 function adds a new provider to the system.
engineHandle [in]Handle for an open session to the filter engine. Call FwpmEngineOpen0 to open a session to the filter engine.
provider [in]The provider object to be added.
sd [in, optional]Security information for the provider object.
| Return code/value | Description |
|---|---|
| ERROR_SUCCESS 0 |
The provider was successfully added. |
| FWP_E_* error code 0x80320001—0x80320039 |
A Windows Filtering Platform (WFP) specific error. See WFP Error Codes for details. |
| RPC_* error code 0x80010001—0x80010122 |
Failure to communicate with the remote or local firewall engine. |
| Other NTSTATUS codes | An error occurred. |
If the caller supplies a null security descriptor, the system will assign a default security descriptor.
Boot-time objects are added to the Base Filtering Engine (BFE) when the TCP/IP driver starts, and are removed once the BFE finishes initialization. Persistent objects are added when the BFE starts. If a policy provider has a persistent policy that is not intended to be enforced if its associated service is disabled, the caller can specify an optional service name in the FWPM_PROVIDER0 structure. This service then owns the persistent policy object. At start, the BFE only adds the following types of persistent objects to the system.
This function cannot be called from within a read-only transaction, it fails with FWP_E_INCOMPATIBLE_TXN. See Object Management for more information about transactions.
The caller needs FWPM_ACTRL_ADD access to the provider's container. See Access Control for more information.
FwpmProviderAdd0 is a specific implementation of FwpmProviderAdd. See WFP Version-Independent Names and Targeting Specific Versions of Windows for more information.