| Server IP : 209.209.40.120 / Your IP : 216.73.217.112 Web Server : Microsoft-IIS/10.0 System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586 User : NEWWWW$ ( 0) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /Program Files (x86)/Windows Kits/10/Include/10.0.19041.0/um/ |
Upload File : |
/*
Copyright (c) Microsoft Corporation
SYNOPSIS
Defines public datatypes used by the ICF API.
*/
cpp_quote("#include <winapifamily.h>")
#pragma region Desktop Family
cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
import "wtypes.idl";
// Represents the different policy types understood by the firewall.
typedef enum NET_FW_POLICY_TYPE_
{
NET_FW_POLICY_GROUP,
NET_FW_POLICY_LOCAL,
NET_FW_POLICY_EFFECTIVE,
NET_FW_POLICY_TYPE_MAX
} NET_FW_POLICY_TYPE;
// Represents the different profile types that make up a firewall policy.
// Maintained for compatibility with INetFwMgr interface
typedef enum NET_FW_PROFILE_TYPE_
{
NET_FW_PROFILE_DOMAIN,
NET_FW_PROFILE_STANDARD,
NET_FW_PROFILE_CURRENT,
NET_FW_PROFILE_TYPE_MAX
} NET_FW_PROFILE_TYPE;
// Represents the different profile types that make up a firewall policy.
typedef enum NET_FW_PROFILE_TYPE2_
{
NET_FW_PROFILE2_DOMAIN = 0x0001,
NET_FW_PROFILE2_PRIVATE = 0x0002,
NET_FW_PROFILE2_PUBLIC = 0x0004,
NET_FW_PROFILE2_ALL = 0x7FFFFFFF
} NET_FW_PROFILE_TYPE2;
// Used to specify the IP version for a port.
typedef enum NET_FW_IP_VERSION_
{
NET_FW_IP_VERSION_V4,
NET_FW_IP_VERSION_V6,
NET_FW_IP_VERSION_ANY,
NET_FW_IP_VERSION_MAX
} NET_FW_IP_VERSION;
// Used to specify the scope of addresses from which a port can listen.
typedef enum NET_FW_SCOPE_
{
NET_FW_SCOPE_ALL,
NET_FW_SCOPE_LOCAL_SUBNET,
NET_FW_SCOPE_CUSTOM,
NET_FW_SCOPE_MAX
} NET_FW_SCOPE;
// Used to specify the IP protocol when opening/closing firewall ports.
typedef enum NET_FW_IP_PROTOCOL_
{
NET_FW_IP_PROTOCOL_TCP = 6,
NET_FW_IP_PROTOCOL_UDP = 17,
NET_FW_IP_PROTOCOL_ANY = 256
} NET_FW_IP_PROTOCOL;
// Well-known services that can be authorized to listen through the firewall.
// (WinXP and Win2k3 compatability)
typedef enum NET_FW_SERVICE_TYPE_
{
NET_FW_SERVICE_FILE_AND_PRINT,
NET_FW_SERVICE_UPNP,
NET_FW_SERVICE_REMOTE_DESKTOP,
NET_FW_SERVICE_NONE,
NET_FW_SERVICE_TYPE_MAX
} NET_FW_SERVICE_TYPE;
// Used to specify the direction for the rule
typedef enum NET_FW_RULE_DIRECTION_
{
NET_FW_RULE_DIR_IN = 1,
NET_FW_RULE_DIR_OUT,
NET_FW_RULE_DIR_MAX
} NET_FW_RULE_DIRECTION;
// Used to specify the action for a rule or a default setting
typedef enum NET_FW_ACTION_
{
NET_FW_ACTION_BLOCK,
NET_FW_ACTION_ALLOW,
NET_FW_ACTION_MAX
} NET_FW_ACTION;
// Used to specify the modifiable state of current policy
typedef enum NET_FW_MODIFY_STATE_
{
NET_FW_MODIFY_STATE_OK, // Changing or adding a firewall rule (or group) to
// the current profile will take effect.
NET_FW_MODIFY_STATE_GP_OVERRIDE, // Changing or adding a firewall rule (or group) to
// the current profile will not take effect because group
// policy overrides it.
NET_FW_MODIFY_STATE_INBOUND_BLOCKED // Changing or adding an inbound firewall rule (or group) to
// the current profile will not take effect because unsolicited
// inbound traffic is not allowed.
} NET_FW_MODIFY_STATE;
// Represents the different types of rules that the firewall supports.
typedef enum NET_FW_RULE_CATEGORY_
{
NET_FW_RULE_CATEGORY_BOOT,
NET_FW_RULE_CATEGORY_STEALTH,
NET_FW_RULE_CATEGORY_FIREWALL,
NET_FW_RULE_CATEGORY_CONSEC,
NET_FW_RULE_CATEGORY_MAX
} NET_FW_RULE_CATEGORY;
typedef enum NET_FW_EDGE_TRAVERSAL_TYPE_
{
NET_FW_EDGE_TRAVERSAL_TYPE_DENY = 0,
NET_FW_EDGE_TRAVERSAL_TYPE_ALLOW,
NET_FW_EDGE_TRAVERSAL_TYPE_DEFER_TO_APP,
NET_FW_EDGE_TRAVERSAL_TYPE_DEFER_TO_USER
} NET_FW_EDGE_TRAVERSAL_TYPE;
typedef enum NET_FW_AUTHENTICATE_TYPE_
{
NET_FW_AUTHENTICATE_NONE = 0,
NET_FW_AUTHENTICATE_NO_ENCAPSULATION,
NET_FW_AUTHENTICATE_WITH_INTEGRITY,
NET_FW_AUTHENTICATE_AND_NEGOTIATE_ENCRYPTION,
NET_FW_AUTHENTICATE_AND_ENCRYPT
} NET_FW_AUTHENTICATE_TYPE;
cpp_quote("#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */")
#pragma endregion