Home | History | Annotate | Download | only in include
      1 /**
      2  * This file has no copyright assigned and is placed in the Public Domain.
      3  * This file is part of the mingw-w64 runtime package.
      4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
      5  */
      6 #ifndef _INC_ICFTYPES
      7 #define _INC_ICFTYPES
      8 
      9 #ifdef __cplusplus
     10 extern "C" {
     11 #endif
     12 
     13 typedef enum _NET_FW_ACTION {
     14   NET_FW_ACTION_BLOCK = 0,
     15   NET_FW_ACTION_ALLOW,
     16   NET_FW_ACTION_MAX
     17 } NET_FW_ACTION;
     18 
     19 typedef enum _NET_FW_MODIFY_STATE {
     20   NET_FW_MODIFY_STATE_OK = 0,
     21   NET_FW_MODIFY_STATE_GP_OVERRIDE,
     22   NET_FW_MODIFY_STATE_INBOUND_BLOCKED
     23 } NET_FW_MODIFY_STATE;
     24 
     25 typedef enum NET_FW_PROFILE_TYPE_ {
     26   NET_FW_PROFILE_DOMAIN = 0,
     27   NET_FW_PROFILE_STANDARD,
     28   NET_FW_PROFILE_CURRENT,
     29   NET_FW_PROFILE_TYPE_MAX
     30 } NET_FW_PROFILE_TYPE;
     31 
     32 typedef enum NET_FW_PROFILE_TYPE2_ {
     33   NET_FW_PROFILE2_DOMAIN    = 0x0001,
     34   NET_FW_PROFILE2_PRIVATE   = 0x0002,
     35   NET_FW_PROFILE2_PUBLIC    = 0x0004,
     36   NET_FW_PROFILE2_ALL       = 0x7FFFFFFF
     37 } NET_FW_PROFILE_TYPE2;
     38 
     39 typedef enum NET_FW_RULE_DIRECTION_ {
     40   NET_FW_RULE_DIR_IN = 1,
     41   NET_FW_RULE_DIR_OUT,
     42   NET_FW_RULE_DIR_MAX
     43 } NET_FW_RULE_DIRECTION;
     44 
     45 typedef enum NET_FW_SCOPE_ {
     46   NET_FW_SCOPE_ALL = 0,
     47   NET_FW_SCOPE_LOCAL_SUBNET,
     48   NET_FW_SCOPE_CUSTOM,
     49   NET_FW_SCOPE_MAX
     50 } NET_FW_SCOPE;
     51 
     52 typedef enum NET_FW_IP_VERSION_ {
     53   NET_FW_IP_VERSION_V4 = 0,
     54   NET_FW_IP_VERSION_V6,
     55   NET_FW_IP_VERSION_ANY,
     56   NET_FW_IP_VERSION_MAX
     57 } NET_FW_IP_VERSION;
     58 
     59 typedef enum NET_FW_IP_PROTOCOL_ {
     60   NET_FW_IP_PROTOCOL_TCP = 6,
     61   NET_FW_IP_PROTOCOL_UDP = 17,
     62   NET_FW_IP_PROTOCOL_ANY = 256
     63 } NET_FW_IP_PROTOCOL;
     64 
     65 typedef enum NET_FW_POLICY_TYPE_ {
     66   NET_FW_POLICY_GROUP = 0,
     67   NET_FW_POLICY_LOCAL,
     68   NET_FW_POLICY_EFFECTIVE,
     69   NET_FW_POLICY_TYPE_MAX
     70 } NET_FW_POLICY_TYPE;
     71 
     72 typedef enum NET_FW_SERVICE_TYPE_ {
     73   NET_FW_SERVICE_FILE_AND_PRINT = 0,
     74   NET_FW_SERVICE_UPNP,
     75   NET_FW_SERVICE_REMOTE_DESKTOP,
     76   NET_FW_SERVICE_NONE,
     77   NET_FW_SERVICE_TYPE_MAX
     78 } NET_FW_SERVICE_TYPE;
     79 
     80 typedef enum NET_FW_EDGE_TRAVERSAL_TYPE_ {
     81   NET_FW_EDGE_TRAVERSAL_TYPE_DENY = 0,
     82   NET_FW_EDGE_TRAVERSAL_TYPE_ALLOW,
     83   NET_FW_EDGE_TRAVERSAL_TYPE_DEFER_TO_APP,
     84   NET_FW_EDGE_TRAVERSAL_TYPE_DEFER_TO_USER
     85 } NET_FW_EDGE_TRAVERSAL_TYPE;
     86 
     87 typedef enum NET_FW_RULE_CATEGORY_ {
     88   NET_FW_RULE_CATEGORY_BOOT     = 0,
     89   NET_FW_RULE_CATEGORY_STEALTH  = 1,
     90   NET_FW_RULE_CATEGORY_FIREWALL = 2,
     91   NET_FW_RULE_CATEGORY_CONSEC   = 3,
     92   NET_FW_RULE_CATEGORY_MAX      = 4
     93 } NET_FW_RULE_CATEGORY;
     94 
     95 #ifdef __cplusplus
     96 }
     97 #endif
     98 
     99 #endif /*_INC_ICFTYPES*/
    100