From 3982beebf88d9aed51bf8985248bc3be3d403d37 Mon Sep 17 00:00:00 2001 From: dmex Date: Sun, 22 Apr 2012 21:37:10 +0000 Subject: [PATCH] FirewallMonitor: added menuitem 'View > Windows Firewall' , Implemented [MS-FASP]: Firewall and Advanced Security Protocol Specification git-svn-id: svn://svn.code.sf.net/p/processhacker/code@4993 21ef857c-d57f-4fe0-8362-d861dc6d29cd --- .../FirewallMonitor/FirewallMonitor.rc | 343 ++- .../FirewallMonitor/FirewallMonitor.vcxproj | 12 + .../FirewallMonitor.vcxproj.filters | 49 +- 2.x/trunk/plugins/FirewallMonitor/fw.c | 439 +++ 2.x/trunk/plugins/FirewallMonitor/fwdialog.c | 745 ++++++ 2.x/trunk/plugins/FirewallMonitor/fwmon.h | 27 + 2.x/trunk/plugins/FirewallMonitor/main.c | 54 +- 2.x/trunk/plugins/FirewallMonitor/monitor.c | 15 +- 2.x/trunk/plugins/FirewallMonitor/resource.h | 62 +- .../FirewallMonitor/resources/firewall.ico | Bin 0 -> 25214 bytes .../FirewallMonitor/resources/home.ico | Bin 0 -> 25214 bytes .../FirewallMonitor/resources/home2.ico | Bin 0 -> 114011 bytes .../FirewallMonitor/resources/inbound.ico | Bin 0 -> 2862 bytes .../FirewallMonitor/resources/monitor.ico | Bin 0 -> 10134 bytes .../FirewallMonitor/resources/outbound.ico | Bin 0 -> 2862 bytes .../FirewallMonitor/resources/public.ico | Bin 0 -> 29926 bytes .../FirewallMonitor/resources/wfirewall.ico | Bin 0 -> 234353 bytes .../FirewallMonitor/resources/work.ico | Bin 0 -> 118713 bytes 2.x/trunk/plugins/FirewallMonitor/wf.h | 2344 +++++++++++++++++ 19 files changed, 4056 insertions(+), 34 deletions(-) create mode 100644 2.x/trunk/plugins/FirewallMonitor/fw.c create mode 100644 2.x/trunk/plugins/FirewallMonitor/fwdialog.c create mode 100644 2.x/trunk/plugins/FirewallMonitor/resources/firewall.ico create mode 100644 2.x/trunk/plugins/FirewallMonitor/resources/home.ico create mode 100644 2.x/trunk/plugins/FirewallMonitor/resources/home2.ico create mode 100644 2.x/trunk/plugins/FirewallMonitor/resources/inbound.ico create mode 100644 2.x/trunk/plugins/FirewallMonitor/resources/monitor.ico create mode 100644 2.x/trunk/plugins/FirewallMonitor/resources/outbound.ico create mode 100644 2.x/trunk/plugins/FirewallMonitor/resources/public.ico create mode 100644 2.x/trunk/plugins/FirewallMonitor/resources/wfirewall.ico create mode 100644 2.x/trunk/plugins/FirewallMonitor/resources/work.ico create mode 100644 2.x/trunk/plugins/FirewallMonitor/wf.h diff --git a/2.x/trunk/plugins/FirewallMonitor/FirewallMonitor.rc b/2.x/trunk/plugins/FirewallMonitor/FirewallMonitor.rc index e405c541a..71c79f1d3 100644 --- a/2.x/trunk/plugins/FirewallMonitor/FirewallMonitor.rc +++ b/2.x/trunk/plugins/FirewallMonitor/FirewallMonitor.rc @@ -12,6 +12,335 @@ ///////////////////////////////////////////////////////////////////////////// #undef APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// English resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) +LANGUAGE LANG_ENGLISH, SUBLANG_NEUTRAL +#pragma code_page(1252) + +///////////////////////////////////////////////////////////////////////////// +// +// Menu +// + +IDR_FW MENU +BEGIN + POPUP "Event" + BEGIN + MENUITEM "&Copy\aCtrl+C", ID_EVENT_COPY + END +END + +IDR_FIREWALLMENU MENU +BEGIN + POPUP "Properties" + BEGIN + MENUITEM "Disable", ID_PROPERTIES_DISABLE, INACTIVE + MENUITEM SEPARATOR + MENUITEM "Cut", ID_PROPERTIES_CUT, INACTIVE + MENUITEM "Copy", ID_PROPERTIES_COPY, INACTIVE + MENUITEM "Delete", ID_PROPERTIES_DELETE, INACTIVE + MENUITEM SEPARATOR + MENUITEM "Properties", ID_PROPERTIES + END +END + +IDR_MENUGENERAL MENU +BEGIN + POPUP "Options" + BEGIN + MENUITEM SEPARATOR + MENUITEM "Exit", ID_OPTIONS_EXIT + END +END + + +///////////////////////////////////////////////////////////////////////////// +// +// Dialog +// + +IDD_FIREWALL DIALOGEX 0, 0, 519, 276 +STYLE DS_SETFONT | DS_FIXEDSYS | WS_MINIMIZEBOX | WS_MAXIMIZEBOX | WS_POPUP | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME +CAPTION "Windows Firewall" +FONT 8, "MS Shell Dlg", 400, 0, 0x1 +BEGIN + DEFPUSHBUTTON "Close",ID_CLOSE,462,255,50,14 + CONTROL "",IDC_FIREWALL_LIST,"SysListView32",LVS_REPORT | LVS_SINGLESEL | LVS_ALIGNLEFT | WS_BORDER | WS_TABSTOP,120,18,392,234 + CONTROL "",IDC_TREE1,"SysTreeView32",TVS_HASBUTTONS | TVS_SHOWSELALWAYS | TVS_TRACKSELECT | TVS_FULLROWSELECT | WS_BORDER | WS_HSCROLL | WS_TABSTOP,7,18,108,234 +END + +IDD_RULEGENERAL DIALOGEX 0, 0, 289, 249 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Dialog" +FONT 8, "MS Shell Dlg", 400, 0, 0x1 +BEGIN + GROUPBOX "General",IDC_STATIC,6,6,276,110 + EDITTEXT IDC_EDIT1,54,32,222,12,ES_AUTOHSCROLL + LTEXT "Name:",IDC_STATIC,54,20,22,8 + CONTROL "",IDC_STATIC,"Static",SS_BLACKFRAME,12,18,36,30 + EDITTEXT IDC_EDIT2,54,60,222,38,ES_AUTOHSCROLL + LTEXT "Description:",IDC_STATIC,54,48,39,8 + CONTROL "Enabled",IDC_CHECK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,54,102,41,10 + CONTROL "Allow the connection",IDC_RADIO1,"Button",BS_AUTORADIOBUTTON,26,128,82,10 + CONTROL "Allow the connection if secure",IDC_RADIO2,"Button",BS_AUTORADIOBUTTON,26,141,111,10 + CONTROL "Block the connection",IDC_RADIO3,"Button",BS_AUTORADIOBUTTON,26,154,81,10 +END + +IDD_RULEADVANCED DIALOGEX 0, 0, 289, 249 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Dialog" +FONT 8, "MS Shell Dlg", 400, 0, 0x1 +BEGIN + GROUPBOX "Profiles",IDC_STATIC,6,6,276,66 + CONTROL "",IDC_STATIC,"Static",SS_BLACKFRAME,12,18,36,30 + LTEXT "Specify profiles to which this rule applies:",IDC_STATIC,54,18,138,8 + CONTROL "Domain",IDC_CHECK1,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,66,30,108,10 + CONTROL "Public",IDC_CHECK2,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,66,43,108,10 + CONTROL "Private",IDC_CHECK3,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,66,56,108,10 + GROUPBOX "Interfaces",IDC_STATIC,6,78,276,66 + CONTROL "",IDC_STATIC,"Static",SS_BLACKFRAME,12,90,36,30 + LTEXT "Specify interfaces to which this rule applies:",IDC_STATIC,54,90,144,8 + GROUPBOX "Edge Traversal",IDC_STATIC,6,150,276,90 + CONTROL "",IDC_STATIC,"Static",SS_BLACKFRAME,12,162,36,30 + COMBOBOX IDC_COMBO1,66,174,192,30,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP + LTEXT "Specify interfaces to which this rule applies:",IDC_STATIC,54,162,144,8 + COMBOBOX IDC_COMBO2,66,102,192,12,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP +END + +IDD_RULEUSERS DIALOGEX 0, 0, 289, 249 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Dialog" +FONT 8, "MS Shell Dlg", 400, 0, 0x1 +BEGIN + GROUPBOX "Authorized Users",IDC_STATIC,6,6,276,109 + GROUPBOX "Exceptions",IDC_STATIC,6,120,275,109 + CONTROL "Only allow connections from these users:",IDC_CHECK1, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,18,147,10 + CONTROL "",IDC_LIST1,"SysListView32",LVS_REPORT | LVS_ALIGNLEFT | WS_BORDER | WS_TABSTOP,12,30,210,78 + PUSHBUTTON "Add",IDC_BUTTON1,228,30,50,14 + PUSHBUTTON "Remove",IDC_BUTTON2,228,48,50,14 + CONTROL "Skip this rule for connections from these users:",IDC_CHECK2, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,132,166,10 + CONTROL "",IDC_LIST2,"SysListView32",LVS_REPORT | LVS_ALIGNLEFT | WS_BORDER | WS_TABSTOP,12,144,210,81 + PUSHBUTTON "Add",IDC_BUTTON3,228,144,50,14 + PUSHBUTTON "Remove",IDC_BUTTON4,228,162,50,14 + CONTROL "Firewall Rule Properties Page: Users Tab",IDC_SYSLINK1, + "SysLink",WS_TABSTOP,6,234,132,12 +END + +IDD_RULESCOPE DIALOGEX 0, 0, 289, 249 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Dialog" +FONT 8, "MS Shell Dlg", 400, 0, 0x1 +BEGIN + GROUPBOX "Local IP Address",IDC_STATIC,6,6,276,109 + GROUPBOX "Exceptions",IDC_STATIC,6,120,275,109 + PUSHBUTTON "Add",IDC_BUTTON1,228,42,50,14 + PUSHBUTTON "Remove",IDC_BUTTON2,228,77,50,14 + PUSHBUTTON "Add",IDC_BUTTON3,228,156,50,14 + PUSHBUTTON "Remove",IDC_BUTTON4,228,192,50,14 + CONTROL "Firewall Rule Properties Page: Scope Tab",IDC_SYSLINK1, + "SysLink",WS_TABSTOP,6,234,132,12 + CONTROL "Any IP Address",IDC_RADIO2,"Button",BS_AUTORADIOBUTTON,12,18,65,10 + CONTROL "These IP Address",IDC_RADIO3,"Button",BS_AUTORADIOBUTTON,12,30,72,10 + CONTROL "Any IP Address",IDC_RADIO4,"Button",BS_AUTORADIOBUTTON,12,132,65,10 + CONTROL "These IP Address",IDC_RADIO5,"Button",BS_AUTORADIOBUTTON,12,145,72,10 + PUSHBUTTON "Edit",IDC_BUTTON5,228,59,50,14 + PUSHBUTTON "Edit",IDC_BUTTON6,228,174,50,14 + LISTBOX IDC_LIST1,12,42,210,66,LBS_SORT | LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP + LISTBOX IDC_LIST2,12,156,210,66,LBS_SORT | LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP +END + +IDD_RULECOMPUTERS DIALOGEX 0, 0, 289, 249 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Dialog" +FONT 8, "MS Shell Dlg", 400, 0, 0x1 +BEGIN + GROUPBOX "Authorized Computers",IDC_STATIC,6,6,276,109 + GROUPBOX "Exceptions",IDC_STATIC,6,120,275,109 + CONTROL "Only allow connections from these computers:",IDC_CHECK1, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,18,163,10 + CONTROL "",IDC_LIST1,"SysListView32",LVS_REPORT | LVS_ALIGNLEFT | WS_BORDER | WS_TABSTOP,12,30,210,78 + PUSHBUTTON "Add",IDC_BUTTON1,228,30,50,14 + PUSHBUTTON "Remove",IDC_BUTTON2,228,48,50,14 + CONTROL "Skip this rule for connections from these computers:",IDC_CHECK2, + "Button",BS_AUTOCHECKBOX | WS_TABSTOP,12,132,182,10 + CONTROL "",IDC_LIST2,"SysListView32",LVS_REPORT | LVS_ALIGNLEFT | WS_BORDER | WS_TABSTOP,12,144,210,81 + PUSHBUTTON "Add",IDC_BUTTON3,228,144,50,14 + PUSHBUTTON "Remove",IDC_BUTTON4,228,162,50,14 + CONTROL "Firewall Rule Properties Page: Computers Tab",IDC_SYSLINK1, + "SysLink",WS_TABSTOP,6,234,149,12 +END + +IDD_RULEEXECUTABLE DIALOGEX 0, 0, 289, 249 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Dialog" +FONT 8, "MS Shell Dlg", 400, 0, 0x1 +BEGIN + GROUPBOX "Programs",IDC_STATIC,6,6,276,54 + GROUPBOX "Services",IDC_STATIC,6,66,276,48 + CONTROL "All programs that meet the specified conditions",IDC_RADIO1, + "Button",BS_AUTORADIOBUTTON,54,18,165,10 + CONTROL "This program:",IDC_RADIO2,"Button",BS_AUTORADIOBUTTON,54,30,60,10 + EDITTEXT IDC_EDIT1,66,42,156,14,ES_AUTOHSCROLL + PUSHBUTTON "Browse",IDC_BUTTON1,228,42,50,14 + LTEXT "Specify the services to which this rule applies.",IDC_STATIC,54,78,148,8 + CONTROL "",IDC_STATIC,"Static",SS_BLACKFRAME,12,18,36,30 + CONTROL "",IDC_STATIC,"Static",SS_BLACKFRAME,12,78,36,30 + PUSHBUTTON "Customize",IDC_BUTTON2,54,90,50,14 + CONTROL "Firewall Rule Properties Page: Programs and Services Tab",IDC_SYSLINK1, + "SysLink",WS_TABSTOP,6,234,186,12 +END + +IDD_RULEPORTS DIALOGEX 0, 0, 289, 249 +STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "Dialog" +FONT 8, "MS Shell Dlg", 400, 0, 0x1 +BEGIN + GROUPBOX "Protocols and Ports",IDC_STATIC,6,6,276,150 + CONTROL "",IDC_STATIC,"Static",SS_BLACKFRAME,12,18,36,30 + CONTROL "Firewall Rule Properties Page: Protocols and Ports Tab",IDC_SYSLINK1, + "SysLink",WS_TABSTOP,6,234,186,12 + COMBOBOX IDC_COMBO1,114,18,156,30,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_COMBO2,114,54,156,30,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_COMBO3,114,108,156,30,CBS_DROPDOWNLIST | CBS_SORT | WS_VSCROLL | WS_TABSTOP + EDITTEXT IDC_EDIT1,114,72,156,14,ES_AUTOHSCROLL + EDITTEXT IDC_EDIT2,114,126,156,14,ES_AUTOHSCROLL + LTEXT "Protocol Type:",IDC_STATIC,54,19,48,8 + LTEXT "Protocol Number:",IDC_STATIC,54,36,56,8 + LTEXT "Local Port:",IDC_STATIC,54,54,35,8 + LTEXT "Remote Port:",IDC_STATIC,54,108,44,8 + LTEXT "Example: 80,443, 5000-5010",IDC_STATIC,114,90,96,8 + LTEXT "Example: 80,443, 5000-5010",IDC_STATIC,114,144,96,8 + GROUPBOX "ICMP",IDC_STATIC,6,162,276,48 + LTEXT "Internet Control Message Protocol (ICMP) settings",IDC_STATIC,12,174,162,8 + PUSHBUTTON "Customize",IDC_BUTTON2,12,186,50,14 +END + + +///////////////////////////////////////////////////////////////////////////// +// +// DESIGNINFO +// + +#ifdef APSTUDIO_INVOKED +GUIDELINES DESIGNINFO +BEGIN + IDD_FIREWALL, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 512 + TOPMARGIN, 7 + BOTTOMMARGIN, 269 + END + + IDD_RULEGENERAL, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 282 + TOPMARGIN, 7 + BOTTOMMARGIN, 242 + END + + IDD_RULEADVANCED, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 282 + TOPMARGIN, 7 + BOTTOMMARGIN, 242 + END + + IDD_RULEUSERS, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 282 + TOPMARGIN, 7 + BOTTOMMARGIN, 242 + END + + IDD_RULESCOPE, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 282 + TOPMARGIN, 7 + BOTTOMMARGIN, 242 + END + + IDD_RULECOMPUTERS, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 282 + TOPMARGIN, 7 + BOTTOMMARGIN, 242 + END + + IDD_RULEEXECUTABLE, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 282 + TOPMARGIN, 7 + BOTTOMMARGIN, 242 + END + + IDD_RULEPORTS, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 282 + TOPMARGIN, 7 + BOTTOMMARGIN, 242 + END +END +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// Dialog Info +// + +IDD_RULEADVANCED DLGINIT +BEGIN + IDC_COMBO2, 0x403, 19, 0 +0x6f4c, 0x6163, 0x206c, 0x7241, 0x6165, 0x4e20, 0x7465, 0x6f77, 0x6b72, +"\000" + IDC_COMBO2, 0x403, 14, 0 +0x6552, 0x6f6d, 0x6574, 0x4120, 0x6363, 0x7365, 0x0073, + 0 +END + +#endif // English resources +///////////////////////////////////////////////////////////////////////////// + + +///////////////////////////////////////////////////////////////////////////// +// English (United States) resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US +#pragma code_page(1252) + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +IDI_FIREWALLICON ICON "resources\\firewall.ico" +IDI_ICONHOME ICON "resources\\home.ico" +IDI_HOMEICON ICON "resources\\home2.ico" +IDI_ICONPUBLIC ICON "resources\\public.ico" +IDI_WFICON ICON "resources\\wfirewall.ico" +IDI_ICONWORK ICON "resources\\work.ico" +IDI_ICONINBOUND ICON "resources\\inbound.ico" +IDI_ICONMONITOR ICON "resources\\monitor.ico" +IDI_ICONOUTBOUND ICON "resources\\outbound.ico" +#endif // English (United States) resources +///////////////////////////////////////////////////////////////////////////// + + ///////////////////////////////////////////////////////////////////////////// // English (Australia) resources @@ -83,20 +412,6 @@ BEGIN END END - -///////////////////////////////////////////////////////////////////////////// -// -// Menu -// - -IDR_FW MENU -BEGIN - POPUP "Event" - BEGIN - MENUITEM "&Copy\aCtrl+C", ID_EVENT_COPY - END -END - #endif // English (Australia) resources ///////////////////////////////////////////////////////////////////////////// diff --git a/2.x/trunk/plugins/FirewallMonitor/FirewallMonitor.vcxproj b/2.x/trunk/plugins/FirewallMonitor/FirewallMonitor.vcxproj index 471e250b7..5cd62ebb7 100644 --- a/2.x/trunk/plugins/FirewallMonitor/FirewallMonitor.vcxproj +++ b/2.x/trunk/plugins/FirewallMonitor/FirewallMonitor.vcxproj @@ -170,12 +170,23 @@ + + + + + + + + + + + @@ -184,6 +195,7 @@ + diff --git a/2.x/trunk/plugins/FirewallMonitor/FirewallMonitor.vcxproj.filters b/2.x/trunk/plugins/FirewallMonitor/FirewallMonitor.vcxproj.filters index da2cd0ce0..f39f7c5f5 100644 --- a/2.x/trunk/plugins/FirewallMonitor/FirewallMonitor.vcxproj.filters +++ b/2.x/trunk/plugins/FirewallMonitor/FirewallMonitor.vcxproj.filters @@ -13,6 +13,9 @@ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav + + {479e3232-66c7-4bb6-9a23-68e80f37e9b4} + @@ -24,14 +27,42 @@ Source Files + + Source Files + + + Source Files + - - - - Resource Files - + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + + + Resource Files\icons + @@ -43,5 +74,13 @@ Header Files + + Header Files + + + + + Resource Files + \ No newline at end of file diff --git a/2.x/trunk/plugins/FirewallMonitor/fw.c b/2.x/trunk/plugins/FirewallMonitor/fw.c new file mode 100644 index 000000000..969ba6971 --- /dev/null +++ b/2.x/trunk/plugins/FirewallMonitor/fw.c @@ -0,0 +1,439 @@ +#include "fwmon.h" +#include "wf.h" + +static BOOLEAN IsFwApiInitialized = FALSE; +static BOOLEAN IsFwApiConnectivityLost = FALSE; +static HMODULE FwApiLibraryHandle = NULL; +static FW_POLICY_STORE_HANDLE PolicyStoreHandles[4]; + +#define MAIN_POLICY_STORE PolicyStoreHandles[0] +#define GPRSOP_POLICY_STORE PolicyStoreHandles[1] +#define DYNAMIC_POLICY_STORE PolicyStoreHandles[2] +#define DEFAULT_POLICY_STORE PolicyStoreHandles[3] + +static POLICYSTORE pcProfiles[] = +{ + { FW_STORE_TYPE_LOCAL, FW_POLICY_ACCESS_RIGHT_READ_WRITE, FALSE }, + { FW_STORE_TYPE_GP_RSOP, FW_POLICY_ACCESS_RIGHT_READ, FALSE }, + { FW_STORE_TYPE_DYNAMIC, FW_POLICY_ACCESS_RIGHT_READ, FALSE }, + { FW_STORE_TYPE_DEFAULTS, FW_POLICY_ACCESS_RIGHT_READ, FALSE } +}; + +static POLICYSTORE gpoProfiles[] = +{ + { FW_STORE_TYPE_GPO, FW_POLICY_ACCESS_RIGHT_READ_WRITE, FALSE }, + { FW_STORE_TYPE_INVALID, FW_POLICY_ACCESS_RIGHT_INVALID, FALSE }, + { FW_STORE_TYPE_INVALID, FW_POLICY_ACCESS_RIGHT_INVALID, FALSE }, + { FW_STORE_TYPE_DEFAULTS, FW_POLICY_ACCESS_RIGHT_READ, TRUE } +}; + +static _FWOpenPolicyStore FWOpenPolicyStore_I = NULL; +static _FWClosePolicyStore FWClosePolicyStore_I = NULL; +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +static _FWRestoreDefaults FWRestoreDefaults_I = NULL; +static _FWGetGlobalConfig FWGetGlobalConfig_I = NULL; +static _FWSetGlobalConfig FWSetGlobalConfig_I = NULL; +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +static _FWAddFirewallRule FWAddFirewallRule_I = NULL; +static _FWSetFirewallRule FWSetFirewallRule_I = NULL; +static _FWDeleteFirewallRule FWDeleteFirewallRule_I = NULL; +static _FWDeleteAllFirewallRules FWDeleteAllFirewallRules_I = NULL; +static _FWEnumFirewallRules FWEnumFirewallRules_I = NULL; +static _FWVerifyFirewallRule FWVerifyFirewallRule_I = NULL; +static _FWFreeFirewallRules FWFreeFirewallRules_I = NULL; +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +static _FWGetConfig FWGetConfig_I = NULL; +static _FWSetConfig FWSetConfig_I = NULL; +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +static _FWAddConnectionSecurityRule FWAddConnectionSecurityRule_I = NULL; +static _FWSetConnectionSecurityRule FWSetConnectionSecurityRule_I = NULL; +static _FWDeleteConnectionSecurityRule FWDeleteConnectionSecurityRule_I = NULL; +static _FWDeleteAllConnectionSecurityRules FWDeleteAllConnectionSecurityRules_I = NULL; +static _FWEnumConnectionSecurityRules FWEnumConnectionSecurityRules_I = NULL; +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +static _FWAddAuthenticationSet FWAddAuthenticationSet_I = NULL; +static _FWSetAuthenticationSet FWSetAuthenticationSet_I = NULL; +static _FWDeleteAuthenticationSet FWDeleteAuthenticationSet_I = NULL; +static _FWDeleteAllAuthenticationSets FWDeleteAllAuthenticationSets_I = NULL; +static _FWEnumAuthenticationSets FWEnumAuthenticationSets_I = NULL; +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +static _FWAddCryptoSet FWAddCryptoSet_I = NULL; +static _FWSetCryptoSet FWSetCryptoSet_I = NULL; +static _FWDeleteCryptoSet FWDeleteCryptoSet_I = NULL; +static _FWDeleteAllCryptoSets FWDeleteAllCryptoSets_I = NULL; +static _FWEnumCryptoSets FWEnumCryptoSets_I = NULL; +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +static _FWEnumPhase1SAs FWEnumPhase1SAs_I = NULL; +static _FWEnumPhase2SAs FWEnumPhase2SAs_I = NULL; +static _FWDeletePhase1SAs FWDeletePhase1SAs_I = NULL; +static _FWDeletePhase2SAs FWDeletePhase2SAs_I = NULL; +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +static _FWEnumProducts FWEnumProducts_I = NULL; +static _FWFreeProducts FWFreeProducts_I = NULL; +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +static _FWAddMainModeRule FWAddMainModeRule_I = NULL; +static _FWSetMainModeRule FWSetMainModeRule_I = NULL; +static _FWDeleteMainModeRule FWDeleteMainModeRule_I = NULL; +static _FWDeleteAllMainModeRules FWDeleteAllMainModeRules_I = NULL; +static _FWEnumMainModeRules FWEnumMainModeRules_I = NULL; +static _FWFreeMainModeRules FWFreeMainModeRules_I = NULL; +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +static _FWQueryFirewallRules FWQueryFirewallRules_I = NULL; +static _FWQueryConnectionSecurityRules FWQueryConnectionSecurityRules_I = NULL; +static _FWQueryMainModeRules FWQueryMainModeRules_I = NULL; +static _FWQueryAuthenticationSets FWQueryAuthenticationSets_I = NULL; +static _FWQueryCryptoSets FWQueryCryptoSets_I = NULL; +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +static _FWEnumNetworks FWEnumNetworks_I = NULL; +static _FWFreeNetworks FWFreeNetworks_I = NULL; +static _FWEnumAdapters FWEnumAdapters_I = NULL; +static _FWFreeAdapters FWFreeAdapters_I = NULL; +/////////////////////////////////////////////////////////////////////////////////////////////////////////// +static _FWStatusMessageFromStatusCode FWStatusMessageFromStatusCode_I = NULL; +static _FWExportPolicy FWExportPolicy_I = NULL; +static _FWImportPolicy FWImportPolicy_I = NULL; +static _FWRestoreGPODefaults FWRestoreGPODefaults_I = NULL; +static _FwIsGroupPolicyEnforced FwIsGroupPolicyEnforced_I = NULL; +static _FWChangeNotificationCreate FWChangeNotificationCreate_I = NULL; +static _FWChangeNotificationDestroy FWChangeNotificationDestroy_I = NULL; +/////////////////////////////////////////////////////////////////////////////////////////////////////////// + + +VOID BuildQueryForDirection(FW_QUERY query, FW_DIRECTION direction) +{ + FW_MATCH_VALUE fw_match_value = { 0 }; + + FW_QUERY_CONDITION fw_query_conditionArray[1]; +// FW_QUERY_CONDITION fw_query_conditionArray2[1]; + +// fw_query_conditionArray[0] = { 0 }; + fw_query_conditionArray[0].matchKey = FW_MATCH_KEY_DIRECTION; + fw_query_conditionArray[0].matchType = FW_MATCH_TYPE_EQUAL; + + fw_match_value.type = FW_DATA_TYPE_UINT32; + //fw_match_value.data = new FW_MATCH_VALUE_DATA(); + + if (direction != FW_DIR_BOTH) + { + query.dwNumEntries = 1; +// fw_match_value.data.uInt32 = (uint) direction; + //fw_query_conditionArray[0].matchValue = fw_match_value; + } +// else +// { +// query.dwNumEntries = 2; +// fw_match_value.data.uInt32 = 1; +// fw_query_conditionArray[0].matchValue = fw_match_value; +// fw_query_conditionArray2 = new FW_QUERY_CONDITION[1]; +// fw_query_conditionArray2[0].matchKey = FW_MATCH_KEY.FW_MATCH_KEY_DIRECTION; +// fw_query_conditionArray2[0].matchType = FW_MATCH_TYPE.FW_MATCH_TYPE_EQUAL; +// fw_match_value = new FW_MATCH_VALUE(); +// fw_match_value.type = FW_DATA_TYPE.FW_DATA_TYPE_UINT32; +// fw_match_value.data = new FW_MATCH_VALUE_DATA(); +// fw_match_value.data.uInt32 = 2; +// fw_query_conditionArray2[0].matchValue = fw_match_value; +// } +// FW_QUERY_CONDITIONS[] fw_query_conditionsArray = new FW_QUERY_CONDITIONS[query.dwNumEntries]; +// fw_query_conditionsArray[0].dwNumEntries = 1; +// GCHandle item = GCHandle.Alloc(fw_query_conditionArray, GCHandleType.Pinned); +// fw_query_conditionsArray[0].pAndedConditions = Marshal.UnsafeAddrOfPinnedArrayElement(fw_query_conditionArray, 0); +// gchandles.Add(item); +// if (direction == FW_DIRECTION.FW_DIR_BOTH) +// { +// fw_query_conditionsArray[1].dwNumEntries = 1; +// item = GCHandle.Alloc(fw_query_conditionArray2, GCHandleType.Pinned); +// fw_query_conditionsArray[1].pAndedConditions = Marshal.UnsafeAddrOfPinnedArrayElement(fw_query_conditionArray2, 0); +// gchandles.Add(item); +// } +// item = GCHandle.Alloc(fw_query_conditionsArray, GCHandleType.Pinned); +// query.pORConditions = Marshal.UnsafeAddrOfPinnedArrayElement(fw_query_conditionsArray, 0); +// gchandles.Add(item); +} + + + +BOOLEAN IsFirewallApiInitialized( + VOID + ) +{ + return IsFwApiInitialized; +} + +BOOLEAN InitializeFirewallApi( + VOID + ) +{ + int index = 0; + + // Check if Vista+ ?? + + if (FwApiLibraryHandle) // already initialized... + return TRUE; + + FwApiLibraryHandle = LoadLibraryW(L"FirewallAPI.dll"); + + if (!FwApiLibraryHandle) + return FALSE; + + // Missing FwAlloc/FwFree and various FwFreexxx and other functions.... + + FWOpenPolicyStore_I = (_FWOpenPolicyStore)GetProcAddress(FwApiLibraryHandle, "FWOpenPolicyStore"); + FWClosePolicyStore_I = (_FWClosePolicyStore)GetProcAddress(FwApiLibraryHandle, "FWClosePolicyStore"); + + FWRestoreDefaults_I = (_FWRestoreDefaults)GetProcAddress(FwApiLibraryHandle, "FWRestoreDefaults"); + FWGetGlobalConfig_I = (_FWGetGlobalConfig)GetProcAddress(FwApiLibraryHandle, "FWGetGlobalConfig"); + FWSetGlobalConfig_I = (_FWSetGlobalConfig)GetProcAddress(FwApiLibraryHandle, "FWSetGlobalConfig"); + + FWAddFirewallRule_I = (_FWAddFirewallRule)GetProcAddress(FwApiLibraryHandle, "FWAddFirewallRule"); + FWSetFirewallRule_I = (_FWSetFirewallRule)GetProcAddress(FwApiLibraryHandle, "FWSetFirewallRule"); + FWDeleteFirewallRule_I = (_FWDeleteFirewallRule)GetProcAddress(FwApiLibraryHandle, "FWDeleteFirewallRule"); + FWDeleteAllFirewallRules_I = (_FWDeleteAllFirewallRules)GetProcAddress(FwApiLibraryHandle, "FWDeleteAllFirewallRules"); + FWEnumFirewallRules_I = (_FWEnumFirewallRules)GetProcAddress(FwApiLibraryHandle, "FWEnumFirewallRules"); + FWVerifyFirewallRule_I = (_FWVerifyFirewallRule)GetProcAddress(FwApiLibraryHandle, "FWVerifyFirewallRule"); + FWFreeFirewallRules_I = (_FWFreeFirewallRules)GetProcAddress(FwApiLibraryHandle, "FWFreeFirewallRules"); + + FWGetConfig_I = (_FWGetConfig)GetProcAddress(FwApiLibraryHandle, "FWGetConfig"); + FWSetConfig_I = (_FWSetConfig)GetProcAddress(FwApiLibraryHandle, "FWSetConfig"); + + FWAddConnectionSecurityRule_I = (_FWAddConnectionSecurityRule)GetProcAddress(FwApiLibraryHandle, "FWAddConnectionSecurityRule"); + FWSetConnectionSecurityRule_I = (_FWSetConnectionSecurityRule)GetProcAddress(FwApiLibraryHandle, "FWSetConnectionSecurityRule"); + FWDeleteConnectionSecurityRule_I = (_FWDeleteConnectionSecurityRule)GetProcAddress(FwApiLibraryHandle, "FWDeleteConnectionSecurityRule"); + FWDeleteAllConnectionSecurityRules_I = (_FWDeleteAllConnectionSecurityRules)GetProcAddress(FwApiLibraryHandle, "FWDeleteAllConnectionSecurityRules"); + FWEnumConnectionSecurityRules_I = (_FWEnumConnectionSecurityRules)GetProcAddress(FwApiLibraryHandle, "FWEnumConnectionSecurityRules"); + + FWAddAuthenticationSet_I = (_FWAddAuthenticationSet)GetProcAddress(FwApiLibraryHandle, "FWAddAuthenticationSet"); + FWSetAuthenticationSet_I = (_FWSetAuthenticationSet)GetProcAddress(FwApiLibraryHandle, "FWSetAuthenticationSet"); + FWDeleteAuthenticationSet_I = (_FWDeleteAuthenticationSet)GetProcAddress(FwApiLibraryHandle, "FWOpenPolicyStore"); + FWDeleteAllAuthenticationSets_I = (_FWDeleteAllAuthenticationSets)GetProcAddress(FwApiLibraryHandle, "FWDeleteAllAuthenticationSets"); + FWEnumConnectionSecurityRules_I = (_FWEnumConnectionSecurityRules)GetProcAddress(FwApiLibraryHandle, "FWEnumConnectionSecurityRules"); + + FWAddCryptoSet_I = (_FWAddCryptoSet)GetProcAddress(FwApiLibraryHandle, "FWAddCryptoSet"); + FWSetCryptoSet_I = (_FWSetCryptoSet)GetProcAddress(FwApiLibraryHandle, "FWSetCryptoSet"); + FWDeleteCryptoSet_I = (_FWDeleteCryptoSet)GetProcAddress(FwApiLibraryHandle, "FWDeleteCryptoSet"); + FWDeleteAllCryptoSets_I = (_FWDeleteAllCryptoSets)GetProcAddress(FwApiLibraryHandle, "FWDeleteAllCryptoSets"); + FWEnumCryptoSets_I = (_FWEnumCryptoSets)GetProcAddress(FwApiLibraryHandle, "FWEnumCryptoSets"); + + FWEnumPhase1SAs_I = (_FWEnumPhase1SAs)GetProcAddress(FwApiLibraryHandle, "FWEnumPhase1SAs"); + FWEnumPhase2SAs_I = (_FWEnumPhase2SAs)GetProcAddress(FwApiLibraryHandle, "FWEnumPhase2SAs"); + FWDeletePhase1SAs_I = (_FWDeletePhase1SAs)GetProcAddress(FwApiLibraryHandle, "FWDeletePhase1SAs"); + FWDeletePhase2SAs_I = (_FWDeletePhase2SAs)GetProcAddress(FwApiLibraryHandle, "FWDeletePhase2SAs"); + + FWEnumProducts_I = (_FWEnumProducts)GetProcAddress(FwApiLibraryHandle, "FWEnumProducts"); + FWFreeProducts_I = (_FWFreeProducts)GetProcAddress(FwApiLibraryHandle, "FWFreeProducts"); + + FWStatusMessageFromStatusCode_I = (_FWStatusMessageFromStatusCode)GetProcAddress(FwApiLibraryHandle, "FWStatusMessageFromStatusCode"); + FWExportPolicy_I = (_FWExportPolicy)GetProcAddress(FwApiLibraryHandle, "FWExportPolicy"); + FWImportPolicy_I = (_FWImportPolicy)GetProcAddress(FwApiLibraryHandle, "FWImportPolicy"); + FWRestoreGPODefaults_I = (_FWRestoreGPODefaults)GetProcAddress(FwApiLibraryHandle, "FWRestoreGPODefaults"); + FwIsGroupPolicyEnforced_I = (_FwIsGroupPolicyEnforced)GetProcAddress(FwApiLibraryHandle, "FwIsGroupPolicyEnforced"); + FWChangeNotificationCreate_I = (_FWChangeNotificationCreate)GetProcAddress(FwApiLibraryHandle, "FWChangeNotificationCreate"); + FWChangeNotificationDestroy_I = (_FWChangeNotificationDestroy)GetProcAddress(FwApiLibraryHandle, "FWChangeNotificationDestroy"); + + for (index = 0; index < 4; index++) + { + FWOpenPolicyStore_I( + FW_SEVEN_BINARY_VERSION, + NULL, + pcProfiles[index].StoreType, + pcProfiles[index].AccessRight, + FW_POLICY_STORE_FLAGS_NONE, + &PolicyStoreHandles[index] + ); + } + + IsFwApiInitialized = TRUE; + return TRUE; +} + +VOID FreeFirewallApi( + VOID + ) +{ + if (FWClosePolicyStore_I) + { + ULONG i; + + for (i = 0; i < _countof(PolicyStoreHandles); i++) + { + FWClosePolicyStore_I(PolicyStoreHandles[i]); + PolicyStoreHandles[i] = NULL; + } + } + + FWOpenPolicyStore_I = NULL; + FWClosePolicyStore_I = NULL; + FWRestoreDefaults_I = NULL; + FWGetGlobalConfig_I = NULL; + FWSetGlobalConfig_I = NULL; + + if (FwApiLibraryHandle) + { + FreeLibrary(FwApiLibraryHandle); + FwApiLibraryHandle = NULL; + } + + IsFwApiInitialized = FALSE; +} + +BOOLEAN ValidateFirewallConnectivity( + ULONG returnValue + ) +{ + if (!IsFwApiConnectivityLost && ((returnValue == 6) || (returnValue == 0x6b5))) + { + IsFwApiConnectivityLost = TRUE; + //ShowWarning( InvalidPolicyHandles or RpcConnection ); + + return FALSE; + } + + return TRUE; +} + +BOOLEAN FwIsGroupPolicyEnforced( + __in PWCHAR wszMachine, + __in FW_PROFILE_TYPE Profiles + ) +{ + BOOLEAN isEnforced = FALSE; + + ValidateFirewallConnectivity(FwIsGroupPolicyEnforced_I(NULL, Profiles, &isEnforced)); + + return (isEnforced == TRUE); +} + + + + + + +VOID FwStatusMessageFromStatusCode( + __in FW_RULE_STATUS code + ) +{ + ULONG pcchMsg = 0; + + FWStatusMessageFromStatusCode_I(code, NULL, &pcchMsg); +} + +VOID EnumerateFirewallRules( + __in FW_POLICY_STORE Store, + __in FW_PROFILE_TYPE Type, + __in FW_DIRECTION Direction, + __in PFW_WALK_RULES Callback, + __in PVOID Context + ) +{ + UINT32 uRuleCount = 0; + ULONG result = 0; + FW_POLICY_STORE_HANDLE storeHandle = NULL; + PFW_RULE2_0 pRules = NULL; + + switch (Store) + { + case FW_POLICY_STORE_MAIN: + storeHandle = MAIN_POLICY_STORE; + break; + case FW_POLICY_STORE_GPRSOP: + storeHandle = GPRSOP_POLICY_STORE; + break; + case FW_POLICY_STORE_DYNAMIC: + storeHandle = DYNAMIC_POLICY_STORE; + break; + case FW_POLICY_STORE_DEFAULT: + default: + storeHandle = DEFAULT_POLICY_STORE; + break; + } + + result = FWEnumFirewallRules_I( + storeHandle, + FW_RULE_STATUS_CLASS_ALL, + Type, + FW_ENUM_RULES_FLAG_INCLUDE_METADATA | FW_ENUM_RULES_FLAG_RESOLVE_NAME | FW_ENUM_RULES_FLAG_RESOLVE_DESCRIPTION | FW_ENUM_RULES_FLAG_RESOLVE_APPLICATION, + &uRuleCount, + &pRules + ); + + if (ValidateFirewallConnectivity(result)) + { + while (pRules != NULL && (pRules = pRules->pNext)) + { + if (Direction == FW_DIR_BOTH) + { + if (!Callback || !Callback(pRules, Context)) + break; + } + else + { + if (pRules->Direction == Direction) + { + if (!Callback || !Callback(pRules, Context)) + break; + } + } + } + + FWFreeFirewallRules_I(pRules); + } + + //FW_PROFILE_TYPE_CURRENT + //result = FWEnumFirewallRules_I(DYNAMIC_POLICY_STORE, wFilteredByStatus, FW_PROFILE_TYPE_CURRENT, wFlags, &NumRules, &pRule); + +// internal void Reload(string[] ruleIdFilter) +//{ +// uint num; +// IntPtr ptr; +// FW_QUERY fw_query; +// List idBuffer = new List(); +// this.Rules = new List(); +// FW_ENUM_RULES_FLAGS fw_enum_rules_flags = FW_ENUM_RULES_FLAGS.FW_ENUM_RULES_FLAG_NONE; +// if (this.resolveKeywords) +// { +// fw_enum_rules_flags = (FW_ENUM_RULES_FLAGS) ((ushort) (fw_enum_rules_flags | (FW_ENUM_RULES_FLAGS.FW_ENUM_RULES_FLAG_RESOLVE_APPLICATION | FW_ENUM_RULES_FLAGS.FW_ENUM_RULES_FLAG_RESOLVE_DESCRIPTION | FW_ENUM_RULES_FLAGS.FW_ENUM_RULES_FLAG_RESOLVE_NAME))); +// } +// if (this.resolveGPOName) +// { +// fw_enum_rules_flags = (FW_ENUM_RULES_FLAGS) ((ushort) (fw_enum_rules_flags | FW_ENUM_RULES_FLAGS.FW_ENUM_RULES_FLAG_RESOLVE_GPO_NAME)); +// } +// if (this.onlyEffective) +// { +// fw_enum_rules_flags = (FW_ENUM_RULES_FLAGS) ((ushort) (fw_enum_rules_flags | FW_ENUM_RULES_FLAGS.FW_ENUM_RULES_FLAG_EFFECTIVE)); +// } +// fw_query.dwNumEntries = 0; +// fw_query.pORConditions = IntPtr.Zero; +// fw_query.Status = this.onlyStatusOK ? (FW_RULE_STATUS.FW_RULE_STATUS_OK | FW_RULE_STATUS.FW_RULE_STATUS_PARTIALLY_IGNORED) : ((FW_RULE_STATUS) (-65536)); +// fw_query.wSchemaVersion = 0x20a; +// List gchandles = new List(); +// if (this.direction != FW_DIRECTION.FW_DIR_INVALID) +// { +// FwRuleUtilities.BuildQuery(ref fw_query, this.direction, ref ruleIdFilter, ref idBuffer, ref gchandles); +// } +// IntPtr ptr2 = Marshal.AllocCoTaskMem(Marshal.SizeOf(typeof(FW_QUERY))); +// uint num3 = 0; +// try +// { +// Marshal.StructureToPtr(fw_query, ptr2, false); +// num3 = FirewallRuleAPI.FWQueryFirewallRules(this.policyHandle, ptr2, (ushort) fw_enum_rules_flags, out num, out ptr); +// } +// finally +// { +// Marshal.FreeCoTaskMem(ptr2); +// FwRuleUtilities.FreeIntPtrs(ref idBuffer); +// FwRuleUtilities.FreeGCHandles(gchandles.ToArray()); +// } +// if (num3 == 0) +// { +// IntPtr pNext = ptr; +// for (int i = 0; i < num; i++) +// { +// FW_RULE fw_rule = (FW_RULE) Marshal.PtrToStructure(pNext, typeof(FW_RULE)); +// pNext = fw_rule.pNext; +// FirewallRule item = FirewallRuleFromFWRule(fw_rule); +// this.Rules.Add(item); +// } +// FirewallRuleAPI.FWFreeFirewallRules(ptr); +// } +//} +// +} \ No newline at end of file diff --git a/2.x/trunk/plugins/FirewallMonitor/fwdialog.c b/2.x/trunk/plugins/FirewallMonitor/fwdialog.c new file mode 100644 index 000000000..dd57e682f --- /dev/null +++ b/2.x/trunk/plugins/FirewallMonitor/fwdialog.c @@ -0,0 +1,745 @@ +#include "fwmon.h" +#include "wf.h" + +#include + +#define NUMBER_OF_CONTROLS 3 +#define NUMBER_OF_BUTTONS 7 +#define NUMBER_OF_SEPARATORS 2 + +#define TVITEM_OVERVIEW 0 +#define TVITEM_MONITOR 1 + +#define TVITEM_PRIVATEPROFILE 2 +#define TVITEM_PRIVATEINBOUND 3 +#define TVITEM_PRIVATEOUTBOUND 4 + +#define TVITEM_PUBLICPROFILE 6 +#define TVITEM_PUBLICINBOUND 7 +#define TVITEM_PUBLICOUTBOUND 8 + +#define TVITEM_STANDARDPROFILE 10 +#define TVITEM_STANDARDINBOUND 11 +#define TVITEM_STANDARDOUTBOUND 12 + +#define TVITEM_DOMAINPROFILE 14 +#define TVITEM_DOMAININBOUND 15 +#define TVITEM_DOMAINOUTBOUND 16 + +HWND TextboxHandle = NULL; +ULONG StatusMask = 0; +ULONG IdRangeBase = 0; +ULONG ToolBarIdRangeBase = 0; +ULONG ToolBarIdRangeEnd = 0; + +static INT_PTR CALLBACK SettingsDlgProc( + __in HWND hwndDlg, + __in UINT uMsg, + __in WPARAM wParam, + __in LPARAM lParam + ) +{ + PFIREWALL_CONTEXT context; + + if (uMsg == WM_INITDIALOG) + { + context = (PFIREWALL_CONTEXT)lParam; + SetProp(hwndDlg, L"Context", (HANDLE)context); + } + else + { + context = (PFIREWALL_CONTEXT)GetProp(hwndDlg, L"Context"); + + if (uMsg == WM_DESTROY) + RemoveProp(hwndDlg, L"Context"); + } + + if (!context) + return FALSE; + + switch (uMsg) + { + case WM_INITDIALOG: + { + PhCenterWindow(hwndDlg, (IsWindowVisible(GetParent(hwndDlg)) && !IsIconic(GetParent(hwndDlg))) ? GetParent(hwndDlg) : NULL); + } + break; + case WM_COMMAND: + { + switch (LOWORD(wParam)) + { + case IDCANCEL: + EndDialog(hwndDlg, IDCANCEL); + break; + case IDOK: + EndDialog(hwndDlg, IDOK); + break; + } + } + break; + } + + return FALSE; +} + +static INT CALLBACK MainPropSheet_Callback( + __in HWND hwndDlg, + __in UINT uMsg, + __inout LPARAM lParam + ) +{ + switch (uMsg) + { + case PSCB_INITIALIZED: + { + // load our application icon, it'll be shared with Windows, do not free. + HANDLE hbicon = LoadImageW( + (HINSTANCE)PluginInstance->DllBase, + MAKEINTRESOURCE(IDI_FIREWALLICON), + IMAGE_ICON, + GetSystemMetrics(SM_CXICON), + GetSystemMetrics(SM_CYICON), + LR_SHARED + ); + + // property sheets only set the ICON_SMALL, set our ICON_BIG for Taskbar/alt-tab previews. + SendMessageW(hwndDlg, WM_SETICON, ICON_BIG, (LPARAM)hbicon); + } + break; + case PSCB_PRECREATE: + // Add some missing Window styles to the PropertySheet. + ((LPDLGTEMPLATE)lParam)->style |= WS_MINIMIZEBOX; + break; + case PSCB_BUTTONPRESSED: + { + switch (lParam) + { + case PSBTN_FINISH: + case PSBTN_OK: + case PSBTN_APPLYNOW: + case PSBTN_CANCEL: + break; + } + } break; + } + + return FALSE; +} + +BOOLEAN CALLBACK WfAddRules1( + __in PFW_RULE2_0 FwRule, + __in PVOID Context + ) +{ + PFIREWALL_CONTEXT context = (PFIREWALL_CONTEXT)Context; + + INT lvItemIndex = PhAddListViewItem(context->ListViewHandle, MAXINT, FwRule->wszName, (PVOID)FwRule); + + if (FwRule->wszLocalApplication) + { + HICON icon = PhGetFileShellIcon(FwRule->wszLocalApplication, L".exe", TRUE); + + // Icon + if (icon) + { + INT imageIndex = ImageList_AddIcon(ListView_GetImageList(context->ListViewHandle, LVSIL_SMALL), icon); + PhSetListViewItemImageIndex(context->ListViewHandle, lvItemIndex, imageIndex); + DestroyIcon(icon); + } + else + { + PhSetListViewItemImageIndex(context->ListViewHandle, lvItemIndex, 0); + } + } + + if (FwRule->wszEmbeddedContext) + { + WCHAR szSubitemText[260]; + + swprintf_s( + szSubitemText, + _countof(szSubitemText), + L"%s", + FwRule->wszEmbeddedContext + ); + + //SHGetLocalizedName(FwRule->wszEmbeddedContext, FwRule->wszEmbeddedContext, cch, &tt); + + ListView_SetItemText(context->ListViewHandle, lvItemIndex, 1, szSubitemText); + + } + + return TRUE; +} + +static NTSTATUS FWRulesEnumThreadStart( + __in PVOID Parameter + ) +{ + PFIREWALL_CONTEXT context = (PFIREWALL_CONTEXT)Parameter; + + if (InitializeFirewallApi()) + { + EnumerateFirewallRules(FW_POLICY_STORE_DYNAMIC, context->Flags, context->Direction, WfAddRules1, context); + } + + return STATUS_SUCCESS; +} + + +HTREEITEM TreeViewAddItem( + HWND hTreeView, + HTREEITEM hParent, + LPWSTR lpText, + INT Image, + INT SelectedImage, + LPARAM param + ) +{ + TV_INSERTSTRUCTW Insert = { 0 }; + + Insert.item.mask = TVIF_TEXT | TVIF_PARAM | TVIF_IMAGE | TVIF_SELECTEDIMAGE; + Insert.hInsertAfter = TVI_LAST; + Insert.hParent = hParent; + Insert.item.lParam = param; + Insert.item.iSelectedImage = SelectedImage; + Insert.item.iImage = Image; + Insert.item.pszText = lpText; + + return TreeView_InsertItem(hTreeView, &Insert); +} + +INT_PTR CALLBACK FirewallDlgProc( + __in HWND hwndDlg, + __in UINT uMsg, + __in WPARAM wParam, + __in LPARAM lParam + ) +{ + PFIREWALL_CONTEXT context; + + if (uMsg == WM_INITDIALOG) + { + context = (PFIREWALL_CONTEXT)lParam; + SetProp(hwndDlg, L"Context", (HANDLE)context); + } + else + { + context = (PFIREWALL_CONTEXT)GetProp(hwndDlg, L"Context"); + + if (uMsg == WM_DESTROY) + RemoveProp(hwndDlg, L"Context"); + } + + if (!context) + return FALSE; + + switch (uMsg) + { + case WM_INITDIALOG: + { + TV_INSERTSTRUCTW Insert = { 0 }; + HTREEITEM root = NULL; + + { + ULONG idIndex = 0; + ULONG imageIndex = 0; + + IdRangeBase = PhPluginReserveIds(NUMBER_OF_CONTROLS + NUMBER_OF_BUTTONS); + ToolBarIdRangeBase = IdRangeBase + NUMBER_OF_CONTROLS; + ToolBarIdRangeEnd = ToolBarIdRangeBase + NUMBER_OF_BUTTONS; + + // Create the rebar. + context->ReBarHandle = CreateWindowExW( + WS_EX_TOOLWINDOW, + REBARCLASSNAME, + NULL, + WS_CHILD | WS_BORDER | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | CCS_NODIVIDER | CCS_TOP | RBS_DBLCLKTOGGLE | RBS_VARHEIGHT, + 0, 0, 0, 0, + hwndDlg, + NULL, + (HINSTANCE)PluginInstance->DllBase, + NULL + ); + // Create the toolbar. + context->ToolBarHandle = CreateWindowExW( + 0, + TOOLBARCLASSNAME, + NULL, + WS_CHILD | CCS_NORESIZE | CCS_NODIVIDER | TBSTYLE_FLAT | TBSTYLE_LIST | TBSTYLE_TOOLTIPS | TBSTYLE_TRANSPARENT, + 0, 0, 0, 0, + context->ReBarHandle, + (HMENU)(IdRangeBase), + (HINSTANCE)PluginInstance->DllBase, + NULL + ); + // Create the searchbox + TextboxHandle = CreateWindowExW( + 0, + WC_EDIT, + NULL, + WS_CHILD | WS_VISIBLE | WS_BORDER, + 0, 0, 0, 0, + context->ReBarHandle, + (HMENU)(IdRangeBase + 1), + (HINSTANCE)PluginInstance->DllBase, + NULL + ); + + // Set the toolbar struct size. + SendMessage(context->ToolBarHandle, TB_BUTTONSTRUCTSIZE, sizeof(TBBUTTON), 0); + // Set the extended toolbar styles. + SendMessage(context->ToolBarHandle, TB_SETEXTENDEDSTYLE, 0, TBSTYLE_EX_DOUBLEBUFFER | TBSTYLE_EX_MIXEDBUTTONS | TBSTYLE_EX_HIDECLIPPEDBUTTONS); + + // Add the rebar controls and attach our windows. + { + REBARINFO ri = { sizeof(REBARINFO) }; + REBARBANDINFO rBandInfo = { sizeof(REBARBANDINFO) }; + + rBandInfo.fMask = RBBIM_STYLE | RBBIM_ID | RBBIM_CHILD | RBBIM_CHILDSIZE | RBBIM_SIZE; + rBandInfo.fStyle = RBBS_HIDETITLE | RBBS_NOGRIPPER | RBBS_FIXEDSIZE; + + //no imagelist to attach to rebar + SendMessage(context->ReBarHandle, RB_SETBARINFO, 0, (LPARAM)&ri); + + // Get the toolbar size and add the toolbar. + rBandInfo.wID = (IdRangeBase + 1); + rBandInfo.cyMinChild = HIWORD(SendMessage(context->ToolBarHandle, TB_GETBUTTONSIZE, 0, 0)) + 2; // Height + rBandInfo.hwndChild = context->ToolBarHandle; + SendMessage(context->ReBarHandle, RB_INSERTBAND, -1, (LPARAM)&rBandInfo); + + // Add the textbox, slightly smaller than the toolbar. + rBandInfo.wID = (IdRangeBase + 2); + rBandInfo.cxMinChild = 180; + rBandInfo.cyMinChild -= 5; + rBandInfo.hwndChild = TextboxHandle; + SendMessage(context->ReBarHandle, RB_INSERTBAND, -1, (LPARAM)&rBandInfo); + } + + // Set Searchbox control font. + SendMessage(TextboxHandle, WM_SETFONT, (WPARAM)PhApplicationFont, FALSE); + Edit_SetCueBannerText(TextboxHandle, L"Search Firewall"); + + { + TBBUTTON tbButtonArray[] = + { + { I_IMAGENONE, ToolBarIdRangeBase + (idIndex++), TBSTATE_ENABLED, BTNS_AUTOSIZE | BTNS_SHOWTEXT | BTNS_DROPDOWN, { 0 }, 0, (INT_PTR)L" Firewall" }, + { I_IMAGENONE, ToolBarIdRangeBase + (idIndex++), TBSTATE_ENABLED, BTNS_AUTOSIZE | BTNS_SHOWTEXT | BTNS_DROPDOWN, { 0 }, 0, (INT_PTR)L" View" }, + { I_IMAGENONE, ToolBarIdRangeBase + (idIndex++), TBSTATE_ENABLED, BTNS_AUTOSIZE | BTNS_SHOWTEXT | BTNS_DROPDOWN, { 0 }, 0, (INT_PTR)L" Tools" }, + { I_IMAGENONE, ToolBarIdRangeBase + (idIndex++), TBSTATE_ENABLED, BTNS_AUTOSIZE | BTNS_SHOWTEXT | BTNS_DROPDOWN, { 0 }, 0, (INT_PTR)L" Help" } + }; + + // Add the buttons to the toolbar. + SendMessage(context->ToolBarHandle, TB_ADDBUTTONS, _countof(tbButtonArray), (LPARAM)tbButtonArray); + } + } + + context->TreeViewHandle = GetDlgItem(hwndDlg, IDC_TREE1); + context->ListViewHandle = GetDlgItem(hwndDlg, IDC_FIREWALL_LIST); + + PhSetControlTheme(context->ListViewHandle, L"explorer"); + PhSetListViewStyle(context->ListViewHandle, FALSE, FALSE); + PhSetExtendedListView(context->ListViewHandle); + + PhSetControlTheme(context->TreeViewHandle, L"explorer"); + TreeView_SetExtendedStyle( + context->TreeViewHandle, + TVS_EX_DOUBLEBUFFER, + TVS_EX_DOUBLEBUFFER + ); + + ListView_SetImageList(context->ListViewHandle, ImageList_Create(20, 20, ILC_COLOR32 | ILC_MASK, 0, 1), LVSIL_SMALL); + ListView_SetImageList(context->ListViewHandle, ImageList_Create(32, 32, ILC_COLOR32 | ILC_MASK, 0, 1), LVSIL_NORMAL); + TreeView_SetImageList(context->TreeViewHandle, ImageList_Create(22, 22, ILC_COLOR32 | ILC_MASK, 0, 1), TVSIL_NORMAL); + + PhInitializeLayoutManager(&context->LayoutManager, hwndDlg); + PhAddLayoutItem(&context->LayoutManager, context->ReBarHandle, NULL, PH_ANCHOR_LEFT | PH_ANCHOR_TOP | PH_ANCHOR_RIGHT); + PhAddLayoutItem(&context->LayoutManager, context->TreeViewHandle, NULL, PH_ANCHOR_LEFT | PH_ANCHOR_TOP | PH_ANCHOR_BOTTOM); + PhAddLayoutItem(&context->LayoutManager, context->ListViewHandle, NULL, PH_ANCHOR_ALL); + PhAddLayoutItem(&context->LayoutManager, GetDlgItem(hwndDlg, ID_CLOSE), NULL, PH_ANCHOR_BOTTOM | PH_ANCHOR_RIGHT); + + { + HICON hIcon; + + hIcon = LoadImage( + (HINSTANCE)PluginInstance->DllBase, + MAKEINTRESOURCE(IDI_WFICON),//IDI_FIREWALLICON), + IMAGE_ICON, + 24, + 24, + LR_CREATEDIBSECTION | LR_SHARED + ); + + ImageList_AddIcon(TreeView_GetImageList(context->TreeViewHandle, TVSIL_NORMAL), hIcon); + DestroyIcon(hIcon); + + hIcon = LoadImage( + (HINSTANCE)PluginInstance->DllBase, + MAKEINTRESOURCE(IDI_ICONMONITOR), + IMAGE_ICON, + 24, + 24, + LR_CREATEDIBSECTION | LR_SHARED + ); + + ImageList_AddIcon(TreeView_GetImageList(context->TreeViewHandle, TVSIL_NORMAL), hIcon); + DestroyIcon(hIcon); + + hIcon = LoadImage( + (HINSTANCE)PluginInstance->DllBase, + MAKEINTRESOURCE(IDI_FIREWALLICON), + IMAGE_ICON, + 24, + 24, + LR_CREATEDIBSECTION | LR_SHARED + ); + + ImageList_AddIcon(TreeView_GetImageList(context->TreeViewHandle, TVSIL_NORMAL), hIcon); + DestroyIcon(hIcon); + + hIcon = LoadImage( + (HINSTANCE)PluginInstance->DllBase, + MAKEINTRESOURCE(IDI_ICONWORK), + IMAGE_ICON, + 24, + 24, + LR_CREATEDIBSECTION | LR_SHARED + ); + + ImageList_AddIcon(TreeView_GetImageList(context->TreeViewHandle, TVSIL_NORMAL), hIcon); + DestroyIcon(hIcon); + + hIcon = LoadImage( + (HINSTANCE)PluginInstance->DllBase, + MAKEINTRESOURCE(IDI_ICONPUBLIC), + IMAGE_ICON, + 24, + 24, + LR_CREATEDIBSECTION | LR_SHARED + ); + + ImageList_AddIcon(TreeView_GetImageList(context->TreeViewHandle, TVSIL_NORMAL), hIcon); + DestroyIcon(hIcon); + } + + + TreeViewAddItem(context->TreeViewHandle, NULL, L"Overview", 0, 0, TVITEM_OVERVIEW); + TreeViewAddItem(context->TreeViewHandle, NULL, L"Monitoring", 1, 1, TVITEM_MONITOR); + + root = TreeViewAddItem(context->TreeViewHandle, NULL, L"Inbound", 2, 2, 0); + TreeViewAddItem(context->TreeViewHandle, root, L"Private", 2, 2, TVITEM_PRIVATEINBOUND); + TreeViewAddItem(context->TreeViewHandle, root, L"Public", 2, 2, TVITEM_PUBLICINBOUND); + TreeViewAddItem(context->TreeViewHandle, root, L"Standard", 2, 2, TVITEM_STANDARDINBOUND); + root = TreeViewAddItem(context->TreeViewHandle, root, L"Domain", 2, 2, TVITEM_DOMAININBOUND); + + TreeView_EnsureVisible(context->TreeViewHandle, root); + + root = TreeViewAddItem( context->TreeViewHandle, NULL, L"Outbound", 3, 3, 1); + TreeViewAddItem(context->TreeViewHandle, root, L"Private", 3, 3, TVITEM_PRIVATEINBOUND); + TreeViewAddItem(context->TreeViewHandle, root, L"Public", 3, 3, TVITEM_PUBLICOUTBOUND); + TreeViewAddItem(context->TreeViewHandle, root, L"Standard", 3, 3, TVITEM_STANDARDOUTBOUND); + root = TreeViewAddItem(context->TreeViewHandle, root, L"Domain", 3, 3, TVITEM_DOMAINOUTBOUND); + + TreeView_EnsureVisible(context->TreeViewHandle, root); + + root = TreeViewAddItem(context->TreeViewHandle, NULL, L"Security Rules", 4, 4, 2); + TreeViewAddItem(context->TreeViewHandle, root, L"Private", 4, 4, 0); + TreeViewAddItem(context->TreeViewHandle, root, L"Public", 4, 4, 0); + TreeViewAddItem(context->TreeViewHandle, root, L"Standard", 4, 4, 0); + TreeViewAddItem(context->TreeViewHandle, root, L"Domain", 4, 4, 0); + + PhAddListViewColumn(context->ListViewHandle, 0, 0, 0, LVCFMT_LEFT, 400, L"Name"); + PhAddListViewColumn(context->ListViewHandle, 1, 1, 1, LVCFMT_LEFT, 150, L"Group"); + + //SendMessage(context->ReBarHandle, RB_SETWINDOWTHEME, 0, (LPARAM)L"Media"); //Media/Communications/BrowserTabBar/Help + //SendMessage(context->ToolBarHandle, TB_SETWINDOWTHEME, 0, (LPARAM)L"Media"); //Media/Communications/BrowserTabBar/Help + + SetFocus(context->TreeViewHandle); + PhCenterWindow(hwndDlg, PhMainWndHandle); + } + break; + case WM_SIZE: + { + PhLayoutManagerLayout(&context->LayoutManager); + } + break; + case WM_COMMAND: + { + switch (LOWORD(wParam)) + { + case ID_PROPERTIES: + { + #define MAX_NUMPAGES 7 + UINT nPages = 0; + PROPSHEETPAGEW pSheetPage = { sizeof(PROPSHEETPAGEW) }; + HPROPSHEETPAGE pSheetPageHandles[MAX_NUMPAGES] = { 0 }; + + pSheetPage.dwFlags = PSP_DEFAULT | PSP_USETITLE; + pSheetPage.hInstance = (HINSTANCE)PluginInstance->DllBase; + pSheetPage.lParam = (LPARAM)context; + + pSheetPage.pszTitle = L"General"; + pSheetPage.pszTemplate = MAKEINTRESOURCE(IDD_RULEGENERAL); + pSheetPage.pfnDlgProc = SettingsDlgProc; + pSheetPageHandles[nPages++] = CreatePropertySheetPageW(&pSheetPage); + + pSheetPage.pszTitle = L"Advanced"; + pSheetPage.pszTemplate = MAKEINTRESOURCE(IDD_RULEADVANCED); + pSheetPage.pfnDlgProc = SettingsDlgProc; + pSheetPageHandles[nPages++] = CreatePropertySheetPageW(&pSheetPage); + + pSheetPage.pszTitle = L"Scope"; + pSheetPage.pszTemplate = MAKEINTRESOURCE(IDD_RULESCOPE); + pSheetPage.pfnDlgProc = SettingsDlgProc; + pSheetPageHandles[nPages++] = CreatePropertySheetPageW(&pSheetPage); + + pSheetPage.pszTitle = L"Users"; + pSheetPage.pszTemplate = MAKEINTRESOURCE(IDD_RULEUSERS); + pSheetPage.pfnDlgProc = SettingsDlgProc; + pSheetPageHandles[nPages++] = CreatePropertySheetPageW(&pSheetPage); + + pSheetPage.pszTitle = L"Computers"; + pSheetPage.pszTemplate = MAKEINTRESOURCE(IDD_RULECOMPUTERS); + pSheetPage.pfnDlgProc = SettingsDlgProc; + pSheetPageHandles[nPages++] = CreatePropertySheetPageW(&pSheetPage); + + pSheetPage.pszTitle = L"Programs and Services"; + pSheetPage.pszTemplate = MAKEINTRESOURCE(IDD_RULEEXECUTABLE); + pSheetPage.pfnDlgProc = SettingsDlgProc; + pSheetPageHandles[nPages++] = CreatePropertySheetPageW(&pSheetPage); + + pSheetPage.pszTitle = L"Protocols and Ports"; + pSheetPage.pszTemplate = MAKEINTRESOURCE(IDD_RULEPORTS); + pSheetPage.pfnDlgProc = SettingsDlgProc; + pSheetPageHandles[nPages++] = CreatePropertySheetPageW(&pSheetPage); + + + { + // Create the property sheet + PROPSHEETHEADERW psh = { sizeof(PROPSHEETHEADERW) }; + psh.dwFlags = PSH_USECALLBACK | PSH_USEICONID; + psh.pszIcon = MAKEINTRESOURCE(IDI_FIREWALLICON); + psh.pszCaption = L"Rule Properties"; + psh.hwndParent = hwndDlg; + psh.hInstance = (HINSTANCE)PluginInstance->DllBase; + psh.nPages = nPages; + psh.phpage = pSheetPageHandles; + psh.pfnCallback = MainPropSheet_Callback; + + PropertySheetW(&psh); + } + } + break; + case IDCANCEL: + case ID_CLOSE: + { + FreeFirewallApi(); + EndDialog(hwndDlg, IDOK); + } + break; + } + } + break; + case WM_NOTIFY: + { + LPNMHDR data = (LPNMHDR)lParam; + + switch (data->code) + { + case TVN_SELCHANGING: + { + if (data->hwndFrom == context->TreeViewHandle) + { + LPNMTREEVIEW pnkd = (LPNMTREEVIEW)lParam; + INT index = (INT)pnkd->itemNew.lParam; + + ListView_DeleteAllItems(context->ListViewHandle); + ImageList_RemoveAll(ListView_GetImageList(context->ListViewHandle, LVSIL_SMALL)); + //FW_PROFILE_TYPE_INVALID = 0, + //FW_PROFILE_TYPE_DOMAIN = 0x001, + //FW_PROFILE_TYPE_STANDARD = 0x002, + //FW_PROFILE_TYPE_PRIVATE = FW_PROFILE_TYPE_STANDARD, + //FW_PROFILE_TYPE_PUBLIC = 0x004, + //FW_PROFILE_TYPE_ALL = 0x7FFFFFFF, + // FW_PROFILE_TYPE_CURRENT = 0x80000000, + //FW_PROFILE_TYPE_NONE = FW_PROFILE_TYPE_CURRENT + 1 + + switch (index) + { + case TVITEM_PRIVATEPROFILE: + { + context->Flags = FW_PROFILE_TYPE_PRIVATE; + context->Direction = FW_DIR_BOTH; + } + break; + case TVITEM_PRIVATEINBOUND: + { + context->Flags = FW_PROFILE_TYPE_PRIVATE; + context->Direction = FW_DIR_IN; + } + break; + case TVITEM_PRIVATEOUTBOUND: + { + context->Flags = FW_PROFILE_TYPE_PRIVATE; + context->Direction = FW_DIR_OUT; + } + break; + case TVITEM_PUBLICPROFILE: + { + context->Flags = FW_PROFILE_TYPE_PUBLIC; + context->Direction = FW_DIR_BOTH; + } + break; + case TVITEM_PUBLICINBOUND: + { + context->Flags = FW_PROFILE_TYPE_PUBLIC; + context->Direction = FW_DIR_IN; + } + break; + case TVITEM_PUBLICOUTBOUND: + { + context->Flags = FW_PROFILE_TYPE_PUBLIC; + context->Direction = FW_DIR_OUT; + } + break; + case TVITEM_STANDARDPROFILE: + { + context->Flags = FW_PROFILE_TYPE_STANDARD; + context->Direction = FW_DIR_BOTH; + } + break; + case TVITEM_STANDARDINBOUND: + { + context->Flags = FW_PROFILE_TYPE_STANDARD; + context->Direction = FW_DIR_IN; + } + break; + case TVITEM_STANDARDOUTBOUND: + { + context->Flags = FW_PROFILE_TYPE_STANDARD; + context->Direction = FW_DIR_OUT; + } + break; + case TVITEM_DOMAINPROFILE: + { + context->Flags = FW_PROFILE_TYPE_DOMAIN; + context->Direction = FW_DIR_BOTH; + } + break; + case TVITEM_DOMAININBOUND: + { + context->Flags = FW_PROFILE_TYPE_DOMAIN; + context->Direction = FW_DIR_IN; + } + break; + case TVITEM_DOMAINOUTBOUND: + { + context->Flags = FW_PROFILE_TYPE_DOMAIN; + context->Direction = FW_DIR_OUT; + } + break; + default: + { + context->Flags = FW_PROFILE_TYPE_NONE; + context->Direction = FW_DIR_INVALID; + } + break; + } + + PhCreateThread(0, FWRulesEnumThreadStart, context); + } + } + break; + case NM_DBLCLK: + { + //if (data->hwndFrom == hListView) + //{ + // LPNMITEMACTIVATE lpnmitem = (LPNMITEMACTIVATE) lParam; + // LPORIGINCONTENT content = ListViewGetlParam(lpnmitem->iItem); + + // PWCHAR itemPath = content->CdKey; + + // if (itemPath != NULL) + // { + // INT ItemIndex = ListView_GetNextItem(hListView, -1, LVNI_FOCUSED); + // } + + //// if (IS_INSTALLED_ENUM(SelectedEnumType)) + //// ShowInstalledAppInfo(-1); + //// if (IS_AVAILABLE_ENUM(SelectedEnumType)) + //// ShowAvailableAppInfo(-1); + //} + } + break; + case TBN_DROPDOWN: + { + #define lpnm ((LPNMHDR)lParam) + #define lpnmTB ((LPNMTOOLBAR)lParam) + + if (lpnmTB->iItem == 1) + { + + // Get the coordinates of the button. + RECT rc; + HMENU hMenuLoaded; + HMENU hPopupMenu; + TPMPARAMS tpm = { sizeof(TPMPARAMS) }; + + SendMessage(lpnmTB->hdr.hwndFrom, TB_GETRECT, (WPARAM)lpnmTB->iItem, (LPARAM)&rc); + + // Convert to screen coordinates. + MapWindowPoints(lpnmTB->hdr.hwndFrom, HWND_DESKTOP, (LPPOINT)&rc, 2); + + // Get the menu. + hMenuLoaded = LoadMenu((HINSTANCE)PluginInstance->DllBase, MAKEINTRESOURCE(IDR_MENUGENERAL)); + + // Get the submenu for the first menu item. + hPopupMenu = GetSubMenu(hMenuLoaded, 0); + + // Set up the pop-up menu. + // In case the toolbar is too close to the bottom of the screen, + // set rcExclude equal to the button rectangle and the menu will appear above + // the button, and not below it. + + tpm.rcExclude = rc; + + // Show the menu and wait for input. + // If the user selects an item, its WM_COMMAND is sent. + + TrackPopupMenuEx( + hPopupMenu, + TPM_LEFTALIGN | TPM_LEFTBUTTON | TPM_VERTICAL, + rc.left, + rc.bottom, + hwndDlg, + &tpm + ); + + DestroyMenu(hMenuLoaded); + } + } + break; + case NM_RCLICK: + { + if (data->hwndFrom == context->ListViewHandle) + { + POINT pt; + + HMENU hPopupMenu = GetSubMenu(LoadMenuW((HINSTANCE)PluginInstance->DllBase, MAKEINTRESOURCEW(IDR_FIREWALLMENU)), 0); + + GetCursorPos(&pt); + + SetForegroundWindow(context->ListViewHandle); + TrackPopupMenu(hPopupMenu, 0, pt.x, pt.y, 0, hwndDlg, NULL); + + DestroyMenu(hPopupMenu); + } + } + break; + } + } + break; + } + + return FALSE; +} \ No newline at end of file diff --git a/2.x/trunk/plugins/FirewallMonitor/fwmon.h b/2.x/trunk/plugins/FirewallMonitor/fwmon.h index 56bf93636..8cbce8b00 100644 --- a/2.x/trunk/plugins/FirewallMonitor/fwmon.h +++ b/2.x/trunk/plugins/FirewallMonitor/fwmon.h @@ -1,14 +1,34 @@ #ifndef FWMON_H #define FWMON_H +#define STRICT +#define WIN32_LEAN_AND_MEAN +#define CINTERFACE +#define COBJMACROS +#undef __cplusplus + #include +#include "wf.h" +#include "resource.h" + extern PPH_PLUGIN PluginInstance; #define SETTING_PREFIX L"ProcessHacker.FirewallMonitor." #define SETTING_NAME_FW_TREE_LIST_COLUMNS (SETTING_PREFIX L"FwTreeListColumns") #define SETTING_NAME_FW_TREE_LIST_SORT (SETTING_PREFIX L"FwTreeListSort") +typedef struct _FIREWALL_CONTEXT +{ + HWND ListViewHandle; + HWND TreeViewHandle; + HWND ReBarHandle; + HWND ToolBarHandle; + FW_PROFILE_TYPE Flags; + FW_DIRECTION Direction; + PH_LAYOUT_MANAGER LayoutManager; +} FIREWALL_CONTEXT, *PFIREWALL_CONTEXT; + typedef struct _FW_EVENT_ITEM { LARGE_INTEGER Time; @@ -64,4 +84,11 @@ VOID SaveSettingsFwTreeList( VOID ); +INT_PTR CALLBACK FirewallDlgProc( + __in HWND hwndDlg, + __in UINT uMsg, + __in WPARAM wParam, + __in LPARAM lParam + ); + #endif diff --git a/2.x/trunk/plugins/FirewallMonitor/main.c b/2.x/trunk/plugins/FirewallMonitor/main.c index 55b2bdd85..c89c3bae9 100644 --- a/2.x/trunk/plugins/FirewallMonitor/main.c +++ b/2.x/trunk/plugins/FirewallMonitor/main.c @@ -23,6 +23,7 @@ #include "fwmon.h" #include "resource.h" +#define FIREWALL_MENUITEM 1 VOID NTAPI LoadCallback( __in_opt PVOID Parameter, @@ -44,11 +45,17 @@ VOID NTAPI MainWindowShowingCallback( __in_opt PVOID Context ); +VOID NTAPI MenuItemCallback( + __in_opt PVOID Parameter, + __in_opt PVOID Context + ); + PPH_PLUGIN PluginInstance; PH_CALLBACK_REGISTRATION PluginLoadCallbackRegistration; PH_CALLBACK_REGISTRATION PluginUnloadCallbackRegistration; PH_CALLBACK_REGISTRATION PluginShowOptionsCallbackRegistration; PH_CALLBACK_REGISTRATION MainWindowShowingCallbackRegistration; +PH_CALLBACK_REGISTRATION PluginMenuItemCallbackRegistration; LOGICAL DllMain( __in HINSTANCE Instance, @@ -90,6 +97,12 @@ LOGICAL DllMain( NULL, &PluginShowOptionsCallbackRegistration ); + PhRegisterCallback( + PhGetPluginCallback(PluginInstance, PluginCallbackMenuItem), + MenuItemCallback, + NULL, + &PluginMenuItemCallbackRegistration + ); PhRegisterCallback( PhGetGeneralCallback(GeneralCallbackMainWindowShowing), @@ -99,13 +112,13 @@ LOGICAL DllMain( ); { - static PH_SETTING_CREATE settings[] = + PH_SETTING_CREATE settings[] = { { StringSettingType, SETTING_NAME_FW_TREE_LIST_COLUMNS, L"" }, { IntegerPairSettingType, SETTING_NAME_FW_TREE_LIST_SORT, L"0,2" } }; - PhAddSettings(settings, sizeof(settings) / sizeof(PH_SETTING_CREATE)); + PhAddSettings(settings, _countof(settings)); } } break; @@ -119,7 +132,10 @@ VOID NTAPI LoadCallback( __in_opt PVOID Context ) { - NOTHING; + INITCOMMONCONTROLSEX icex = { sizeof(INITCOMMONCONTROLSEX) }; + icex.dwICC = ICC_COOL_CLASSES | ICC_BAR_CLASSES; + + InitCommonControlsEx(&icex); } VOID NTAPI UnloadCallback( @@ -143,5 +159,35 @@ VOID NTAPI MainWindowShowingCallback( __in_opt PVOID Context ) { - InitializeFwTab(); + //InitializeFwTab(); + PhPluginAddMenuItem(PluginInstance, PH_MENU_ITEM_LOCATION_VIEW, NULL, FIREWALL_MENUITEM, L"Windows Firewall", NULL); +} + +VOID NTAPI MenuItemCallback( + __in_opt PVOID Parameter, + __in_opt PVOID Context + ) +{ + PPH_PLUGIN_MENU_ITEM menuItem = (PPH_PLUGIN_MENU_ITEM)Parameter; + + if (menuItem != NULL) + { + switch (menuItem->Id) + { + case FIREWALL_MENUITEM: + { + PFIREWALL_CONTEXT context = PhAllocate(sizeof(FIREWALL_CONTEXT)); + ZeroMemory(context, sizeof(FIREWALL_CONTEXT)); + + DialogBoxParam( + (HINSTANCE)PluginInstance->DllBase, + MAKEINTRESOURCE(IDD_DIALOG1), + NULL, + FirewallDlgProc, + (LPARAM)context + ); + } + break; + } + } } diff --git a/2.x/trunk/plugins/FirewallMonitor/monitor.c b/2.x/trunk/plugins/FirewallMonitor/monitor.c index e7ce7d931..ad485c0f1 100644 --- a/2.x/trunk/plugins/FirewallMonitor/monitor.c +++ b/2.x/trunk/plugins/FirewallMonitor/monitor.c @@ -22,10 +22,7 @@ #include "fwmon.h" #include -#ifndef INCLUDED_FWPMU -#define INCLUDED_FWPMU #include -#endif PH_CALLBACK_DECLARE(FwItemAddedEvent); PH_CALLBACK_DECLARE(FwItemModifiedEvent); @@ -35,7 +32,7 @@ PH_CALLBACK_DECLARE(FwItemsUpdatedEvent); HANDLE EngineHandle; HANDLE EventHandle; -VOID CALLBACK DropEventCallback(__inout VOID* pContext, __in const FWPM_NET_EVENT* pEvent) +VOID CALLBACK DropEventCallback(__inout PVOID pContext, __in const FWPM_NET_EVENT* pEvent) { SYSTEMTIME st; FILETIME ft; @@ -311,8 +308,6 @@ VOID StopFwMonitor( VOID ) { - FWP_VALUE0 value = { 0 }; - if (EventHandle) { FwpmNetEventUnsubscribe( @@ -325,13 +320,17 @@ VOID StopFwMonitor( if (EngineHandle) { + FWP_VALUE0 value = { 0 }; + value.type = FWP_UINT32; value.uint32 = 0; // Disable collection of NetEvents - FwpmEngineSetOption(EngineHandle, + FwpmEngineSetOption( + EngineHandle, FWPM_ENGINE_COLLECT_NET_EVENTS, - &value); + &value + ); FwpmEngineClose(EngineHandle); diff --git a/2.x/trunk/plugins/FirewallMonitor/resource.h b/2.x/trunk/plugins/FirewallMonitor/resource.h index 3d33397d3..d5f8abf61 100644 --- a/2.x/trunk/plugins/FirewallMonitor/resource.h +++ b/2.x/trunk/plugins/FirewallMonitor/resource.h @@ -4,15 +4,71 @@ // #define IDR_MENU1 101 #define IDR_FW 101 +#define IDD_DIALOG1 102 +#define IDD_FIREWALL 102 +#define IDI_FIREWALLICON 103 +#define IDD_RULEGENERAL 104 +#define IDR_FIREWALLMENU 105 +#define IDI_ICONHOME 106 +#define IDI_HOMEICON 107 +#define IDI_ICONPUBLIC 108 +#define IDI_WFICON 109 +#define IDI_ICONWORK 110 +#define IDI_ICONINBOUND 111 +#define IDI_ICONMONITOR 112 +#define IDI_ICONOUTBOUND 113 +#define IDD_DIALOG2 114 +#define IDD_RULEADVANCED 114 +#define IDR_MENU2 115 +#define IDR_MENUGENERAL 115 +#define IDD_RULEUSERS 117 +#define IDD_DIALOG3 118 +#define IDD_RULESCOPE 118 +#define IDD_RULECOMPUTERS 119 +#define IDD_RULEEXECUTABLE 120 +#define IDD_RULEPORTS 121 +#define IDC_FIREWALL_LIST 1001 +#define IDC_TREE1 1002 +#define IDC_EDIT1 1003 +#define IDC_EDIT2 1004 +#define IDC_CHECK1 1005 +#define IDC_RADIO1 1006 +#define IDC_CHECK2 1006 +#define IDC_RADIO2 1007 +#define ID_CLOSE 1007 +#define IDC_RADIO3 1008 +#define IDC_CHECK3 1008 +#define IDC_RADIO4 1009 +#define IDC_RADIO5 1010 +#define IDC_COMBO1 1013 +#define IDC_COMBO2 1014 +#define IDC_LIST1 1014 +#define IDC_BUTTON1 1015 +#define IDC_COMBO3 1015 +#define IDC_BUTTON2 1016 +#define IDC_LIST2 1017 +#define IDC_BUTTON3 1018 +#define IDC_BUTTON4 1019 +#define IDC_SYSLINK1 1020 +#define IDC_BUTTON5 1021 +#define IDC_BUTTON6 1022 #define ID_EVENT_COPY 40001 +#define ID_PROPERTIES_EDIT 40002 +#define ID_PROPERTIES_DELETE 40003 +#define ID_PROPERTIES_PROPERTIES 40004 +#define ID_PROPERTIES_DISABLE 40005 +#define ID_PROPERTIES_CUT 40006 +#define ID_PROPERTIES_COPY 40007 +#define ID_PROPERTIES 40008 +#define ID_OPTIONS_EXIT 40009 // Next default values for new objects // #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS -#define _APS_NEXT_RESOURCE_VALUE 102 -#define _APS_NEXT_COMMAND_VALUE 40002 -#define _APS_NEXT_CONTROL_VALUE 1001 +#define _APS_NEXT_RESOURCE_VALUE 122 +#define _APS_NEXT_COMMAND_VALUE 40010 +#define _APS_NEXT_CONTROL_VALUE 1022 #define _APS_NEXT_SYMED_VALUE 101 #endif #endif diff --git a/2.x/trunk/plugins/FirewallMonitor/resources/firewall.ico b/2.x/trunk/plugins/FirewallMonitor/resources/firewall.ico new file mode 100644 index 0000000000000000000000000000000000000000..16a37666939490af06e0d20eba9fa53b9dd85964 GIT binary patch literal 25214 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

o55RV@SJ&<@9L*>9T$%PZ<=eb zC-Qe2*F6y(;1c6mtpxXqMM|5L;d}?U$_y?uo{6Fu{Ak|kyXFzN$t-!{9K`=YbZqi` zBsxm5hc7y+pbPwD+}~y}c+q(N4n$s$2i364^SsL0o<<$uKJ(U1UiV(=xW&@0;7&96 z*T0&#u@6GWY0(KTHE-VNT`f9_Ze}pJ)*K%ZB6;iYWTd=SZew2YB|o_2N;zW(@WWZ0 z)C=ylb5N4!)e9VW23MY?4iev}<4t+p)iD34d9k~iKU_H6X}FVcfzWdTPR_8NLijvB XdmPA-O+Vtu57arbWiP(06~g}yPY%yd literal 0 HcmV?d00001 diff --git a/2.x/trunk/plugins/FirewallMonitor/resources/home2.ico b/2.x/trunk/plugins/FirewallMonitor/resources/home2.ico new file mode 100644 index 0000000000000000000000000000000000000000..ee77bf6a8715e2f8dee9e2118bf861f0024c8f18 GIT binary patch literal 114011 zcmeFZ2{_c>-#7lAG4{&XN~uh~Qb|$1lCq22} z(1Pqcscd84_xYbueSgdSz3=;fJ=b&H*K|%Kg7yNQj9jB+}0UUC}MdB%o5M zh(TZZ13H~?hcfywNQ}$>U?RJ@{m0eSNIG9a#r(_2QIQ|QR&5h!wYD=L+ zyJwO9i9vRvkdHXK2M4=nxy$@TXLZY_WRtC|-N_V>pkVUvCfwYMDA^RU>e+MI?peX^ zF|Z%Yp~SdllgX5oCRiC%_v|cZ8~5y( z0J2wbuv;+05|T$`3dPy^98!$Qjv)tA0uY^*5=_aSC6kXFF$t!SgHa=h!JubTLT4$# zldO{N6f_Trob4XOpoh+q9R(<4H|KM~l%U`kM(0-KDSnQU?%8A;XLm|4ISUy@))?)E zlHDAADWh(xY>49K7K7R&uh{(I~;Qp`nzS2w537_x)K6J9Nry5oLCE7R^(r zhpdO}9;cPZ%ruL{f2Em-XvRlxWn6S*oI#&m2n~vk@Nhy5#)PsW8w?G^n~8|v$c3RbV!lPN&d=XCh)fP@B;*(R(g28eXwPXNX5f%Q~Tk_jv3fAv#=QCP7#-6@W07uG7w2t)?>vw_dm!0{*?@D+-Tqx1nDj3F2O2|#El2v7 z=KoTGFlYsa{)>|7Cst8^VHSWd1G{Dcgcv0ifD4t&sC6b(j-nES$}Uub@2^tvS1I(X zgBBYJ*c+CJV5A^UuDGP|55iRQ>rN@{729P6dSq~X$ z*_9bmWMCAkMnwFaF(yg`0#=!bOK!hr)QLAbhr$0fp$J{1*F{T32>fEBf{FK%wDezW z0Mt=d24?_6?r)cc|OXlC^P-ajQhXMu<{lG zhKgjnkPNcHggJvm@bi`&YV96GVR$y1doTs9@Lr7AffYp*R_-XkAR{`3 z66$;oxfWtDp(pQlj^UTcuV$P=T~7wPXCtp?ojEn@>P}wqM>et>-HnnJ5sji2RtlZr zebEta3_nA6!E?xs96>P~kwe!-%gRK+HMFiGGV(11-}~Jup|TzU(R&!3pv0hM87)0O<)RBioGU%;*dO<=@Yl zgzo=7kPxeI+?E!aA~5_DfDQwO6euj;sg*rjJlwvLY{} z93eZhhB|SPor6i7bT{|uvxpz+y#1P0u;YIBP^3W)VxK@oc6Jzg2BD#36d(mnpg=DS zm5T0JjCd(x{R9P7AuDV@qYBYs?2f1)A>aM4GDDQXr=qE&vZ9RE7OD_HsUpC8U--BE z1sg*gfcRlS zT^WuY*8>Lw6>u>=0v@L{!TYoxs2bbDNu$$n2+5fp_kcsjm%-?yGZ>z}2q!GPz|Ptd zoE+@H-rW}LFFJzPMNe>Zc7j07&2a0u5CrLpLbRzkP>lbCTV{J8#PR?{T1o@SN(F*W zsX(BOCS1E{1y?Vh1(KT+1o?Rahg1*<9=r-`c0B>!-A@50nhl$jZo)=l7>KG|hkeJc zf`Wb!h-t)tq}E*!*S-gm+EKuMGzB)PKL%1X14Q$eH1rg2nutUEL{?Mv{okq1Fb>SoIvTTBbo&#|4 zS{%4uy9b7(2Vml#1P0_ZFbhlpv!EAX9FhT=kuSkKJO@q(Cc#}!g)>1< z;oOa<;DYY$Z@mE5m}IaGeF?7QmvHWOHn_#S26vQw6SHA!JQe;-Z36S?60i&S08W%j zu#SBP7jHI!Gr0|{97! z8{8`V3jV3{5Les|neX1gld>jwSo_hartMct^Wdp-Az#1G62=B-B8><0rg*d z;luZ7Xy~7T4^zv~G_eG|{k^a}(+@q9OEA8Kuz7hU3SGg|p9t`O-}ODk-1Q2=!T&zx zdjtoWU-7@&-Tm0ztKh$rzy9Ruv)f|(JKCC>Y9pf_y8f3<6#0@8^Y%&a*(2T2R9;>l z=^phk()Hbc(!^_5ufX!|DH(}9(tD&EOG--013e=n;~u$Q`5OhYtLwdPT6as+)Luy` zWWT+tsydCpMRi?$>lF9uy?Z79 z>}sj4t&Q=FjEaoA6IYV>xXI1yF9q{2UrH*z)b*_>l_%gOkv!^8RqY*@$hf<4i6!yq zuQ7flKw&7ESNHe#)KpiLR#f!0mQ8Z+-YdDUsJ=4<*3sc|w z`}?Nwteo4in;UAI`)I|Xk?~FCiA~M5$zRG#x_`@?*Dox5FL=2H)(-VGP2)E|mt)~> zXlSmk&Iyf+jBDzyuWs(CE~)57QQk^&>RBjb#xrjKk)b|h|3K<2^vv$Hc(GgE^D{XGLc11L=l4t*?J3bWF* zvC-21sSz3ZTYh$7dTL^#XJTSvU|?`+VsND_EnB*&q^YT^d0|E4GAZ(}=evNU2dB{G zcN&aQC9UbkXswf>+HAET$uSS2AexF*H{wpo~c)yf=+RhdwJ*0rd zb&jeXRaaM5)mA_XDyF03g=J$4zcm(n%a)4Io_F|VT~9|(M_W}*O;uf8f!~7BB_o5( z$+FTP$fHpc3yZz)SHvBDE9mIxsI8b+P_Sf(qa^Th{&Vq<>BR*kKKAaXxcvn^TgG4+ z;@S-J3JR}(N~5d6iP6d8&tnUVOGv!X>YV*w))@+_s_LpL%F5|~i39lQXU>y=O@OH{t*xeDeJK0?Nt^`)aC(mH)o)|Dc9zXz(!Q!ZrPM>l73Y zAN~j9@9$C^9~|dl`swV~^#5Dy0Gh{j594_M-q_z!Kit2lr}cM?{|Va969mTj8YBH} z`Tx!*8S~PGwu_8%7VXp-B|4P(-+w;&YoChyrzihU`&0x9AVydRQsUb{US=N{OYy;} zKe^%b!3}U^7XeQ069G>pKJZaq4;D(>;P?>*FjJKW>tmAOsJ#!ob)~>j=Kx^0SfG8M z4TvhZ!1hBvaPY7Xm}(sc6AdFUIC%nWEe+w6nJbu|JqO0;UBS}Q1uQSP0!4)%t{&SA z2^x4v*5QGhdVfHa0RbXTibBlEt#HF!8sbmwgosmrg8$iLaO;vG_&Hd@HE$2tC>IC> zMKY{Am<2+_8^ECy3qq+$ zHz?=AHjSVA%{}_bf9*F_P6mOIjX&sFg@D@WI5>GB5{$i~!Qyfpn7hZoWp6TE_6-F+ z`(!XZ_Y^GLo`IF;Q^4$a4;aZ3VEywG+IxNg*j5jieRZ(m$a~;Zt%LPC&1lbAhW4E0 zu+#Vph@NkSJ!czXzsoS#T@8m*q0!)YH3}|MBEW-u7xev-!5}CdOhPlkBrFTeBJ#l@ zA zJTkt5clHmEZyJSTA6nr?P#}bd1jGICtB?|R8~o$5;A%oPT#v~H%ClE+^?oiqc=j5S zQ}ZDD#ajq^Rt?wQ)WHpu{gBO&+;#}dtcQradI-;LgP4LAc$8ZS{+Zw5YVKDE&i@YA z^7|m7up3B^C*WzuH+Y`&1Kt$$qJ1IKqqe~vY6mngjdf%LiH3x z)GR~nmwAY2rbArIGCX_#6%s3YAh~h`QYr_a;C&xFY8-@TO#|=%*?9N`^{-|ep0!Ru zBHD94sh@*~O>}tHJPWTI#^FuVB;>VD!mGwvNN-z&yiUaHqQjf-bSUa)>^VE3wyqA| zf9{1(ZQW2+PlJ*c8hmUYgtr}&(9!b)-hQ2iPv55CZPy%>(CARzGYNHl)6m>M4K=hS zXd9Y?_Y-vZfbyq#I&`8uFw_S_<1`o@?Lm9gdFY#7hMw7F7+OSUh|53E{r(9N{x{q{ zjJO4?Of_p&Fm4BGUXHI8MN=8OXA&pCT z>yENVh1V`zxpMVta{ez9o+%$Q5j!ROeI)1B9q$SYW6xi?dW}Mf%YW^_=z?cTPG-%} zbZa4vn}r!)R#=!|8%VzX=+UFNlGh;&e%jbrZ}jHUhGAwwfmP*&4GC_6kEn&Y8S%Nv zp$z_~g-xrmP}xD_2^VK=D6CF%_V9mQ-&~zlxU$#tY+aBD+s#zlG0eV(4Od>>_EFQ` z+ruxrt)^`y6!Yv`ARIrd(bi7ea3-y)t#v4Iy{xMBWmo^~&YyhRLTqX0#9%XRYO<@n z`PJP8os)ZIgw9;H4UAjqKW$-bY+$gxWhEi@(-V7*jTL2u&N{iR@GBN+1GIs@7RGi0 zv7hM^l~FR5UboSP!GHN+WO;-}LozfPVn07&Y^I`e=#adUqSO(@R-1d3$PgGA85w4< zjf~CBRaOM#<)x6sMa{YNdwt8}h>zHxjZ7`fRgl2pL-O)+`=sQNg(KbH@AWLtkH5OR zjM%5lk^Z5>h>zGmE|f361R#Qa>oE`wuqiM9f!xePd%Y#@G)j$xHtm8{pUh zNh#$OeI+GnrT@T2wr;Df<(E37q@<{H=%D1Ke>VQt{hxgNYxl2REA^kSPh0XbR^?;+ z^#0QLmzyW2RQ~;2>VM(?uT*}@-;}qgQe~ch0wsMD!LK|ZLOTnDA&v7l@j2L@;E zz&YDsID07y4w*jy9s5);amqs9DUtbZ$ZqU3`BH4!VcX^kUmiiQYWb(ZT=2+nS6oW7Ii={Z32l49U$-g z9gf&mz>&*UpyAyM9s!Zy790+)H{wC>=2I}fnGUD@(!eb$1>7QEfbI1xxEz`TR#BN? zACm?4aT#zrEEgJ=*Auxynl%QxJg*<@pxJM9_ zPz0e#ui@&0JP1h2hu}x~5So$)uhU<`_4`x^NqP$bsqf+H!*U3G^Z`hz<#6*UI{$ux z&b%`}!0lI+aQ9^e#N~blQaXxp-ZVgHel6V0u7`lECZOcCz|Fi?2+41SpaK;CqZ8yAa?1#5aeNfUi zfZ~rKDDNJI&adB~xvLkxd>euG?mp=3rJ*=w2tIxrg{tmx`1l=_y<<@MZ4#=!Pr;X- zF{t~2&e8kEp@lXD?E_QLGB^qCLsQU&bo=`Tp=)>=#Vn)HH98BU)AKMhzX-DnOaDL5 z)2}!MJ3sw*2=u?SK`{T7H|h5o*9!mf&3qa^o-gB-cSwl$<6kO|Z@wrfD;rtMh3KS^ zTM@T@sRWjlmDSXY@MHM0^1VZDrM)U;{MrkB=Z~n(&9wDQd`0=BuxGDIKYm;}iY0%Y zTblnmd5xQon(uw<)yIz?^J5wEflKj%>>Udm1^9}~NJ*t1KUbFCW6&u}t2nSdb2x6! zw*`KVt}i}+e7Ul2lNVR5iJqLieW$gxz~v83t;_eHt=J(qjLgkV4$;1StH1X{T}V<% z$2E#!CpoWUa&Bm7h*qEQL&NYWQFfmcV*xz&<6-94>B*s?roWuXX zE32al#QpN3yMK}qqkXpRtbvi4l9KGc{h|`T$%qko{DSEjqccPqDbasfZeca+mfgGe zOYM{T4@=!i8z zU;`XIAO#nR8$tV!9Ox-407k?DjE!(4Ft z2tPz=2(GMWF~@}=Tu&Tg^>;$JzdK;|$G{q53T!+^g{^v(u+^XnWDKdW+oo*=lNlIm z9aRYKFWw+*EQO=j7r;HT3%uidAml0ulA^Am{oDXTQGdX_(q6b<)&~#D`yu7y06h6L0BN85;6>FSWFlSkcbBvf~gLN&sWhTaLN>z#szzA0#?O+)M8G{TW-_%<>NJ!5mwKhD68rQb9E|H}V2 z1OG?Nz{)|W@V_Jgg8C6fwADGn!^5+i0l)@Ik_WiR{g3Q7@a(6 zD5t)KYmLN;yn(SO8%{}m8#mWp35LF*@!IXoN7VWFdH3!?bsl^H4w{(tuSn;`Aus;fCRa3HbON7aGjABpBDLqc-6WL7f!Fx$SSE}RBI zje>XkAhpl@m3ub!FWA5~L6h0oP zd*YOY3;lyr7`ytr5`3`pM&)mV}% zYC1trwOE|-)os|eGA*-55~zU}{xG?8JxqUYj3_KXTs9Iqcux zd(&3I$XL8Js{Y4j^W6I%q`s~FUhuH7;Xs=F{LSTW=|1i&PsDc#ccLhIq@;ezLL*jh zzKSMVu>AP&LyOsWcSL8r>A??VEY7D{xLx~EIL+Zjo8S3-RMYU}B|jnTIUhQIL;wAq z&+7vWo4kYrHn^FciX6^<`=P`08h^d_l^#v+C@-2#-Uk-B>4IRB3;9huX>&FVe;D26 zh3z%Tw_3O$e~zZnX%#$9e_vxU7q0o~Qu1ogMGo6PNK6+=7NhTXKBunce)+7;<63=< zO9&}`2BRQS{OXPQYxlH8d&85`?O8b=q#hQXrB6P$*tX(qC95~TUdj;SW0$jJ9awB` zEE`ey-sq}d*m{CLufe)-{*2(1zSR^)fy8CW^^^b#q|IGqgOTB#_FhBLo;LDBE6!SY zR?E_5jAl2W(K*3fZBw)?WfC@Hn3+v=u&-z>nwYrJrueEt;!2rr{7p6Zn7}sbxMr3K zbJeL0Iuh=Edu-DXIXCgaY^o!F-ej6B-6sx>cw_=M?fhb%b~AKwz)NuRTz!4NtnZcc zRErlccXL^slHZ*3)>D4|N4V38gt7E6} zmc8R$8;bs1|!<3%I>~iw^86Wsj zOor}H9hOZDTdxZ@Hua2Wd9ZYydssF!NS6I{px{(OR>gTMR(Gz`YF@i_nTq8JsnO@^ z1E#cYFWvhlhI>$+#@AiG&1ba#)}qYD7Tx|QW1Ww-#dSRDv1hv8lcMlu@L8I7tWVnW z&aG&c?X@i3(%c-{JD-;Ot2itzzYf^PnG zwBwAIZN~`CPq#_C$9fx%!*6#L7F?>D10w z)?D-t#)@OAwhNzJ8upZFHuUERO01EXGaZ*1%d=kkgkA>UX&fKdY;i96MWMB35Y4{j zW2ajXSK^b|hm+CoWN{ekt3f`DG_R7Q5Xo1$LB3U@2q)L&YkESlOz6eSdyS@FlS}ov z_Eq}SC&vYBC>r&h3N>j;dYhnkUH;&c2|by?R0*nK{@16$1`gRZ8`|c)ZKwJiQcG$Z zjmeMS#1~c`koO93@fcf6o362Mm`ZN-cJb}c)F=s-m+z$y%zU1gMb1WFWXI!8>DBeV z#O`k+ynJtVdwkCAnK?-EW4*U06%)GpzDsFUgqzHG=s<=B|dj}== zoG`YjA*(o;E=Vs=-PBniUtss5=cvQ7$MGtgi*4;9ty)@jg;QP@`VAvv#b%0cj%zLJ z&^FM-tKB??J!#8tHH~FVs-hiUZBy-F8U7demhy6fdL$g?`q9@+u zS>fpG)sgY3^7NsF$7{T2v+`Ox=N{JHbXXehow}I&;clmEvWxfZ1=`GH!gKoT#+Jl& z7vFqMYrA;(>=)Jo=it>mU97!4T^6~`EPYoV75CA;P3!ufU9K`Z)RZxAsP#SIH+{^fsJue^H;b z&cVEO^!>;cbIszi_gSXr?MD_vd@9rIx}+MLx_Vz^=%lq-f9w2Ut;gAJ6T#VGbAE0l zr=vh#duN!zFkVPH+3H#OIn4S#9*&j6f~}zlOVZOU3%ye9XWE}NsUm7^<*E+ z#^C+(u%7K^U8>B^CrH|3ei}@j%O5}Z-lZ2C6`ez_Qx#8a;~kCY!d~r3K$rIfU7u64 ztjbF2VP{gtxR!k=tRjV?OhmiHhj&S?&S@^JMO7gz4u2ZOD7L0^b1jdb`)E=$LB*F!T8ou|oP&QP6cyKWyE(UC2BGJ1w(NUbB{92MAbwkR2YGRvPGu3c}hkN@h*^5B> z#^EkXoSIYMpde-eT@TofyMSuNy$CWhA3a6}OwGXe~7kb8SExP<{ zEBoY`Nl&XvlQw>V``;vumcJfYv$l(sb1>j!`aF}1H(s4+C8-8NxY=X@mO{_R&%odB zxsT_jy;vMm1QtHiLuyfW_M%5Y^!&KyzUgGaT?VCL z52TNzZ6WC!Ex$6xQ@8th&j!mhX+ODEe0}yc!SB8<_AqX73s&wT*d|&n6S1U?TbTUh zOR@8P#)@jhsLfb{bd#!XXRY50tiBLcR{d*zo*6rywQpQ_3gc$Ht)S`z6cns9&N`z8CJj7g8gr?m=ZE(50bvhznR2qbs zs|_0S`ixt9FY4!ag;d=VE4-^nt71I1T6v5I2%pU zhn1K`9^&5k3rdR4#BJsx;j}TOm?PyiT#XwgQQ%~ziA3YIRq7m@uL~Z=yJ63M1^-#WLAIE1xgh`t~|T zd%eJEO!4Zz`I=4Pf`mio9zVFhZ(v*B@`cQaGhzkf16jRv=LUycXan<}w@I<9U}sjA z_ykkOhVeQF-}>>8ovBa7udFwk@#JXA2rn&rtK~kqZr@yxMeF27-<4r=@A2kagm~*4t2`Vace>@y8L)i zS?}{EXIjwE!Ap@o#X4W-dDel}Ju-A5#%4CDEKNaonT!4vlXq(7O5-DiOBtVimN%Hp zx1?r1c_ZSj;_u4EG0HWtXx?hNB`Qi*ujI#MOJokgQ+ z>s~y2lE(ByAdo7A$rZwWK?e?Dv$4G4%i>QkY?il(3VUYkFSEYEP3vPe@DQ1m*JE-3 ziKLLeq|cwhU1lTQ?ox{jtzJ01b&kwAnvE%eykSBAA}wN=^ZlKe9BdeNH(VekCO%m9 z{+4ceo2X^Tge?$Wj(ftVJkHCMC`#lYkt{>onxB{1HY>BZo%BlPxWsxO-;uWN;m6)V zg*>y25$_3Kj8Rc>Q9E*ul(9$?lgNcHfyT10z3X0-vbNHC)Z0y$$F^!Xb-u}}GV5G; z(4K18%!YosC}GzlRg|HU)^;xT!+TQNxJ|3>(3V!703YxBd3HW8V(of38&AI1Xf)0Z z>6cK(g@sRehAZKg*B^L9YjK7b1k0A!zAukf(JLaUd>Ehf5IyF}^S36@OApTS*O}Wk zhWowX#)}9_uC3TkiL@4h(aM#+qP2{ z4e@v$%55Uf=QK76+mF`Q?Oel~x&eFe5=nbw-Au;ztxbA9ioqmHw@OUWi7dlmSN`gw zF4#@Ccb!Y6TISg}vz8Cx#k^;gZ)O| z3PTS>d7aU!#qQc?=)K#%rM5_3f2f82at(H|X|OY+Ka^h6BTrW~iRfKpG+~!H7dM!h zGrnZZ)wih7YPvf%)suESR^nM9F-cOfarJ?Y@3tXS1wCqf@{Bd@O5p9ce|k4MbH8=Q zY~q(R6OmM@@e%8NbuessVAm_2u+q>}MI7m%q>=*NDyfJnZ`9x`cb*u2=&rdIeso*; z2d%JALTQoetB8c-XrfXuW*SkUig#Opn|jVapcF&lB(54?I!vs#Wm4nS-Fr+P&L6`1 zkt`CD_mMsjb^XoP0XGGo!jU9OdYf37J}#fale9N1F|j5<{_+kLwJ4$$U|wot@k+71 z7c)buIz2CaI+&wcX{WO#7`Hq^7#kUj$aH%;{(2}*tT6rA`NHESPZbY(pNemFJ?=UA z`0;$l)RIK*(>@mJW5v0hCflDCj13*M*PF|;*L&xMb3W=p4M~!4%SzRebnqj}Tg-fp zN>iL@?lgJtoM2;Da_h@f2z-{Dq+T#zgn(iaaYIpbD_mZ$rGo>UL!4IGY z*!f#xb+U2(FQEG^VIEhGo4gSmP|lW!b!5*!rN%kxCMwUiUTyswgJX$@LriwBk(fF( z|NV%H@65FKqbZ)>+D|Wg7kd^|frDjKQbPanX4nqYA`qm)l0{{T64LvEyy)md`m^ zRlJ&CKQD)qlu}j3Ix)}73J1yx2N?(R^EhZIq+!f~1s*crW9KFt-#6Ed`GcS?3ub^@G<q1KL)Em#+^+;FmDY?9&FU_a8I&uM68Lc@jhH1}mnv z)l})O3@cw{?9)|s1G`@8@qK?mI-xH}z-p`Gg^A2v9Qaj(pIpL;s_)ndewkJ6&gb=; z?*&U48!WzSTrLZrx<+r&vOM#c#n;?S%3)^CBR%cj+~kPXn!Mfxi%A3Zi`|D6UGZsG zmQJ*u>^a`L-O+)sPv&$#CNISFoA+?6L^bw`nlPR!oV5J0@q*blW}uxGzUQwiZsZNeZhYPI^ng`YG%r%|klG^W63# zprgft{9^*^2)cm7<>~F&&f~~W;32`uxFj}$-#)EpE;&{q(h(c@bA~JyB=*rPW-{db zCV8}$&d;AQ9ND^6b&bMMm124hwr@bjAr!;a_lE{!Ok+;ZS44|}7f%1z`*>rZLKV=zi}a0%M{7)yAVWnvySH(tD7>#XIiaz7G* z-@hV#Jc&v5!#sI2#uSr_yTla3PueMYyNQ&`R>86=DppcIQRvV+%T+#n$cjFkSJDSu zS2JAki7MQAZ1scPAOk$3H%N;LlO zxi8K$YpgvkF~3zv;nJBLPcHh{Vv|>qgCK`x1ur$;-F!fU%5)KKUgJ8kx%xGVo~s|i z-tR?K`Z`s1Dm0rv<`R}tKi?YMwnkD_$Hx>KLh{{rIYFF+^>tE_oWNb)it){r>cJTcne2|&Zl*Q5B6G(N?oGNmbYaX@8GDWI z{yKbs3v0DfrPEFH;{aPc);8+7Y{F3y${npG<1TuJ6+OW&Tzv6f@05J5TR62qn|qnL zupG|4Q$3BDaQ2QbDy-lK5ty}6KV`N3v#K1GA6@`ebm}ot2zk}o1Zll4GKg|E)h2PU zu^bU2hWn=D(noKzdP(BlNRx>n=dm*9i}zsVMDX0C8h`ON<{Zo?4z=s;n5RtSGfUr? z*{enV+$ik6bkPutr)odJ8e%Sy3GbA=&-1e^ULr~&5ZW@e&XDC6J9RZ-S08V{$xD)W z;XW~*KD94lPni#HKVE&Jzu5HvI*%ywpkG_Q7VkbnpK;hqo1h=kN^E$TWie6ths?$2 z5?xHoYa%;dZdsZ)3VrWlua)!Iz=Zx>V-YTfkQP3YIuhE(ne0OHRo9Xli)YBV{WeN# zvr&)aOat#-=EaTX2nT;OpdRwOce~5Z$Q|n+&r@f!*I7YJNyUvxc~uxO_r+(?sWMqY zqwRHnYmUJbQu6?3%nsqiy^cpVvc`yO4DTjAU&bY4pKziR1K~pgJF`y9UG(c_(q|2P zW7$G;Yrzq@_OO*cxge?jWy3S4wAC>CC)+#CLsm>FoQ~Kq7a=i?BCz=5Vm6h`T zkCJnEVS(~P?2{2#A~T+qh#`W4{K;NF+@Xhf^kXPprdj%s!G2{+yjvm@f544RRdGub zTi(Tg)Wy;d2`mfI^)@KdiIoSmIy^bLWNHS+lw4xt_O!a%wVsdIcKlUly;!pn!N0Z-qqrV3fY1ckZ}=XL@b4bC)Q4fJ+EW(h@h@08P8sSmrYGEC z9F{uk@OUeO{|;}p(z1`L(G@r5ZggN( zzp9JHSwu3$c1W2c&OCdmyIQx3YgUN<)yjJ`fzB=>^CIf8OUGlbhR8vOx#@3Fa@nCn zEw5UqN8~N@+=j;{lDb0OCc=O4*+S%DN!%Vr8v$GqHT{>?>nl-UPM zF6JlUOfhVWNmzDVrKnoUHI9=>V5yDe!<|~X#Hz-Q^%=mZaq4bS(d_l$JzBqg00i^81a*jGGkB1HAD?!*@g(lN`V zPj~z-5hO3OZs(rf`*r^=HVmMX7JK~zZFBDq?q0Ja{Ew*wx`ZsvVzko}`>bqD;RVZ7 z-8ex7r?TFY%NM0PGgT&fTAuJe9;z-bakcC$%N%*QR7miDb#zBVzMW31PB(Y!iG}m6 zC%cbljR$qD>Eg1SDKBL6695udQkVcQmA^|~jT8gSN~KKN7^iQRU8a5;`SG^__fk9Y z$ZBo0Ys9Y-5yY#(I?EU0i*n4fJ?B1$ZHRf1u;-2s1{+`;Vb%VGJy8+1N>1E7XrDW* z!d$(Tf|hVw#i`E+4FqA?D~1E>Dr-ixVYK_lU~ zdIK7YV)tS;=562J6n}|^!W@yyODTr*TM2j2Nx^254v~pE}WY&*Eo7SBlE}gmg1)p zO__JK&IN>Q-!AZgzGX9hae**#7$i-(uHw;~P@LX)F{BL_ju9h0AecfL+il;f@Y|Mb zxLa%Q?b@lR%I$;oD`lcEIVx10LI2S~KQAK?)^n-k#wPAXKhgEX)i4j9PoLMzaAdYF z@74<6OIU-VVv#tlK)%V%Ooz9xImC?Pp>9f4-f!@fv|C9%;3#K}*fC$gg(Wq?Zoot$`3k7DF^V(_$gLpBTS87JjV@H@-?1Q z>Db$BGww^9wOAjpXhRs$IbUPPTND1B**|Ki!dj_w+m<3K=QHTfv1PcG*f%PAzO76su(UZIx5UA|YW<&eEs_U z7tI_vE%M$)eb1>igS%Hxb_gY=e|<9M&$idD1?41N! zmGB=##=gr9#MJW_Z*xqD5@(@?PhJrgL^74DpeAaE3PQ@?0Clw#j4FbgY2OIYvAIsRT zSN%xy?)O_lv?9+R8!QfHjilFZt7_^^@cC-n`(8TJc45snCO*su%R0)JhGb`-h3t8a zfi|zwc0WAdDl7bR-_x6jY+$XvykA~m`0D``C3GN6(z%v6z;=83p^E#_VUxvd{nwba z3uCT+^fj?*Y>GHZvx_CG{Jn*_*evhz;fjehe(USjXp3z$WYHB+COSrm?;nPSgdD%x z?JUB0H9fo)zU3%@KX`a_r%>Ww2@1IiRbPXXDwRW3~W>ycK`cg;)j4{RZ=%$ zFE$Jo*d+Jeu%jlrvu?rqpRxuOrECn-k18&A`B+{hi!}DIvo_Yiq~eh}!_GE+`_p4R zNp;SrUfNPjDQhNGu8(GTJvSL1Y}lIBhE1*XEP8mFDU9@iEHSlnG}?@=?Au~gG@$5- zJwIYlm}wIpEmL}nt{ZCYV&8o0$1u&I`Az)^ag+WiAz%7nzti+Pn|1Oml4q^f+1~e< zU9F*D+nQzfSp+jIxX&uvW#?F+x9N~a>w~o&%3JYpGqURWY;f>ZwzY?NQm~6Y!|X=b zN*$~?iieAvt132W_n_^%N>2Uy?b0v9eEj$Cd`TpV3QBS|`n^!vfiv}+OY5}e z(B|cgIocAce_vctgt*bNftIy!_vwuFK;fzl2)rt;XM`5=@!Q%W&0X?3QrlKX+{x_EW&_6RGaa7(5PsI101-c}WBR%S^dN@$I?i zUFyBfoGl0#N@5%zX1#x*htRzH2i9ct|4lAurgzYz6#c?8)YqP0t|{o{|B;oMY@r~% z=lrb7q9<`xU-WKsYg@xKCz-CdIa-?*P4-<(-(vr?x%&N_-BDvLnjT$~)~ako3Z0f^ z@7henpE=qP`jiu8BqLcNM=C{;%8tt@AzL=T_xJa|$2}fyyx!0Kf~68wid!ppWwQ+L@*tA5{Rogz@`~!jThfC_Iy&xrefGO3WmH*`vt_ z&jze$zU42#bK;6@{HK5%-fv+{pbC7+y(tCh>yoF0QZ|qWWa+BFHiX-cum--NVP9kY z-S#)AmF%1P9=7N0U4DEW{UcH0@W?Lgw7g8(xvI%^x4i$`|E{`2 z`tpO{JT;fhKY3F(2e`0O9b|Bb@kRE%9NWGbWCyLNjIIxzxD)RHP9VK7YFaf99b6Mnr99x)m_)10i+9l|pYaKFqd{0Mj zSTb@d2Fq0jAu1Sg0KGpgC$Q?#L;_}r`--UkmL)sQ}N6LW%u{74Z#_nW}{DhU}LF~l&J4eO6Bt@3Iw0jn=AAO|ZHKco(dq*SW~nDsp^YV`V*UCPBJ zbzOjBPB54ptj}4|m@oMo^;>CfML~xE8`k`AV2D5=#uGF+d&mSKW4nvQLxvBdldmFW z?16jK7LCq;dNomY7Vca7x9pc^>?MRL8C|xF96Co=2^Obw>9+;w$X_4tcYgIOMw;Vn zrF31&_M1TPe_rXfok!>VwZNMS#+u`dfK$j{*sWqgf;oYkdg)`i>XzI3j=loLf*wdr zPNDQs$w{cfJB~yJ0@aizv;qpD4Uw(fi$h~Y%@-6=&atQ~Yy%T|ffN8GoMD88^JB?s z)V-`!RlVmenW)VU`V9{PgYpe7tMhP^q`G+f%Qmlyn(k!$PfqZ^fakJR&EFhIHaXfr z?v`EYqD0c zp;Pm>eB5WnJG5!lYkJG3+SB}gOw?w}KE54E?o(cy(Qbnk#1GY$(;fk~8v|*^X8X-) zou#QI=W}*?H0A`Wn>M)hmt){@m!oUzB*g?S&e8W2KEoZ1Lvz`2@Jej!tHJTRF(v5E_|U_Md_&!-2~f)6M0zED@4zVsASC=!c&^*XXl z+K+p{WBJBv@2uWKXO)q$5%;}YE;~MX60esY^q|iBemK8+Pe)_L>-$C}XE4BIv9kKw zkF-B?7q<%vcwS`k346auF|6jNdwOSl8&S@QGTxxLWa)QkKV7Y?`idDGxZ3Fb<0V+_ z?|R6^;Cb0|D^Je=+s#)=!~jYKVPvG>@-?UD81LQsG7~c45Fsv!-GxPRj18?__h=TP zhaf!G!w}$>+a;kWP2)jML6RTPNNB#F@#5F3@43)^YCuU^wLbFnmYOQan} zozQnx;C=^>p)yz`NSGvn>{Jy^m)~FWVQ8;3Kz1v!Px{A8l!A3Lxt2%#2^Yb0l8Vd> zei#CuFd`ADrbJ=(7{nAO6grthdSuESj-uoryx5BUb&1?*Mfw$g<`fdSK}z2>4vZ)t z1rR|}RNxR1iIjyB(D7^JpS4=d4d5uMQJXj`Mpl7wxHBMRn1Dh$00Ok1d<4PC#l^EZ zx5H{UIlF3%f8JYWsl`rPclgTmLWg1^j?7j>o*mR7BzDWLh^jfx^yILm*CR@HhV{bK zs?G;I_)_pRMv}Y9=I%ojj)I=PoP>0jJF@0*LVS{a{$9`byZM3hz|Z@MKfHrH!j4Pp zbg5uTU{YejzCe$W=JX|f*RW^0V_z9pWKD<1_yDi6?No_aBY^2?h+^#-QX{O1K9jpq zSF)kyidaU4aZxHM=>u~CY#D~;zNiBaP? z^SY}8n$Lf(&jvtj-ucHwaI@Y1f;{r-+rKS5e7v%)VM-^cs>B00a7U_aM6?bVR!a~d z82YAoA_VRLvlPrz{KV(TljQlX8h-q)cGK6FpHGxcIV)by!RI7~u6q6s`I2sW>!TOP zsV@A^@krYUW^>*C-;!I$Mb*pmZy%Iw4ZC|QAj)8EOMQ0&jck(6iCQW#tPc4{9V8k# z9%@W|eowpa1MO30WVMgKh63Y=VEp~XoN?L9F!d~MT1U-}kCMdtij;8L8j zVH@oZ`(q}lbm@LxFCu|(x4k=n7sU?A7A>~}^`BzO)O@p^e=f)+LxRrokVCNKp%>fFMdR%XV+#o#FIogX!xyMw^&;4=PUSN^-X!KR%))2yw|;j7XO zr&_xUIs?U}9&gd3zQ%vLm!4C&{jDNKt>}dKpl(3IUnl(u6_qsXe@Gz&dv`?J;6vwX z>3_7F+Mg=UCcm$9q3f`n4W2y6V1L_(ID#Ie3+HTl&($B1l_LsZ@6ics zF6zE{5D*ST70Pk+6hIUriz{2@m=FwT@s50cSau;G1dBZuJrPyZ3s2~;srhs+mL^uf z@$9^hOKz3roH4W{x6p4z5TL~#R;Jy*CNFc0ebUI1KYb68NOfj9vJXT@F7O%sx%R{R zR1wZX}6*l(TXvFE*?XF zaBfAmVQ*MiuUgCKESg+qjhj{Eb)5sAGa^~ksK?{@m96}>gl>hEt*-7@->d&FnVGP&R#t^` zFwokS{wza^7PN`lstgnDTfbO8v$c>qvz1$Q-R;dws<7p$aGFQdpk`H#n&j8+r^z&H zIAY>!IG}ya=hSdR=f9rF519B-`1k?v^G=CxjhR4i?R#McEN!$4S6q%gY-Ss6vu9o# zkA0;>gd88Q7IHf#=FIJ*D-x*%99K{bMbTuIuvOpkgsbfP5V|MM8kkYkJwMl(OHBC2 zVq56~!pz(NkvKz3{3Cg`+4GiS31G`ss1;P?u@Gb{Bw^oivuB~!zb%FIE79<8tk(qn z4Vfa$`NJ=!cF#cmBqp?8^J+8P+%Yhr_z?tS+PHWK{47XJC|ZJIO57tM!i$%a>ofC1 zU}5=*J?8{&@6wUs$MlIQpD)21qvpky>=5F9yrwq4OfS==;c?Wet48 zwKoR7GnmsO9vQzs2-2J0siY1tK}3Ug&ardSQPSN0# z9)ltzP|Sw$v+P;9vA>*w57&1xs-T@m*sa%rJBiAe-V^+|lJ{=v`XZE*3}Ck!#*omVu>nW8<34Kx!DL*M7 zElNK?)ZzLGJJxQP@||T&d7qJLA@~&g6}C8H?^xs?xl;WNRBCo|!z0(^?nl%*dZyVm z8>uD5ObX76TtI=wru1RpV@yHU5$Y>zih>$dlOX&*`A#yz!0^smw=`i-9FgvJjsI>K zb5*JifFk#D6UC@RU$1lPYmSkxFy;uY{nqr$?i|1=^!7J23kpw@Pfj*+D|S$NU7#%>oyin3w zulaXT)zZjy-tMInbt3?pzc`PPA>dei+A1y_C-C`c!OekD zn-kv7Q*9k5TPTp4#G&+*&pu&O4V+nkh`%c(fNiFH?mvQ+1J-)6|J^I5%(9*N*<2K< z47PJb=POtR3yM2%r?%@ywLQDw@Rf(3ap=$dMdiuNPVUSS1qqH^iwv(a;`h`+(2#9l z)%)8*k^(JFoV1qG)fo99MM!yX$V$MkBJ!E7sMN}`wXbcE6~G~o3Z#3ClqBY_oUJaH zJ#J%334)M7%uoRuc$RwSCRP{C66R+=|3dW#B^~INz}+11aUkw7Qd_7eOa?I!m-jQ* z<}5`B`|T+iTG28OhuIc#EzXYrqjRT7Z6ZolCHqq%t>|_#m)p`5d!5Pnd{t<1l;|`k z{tZLhE|P2utGP7Z{>z6=zJD_?BKr21r1APbGGiGL9%R$?-8WXPtfwCA0=8d6?zxhflQyp$+L6eu;-v?J-Dtc%FNqX;;n`#H0 z8RxV1vAhmEj%NRw#76{gpSkze2#{dkw53srX@D=LeCyfBt2a1W9-9Z}``TojJ*l~Y z6qEkkrm2ij;xodPXjq~tzkxHoZP*gEVm<6J2nP8w6J`bsJHUs%Xax5|E+h~isD1Nv z1u8F1;Lx^v55Nm6^Oq+><73Xx8tsI6y*l@mcp%ODZFnS$E>*)_nMKrtiZ+5X1T6V$ zGnCM-g@u`50OBeE4py5I2TnUyK>QQ|hQS$73Gjf3j5L2iDtG8T%>bkc7d^^xc+

    $hGb;xY6T-PS=TZEX1j0{nN^ED=LX2(Ze^Ymyk1e_ktR>z{m#)LF z;dUY#c3Ckgw2_X)i{8`>nd&n(>uLe_*&Vl^kxe%z@(#ZZT%JM^5gU3fcyB~jvMXL+pRMl^!KBFIj zbT+ZIT-Nh=VM^k>s?#pKS*+gt$1jUWCcFS0cQyB2k#Pc?QTE8c5=i;=k?;F%b1rZ=gwXj z{GC!hG4^U;bevB+%1*`Qz>B&Qb7u#&o+@RFS&16qD75F(y)Um0d*Si}cV)&yA>R;Qs;0g+gXwq3Us)&2jzI+IAnXaMX1TJ3iGt;( z_L00~;=yu@*zz;)t)(o3h<*UXa6^eC^85|;`n9Q&|;r~1(LdU>}-^+pY9ad%u=zw~-h@xyaHy%Owd zC(kqV??MRN5Z~75dG+XMMPS_EAoyRvnRp4tar%=2WoDj85ZI0i3`N~d;!))J$cl9& zo>P87hjW1L*vSC7^{)%tRZqVhQB2l9@)=7(+Ncumiyb(YgNrlFJxXu@4$*8Q!Smyk zOEhISmhcpmKFP~Gra;WjUt=o@MVIJrgG>O)F{CtFrNZ=!E`|LpOh7~~uH zFoY-uZcRe4z+VWPibo4k*|$s-2~*p@5MLUAI`9W6{_xswdxKJL3NElW!Vnh=T%d}F ze&;OJoZY+f`Pru(1;@3TjgH&*iX38lvSvSZRDPqJ>B{1)5rOd2Q;~&_VoZ!$7lD2 zz3*nQ1N5w)E4M1hZ!5d-MTy|LpKz~(=3{6pc26%*?=KNXkvr&(E1 zMujCDiVXe2+xAWt3Uv+9{GW_y2q`i+(Ba9kOp*nil53iFe($+|Pa=2i={s{<7e#qz zmT#&b3wUn4*z{oOC-+0=nmTNkc(Fml#{~5EJzuSPyqS3QHR4&pV87nd-v-qnWFJy<_xp6~ zYRmeBGD#6N{JYWj+sYf4Oc~3CM=^D8Txwm)t!F9DsRPw+KU*vXh%x&vb=z&0hw~rY z81mBb(0f>fgg}$DU5#cu&IIoKN11P)I5zj$4&oO#nS}!rWQsRnLh)uhpOqD>HT_Kh z7JxGVrin_Yb6h`!C&d(U&ud?B3ZT*$Lx@gv>k=IKp^eLt`0$lWk$bh z_zlH^(6;J(@qB-k+52_i1c=BAkcr!GzZ}czb%PzhHYE4 zzhHzl$`FTyuuI5n&2O`HF6zAMkB&hny`Gu=+w#dNK88LZFrT>Ct8#v$GEq>zZv1@{ z{+4d$ztP={;|kqyr7=)q%aDYB5psIOpnUBf$02F1?H!Mk`{@-)UIBxJwHkWF`es(f zyO99NT8(ozwUu==KZwW$!?wX-oj?MWmG<26)r<<6E#mf9MRe(1j^qlC$33_!Y}Np6 zpbT_{$x}FFW5PLO=!^muJ4u3{wUM8dpHuRNqIn^`N(hSF(-|BFEA;&^=~E*NTiR${%a$jeC{02`e!ONu6MD1el=#ipcv1&xUInR z$K%bO-!&)pV|Hsw^wW1If88toIkG0FiJ(*r6f*LZHx@32KU$CE+31*lrEy9L$x={G zM9yDMXUhj;?%o#0wa&6zNW5NWvZktiABFOaW&_P9Z6E$s5n3#5`a2NaVNPLPXH8>4 z4j&LHQbFg1=AS<1SE4`Mu0Gg*_*LXvSIK}Mt4cca_TdZsp2IKidH-nm)E=C+ zWwNd`^K(z6K4e?R#uC_u}_kd%7!FH#%7NZZ)a-?T{~Q^`d#Ff&((nVnjpDyns3DMzr)mt zb}o~5`#>sfLs5eAp7TRH>m=pf&C1GhA^0%Ld-Kaini$M@OiZ9%$PN1s=yMc; z!F;x(_+ewRA%jqfAVE}EcIzR(0A7uZ0g4DPyn(#a3avWbA40r~`$9(kFQ$0n#sMFo zlrf6BI7xt~icj#ln_XZ$YGGLm!Z^q_h5)`XF2Z0D##pqLHjm8YZ*@br?Sm4?MNr=MoKBCmJScf6Yn zUUoeApoU%63(gV_TX&isuDU7ukGO7p0bisaKB{@?^7m0xPnnHj&41&IN|U%aJqdT- z75lUD|GH~B*LzS!=f;g+&9RgGil-1;gE9~mx%#F3JmT98zw%AJu9Pda2DoYZ?@P+M_pdf58oW%wdMh7}a!W!RG!9%+U1DSIG$ zf1lX#s3DM&`aM-OqHWuZY^cpfFbct7ZlefxRw*oVpPZsqv89H<98p&9|Dd3|mXGc% zKT9{eg*XMZVO7<_Q%jpKylZ+uAp4}e zrtve#2F(-?1lnRCLtt;ADkbV6yq$8ahPK;)ee?gW>r-PVu5XOpy8esfe!c+jvpCjo?DDdDpw9TgmY7hpS@d%9FkOA ze&Mp|eNd|Ald!A+u!RI40v59Cd35P!3SOj`nD81<0G+}!DRxAmI;4c$Itg%vQM(89 zxDMQ7C!^BTog6z`u_9L)rcJwN8?A!8v4L<@NxoEb=~!hw7adv1`@aY!F^nr-K3DuD z|Ng_V_o6$nl*O;|DLOv%=YmCvat-nS@OdRH!`et4N0?;giH( zVq)h>BPLvwa7S5-Y9`5(_}Ro?*mtmKz&epFPkI4u3lqt*^pyfB`Y}uRkld5l;6&YN z+6wl79CPJ~Gpc(BVk6Qu1Hf7bH-6Kban1lm+72|cPY}Ez%@|1B6uIGc&Ek1O&DQaB zN@&*8njppbq4)HrXpeQz-ognj>3Nt&lo&*987@lq)py#$?TWF1JHhQzrU9GTvo~l8 zS~<-R9mAvtl-i|F{FS`)Uc0k;Ki>v+=Dd`wfUnHjjhKf=%ZF15tylTq7IiF5Hcmzi zCl3e9B%aS1k2n|AvicU8w-k`R!Cx_XX1YNT8*B6sFl+2tiD@_OZ%LCL_>Xi#Ednl9 zpc_5&>U);%-)zkW2Gdv7?hM{xSHJ39Z(BHVDKAsn^VGtc*faX4OE1K^S;i2!CM9ak z!!~D6BW4#4vn|Y{V3{0Gi{omx7NronD!~J&Kebc~S{&OdWF87dnZWjZKI%92+x~^^ zV@NMWi@j`f`XY@h)>V|qq$D7^q~X4*2$^`;hFcB*En(wY5%|Y1M(+A5%emO9#M7ci zbHvV47?|)cimfy3Tt98t1x@2;9oHPNwe$nx<67He;19kl2n!sfa}g!m`ZTeu_n!BK zgs!Pt)RoPV2r&lvyGAGIo%n{5^X!`mllv3Jk(rd^-jv70v7ea(>$6)~B*wuvI_Hn% z1!VZEEp1I8)0=L5-rG|hq?5Hp9U`tDNgp*{th84<>lSlgs4@jyX$YM&I6f_Ra-Jl? zxuv`5aLj%{El9Ol^2Uo&pJt8ouhf~30^0GuD2|n@obQzfpAW$$U2_u?8Lc)lrZidg zUzwnji3z9_ZZ7p@^L#qbh;Z85qKIeSgC&vGzII^`dgc%hhHD;uno<#%9Bv(xz94Nh zMEYjCy44x#*VVHpDv`=^Lq;k9PnQ4Vff-E5fBe1zSarY&{Lx+lgd!Rg6K>E&4uZMr z@IwV+1oGI5#X_(l5kxFyYyB^|h^5>Abdo`H#r#TBV^OI324|yF@RxmvCybV{wGxyK ze6j}j+(a`H9Al7b;rf<>Erv+1%;>_N5SJo_boPu|^6Zgi7bJ<Iegey={2vPkip%b z1j^&N9Ho&EgMVY&5m?!u!?dFPu*#!bKI!wlVwMn}fJm0k$+^RIc=Lm)&T8TrZnZX9 zDB|VGsJ(V^LhoPSsrEC~c<^O6;z3V+=?Mp=0MneK+Amx#T1CkFnBG5n{Xdy5t5Alu zJZ>#8_wWXOZGwyZ6d7R($gz1gtzQ~g;!Sa0>IE~=?NR1CwTf3R`bEd|pO*Mvz)+FL z*+sWr;|%?n|GscvY$KQ=oEifwNXoQQx>W&36}93%-6k)?q~s&*l&HmB$uTC#m-zR3 z5R(y%d-uHM09Qp~!Zo#%y~GEJZNH^8=nBVYtrQh&C?W=OpV2%H9=^513KE(FIF8{h zK4YAsF~I@L*S<-AkMKnhLAF7*=c~(X7k;=HB$P>MpGPG~Bh%OB6Fu+5)$X3L{eFmh_iH-4;n8!csdH<`R#(%u?x@(m zNLhB`+tGZ6&&dfWO&c)?pJ(2h-prM&QT@qyZQZ?@%1-@0(scC4$yvv#V~6hb{7^F> zPTUvyeF5|^5C!4JuFaNY5MgVFr7VytCAy}Qv+Xix6H*AuN;xFp#yS`Wt1thgxM&tX zyk?hgzlL#Za=67D@aNGHNEOqzy*st9j4jHs|t@|H(9r`A4PL3?n(b{ zhU>Uo4frs6&RE3Y_(DU<_r#2zjZ@;YP$0AgJs0;7k|BzHN5O?r)p*ZSX=z>>ruUhN zhJGQMLEzW~UrK?kwTihPqzt$C8d9r+_IRgPWk}{)d3+c$N%-#3R_%Xs)P^ z|3_z)R&0EcpIMLk5aAT!0rfc@=0Z=s5@K9NAa|Nh3lfTZuCCXr@~c8i`nzuq$wiflmi)okB&D*YP3`{}S{AI0Jbs*_7}bN|KnH$We8R;djR;+1P%&!$ zPROGl%_rlCo49lwON$UpEGA?wr?$uZFIkxaVU_9I2r4c<1nl5(w5E3eTog`$v$e>h zXjXX+5y>P$L>0OOU4UhH<>k9ush1)FC8IhRp%=W4$T{)lzG{(`DgDcZ|5s@NlxDo` z1uX>JnK%PF$B}?JUYftAFvAvYhektUio%-NCrtGuSUyHry6uIt3UY1O1@$RBQG%jN zU*rtiVoJ_+;H?)3Zw>R2ZyrToaC5|Npaih{5dxQ@h>0C(u71RQg)zUZ&b@y*x|AUy z+`eFyi|igexV6qvj&nbh`MqpoD?-%Mp(s4tU0v>XhmVuHnv#2| zv7|iY@tb^m9?#Zb{zF!Ov%SuFm_Wb^h3+FfVdu(p#YFk}S)Y;l&m3(Fki-&HC~7c* zZKl|G$xD`{r+)3GN4qdV|~&Z*(oy-$T-jo@e&&6~nvnN3!gi2;alhy}p< z@hpi_$$Ss>*(iDlyC*ML?@8ejlR5)@h=LJ4+FFq9V}wNf5pWB?5qyxFpF074(*!0~ zfCH=;Td==IFJn#KYf=vIaPj(3hzww-bsfBr@0hJ9ben0sbots#`_5svh(*0uexqS> zr91W+^v7GN*FWrb@ROt7{$~|A{PfcFaca2oYPn-p!5VxwbOc8A$+ZB9g$tyzsl0<( ziu!e%t+3P)(U&h6O*_;3=i!o&c`AqmTf2`6GQs@Bd}fFhputWSHoT#MejK9(2u@33 z*{6|Z>-~ELadKaZF-A5Mxx0Lf!$9a(80Iu{ZKM2`c&WuglHm))lAYp##>*#;@9FyS z8jyEn7%WnfJpXP6hVS8U$J$LN5}ykKSc>e z^(gm=en+*+wJiQ6K_B55vH(x3Fa@Q#pLU1JNHpAkz$fKLtRmi>)~4$e#ZKj-h0ZtB zOz6k}ONO#gnWpAWjOVkzsXGhdByUF!*)#;Xo>y_Gc^trNl4A z{B7s}&_{lwHxB!OIaduoVq+^VIPSLUGg@EMTVZU8VN!Wu=!xy{tHdBb@M!v%1eAuU zuY6wZiZ{QNw7uqH26@H@z4G_J`Rz&D>qv>0BxF>c?T(V{#^oXTJ51k6NDjIoY_aCNT$Sy#J)#|_@ zHU6Sa+~4d!gBSVF6W61=q`PAYG)iA==Q$h^=b06upP{*S1V_WuS96-f5)E`5cYGUW zbXKk%e(9bB-@!zhD>}(~a$?%)yD5J1S20e2#=@4KE}PZ!b}aR(uA1DgKGx4r^T%js zAtr4=YuBBq%A*M5P)*qUN@$+rg)j0L1ugMUvDkz7W_GI+XtjQ$q&^;fFbog?YVLwXXvwx52}94hd~3<&hOHsh5X`F}Hx zn(uCV-Mgyr-80I6&O&G5i^s|jjb7)xD;v&dUAzl|#HpL)cI zz(mn_+(2_AFg4(Sl|`4u+*@+&4v6(_@qe-A(wcrljbO8;9%;YzI>X^VCv0r)$in>n zmsg6r=6~_y0?RIZFy3%W2QGFI8Id!_g|6vp>4RwkwY%-3tXfI}otP1mC&i$`Gp8v@ z(WCE3qo51~F$k1Nen+`}X;?J_o}ETeoS8+2JcK9mG!S8Ar`6F)9EiIrbiY{4@cuxw zxU{|m`>R%ms^Pn&t0CGHAV+DwQ}srfAka@QlEFHFUPshVvm59iOt!8{wX8bqrCQ?%*#7|U1|;CKKRqDpTjC2eE~({w66-1j?t;(7B|xdj_=X#(P)J1)=^ zm!PqQpXUVW-0UEDBr#C!V@wfmw#7as;ym%U7zQd(RHtNE->0Wa060z4|L!sDuBo<(Sf)Zx5S#+jKu}GVkN8TDDp!A!dvf_3rW7dU<(fe?g+*wqy1UYns!|1IKu56@w5hczNmD&zn|)x z_yruh3nuPd94T|I^e)AG7M##XUkZ7)>Ju@Nf|x$(CY_vWM`WBooe&qu4z7P7r@b=^QhkW~aqD=pY#^l$_bLe>+a< z?yLWJd+waO0ue(c$#dU+AFRR8Q2k<4k&>;s^=ejc<%^a=NDAu4QiF{`$!o-6|B9VX*`|PO6c(h2X7Lv%1 z+cW>C*$oUoWdqUsy&cbpjU(ARAnbU=83uCMO3gTd4BcgP>`6l{a2ZR19S=v?EaKtk zm1}Aq!L&AazTZ#~Fdp?WPUQU734cw~wTnGrE=<==x81+H`&>Y5q~Ws_#!f@~PlVI9 zNBS1Z|97>$nsa@Fg5F#Az4@!u759mRspb{F0O%e< z(X;cqD-&KV+7nkuAoG=Lp2XOS!kwWhN>U7wQ3o$)P>%XmQ&PED$9>Ue{}Z=bq@Y4T z3(CagL0GI2Aczw&LMvkz)!r%zqUXIt|8;+QUBF7^TRma&nD>~IA~15wnpJRA6E3>R zO_C{2WRAQKy6Tz=gf>tAI%0Zv32J`1 zCiZ!EApPA=ouKi2BY0|WLVyy!O<-%yGDqqeuOYeN_i9lOy%S-FL3&{&4)WqTX6T-VPx?sxx?tNPk07KZNV@?ao6C!Y9Z zQx~hKHJ?rYT!0&2#^xsr!HRx95R|W}2*;%Hk7D-_K;QpZ2~qb&Bob4s&$F$Akfs+~ z5BmI90tiQUaFgLm+07Fsd$(#q3&icVU6w^mULE|zB8K6L=M^jo@?unbU_LC41>kYZ z`Ie6Nz^5o1@ir-le_nRIGem-1U$Ql!*1U`>H`??qe-DhyC_ZccxBz_Qm>LJ$LWjyS;1cZIN(IKt~9g(Zh_EzB+2}-M-Ip=2K}`3SayTRx>^wBUn$xrC5C$ zx)J-)@S9`1DX&+@`N)edNdjVamXuk_BrhA~SlS5rV#2Rebd?g|J$oTw6Q?ChE7it7 zeEuV@&z46ZTct~o8~ZgnTfEIwhKFz|WzAKxQJzBP@EY0ee35G-@<+!k_!z;nK^5S4 z9twYYq@xp z%hiXa1rEbZMEW#ZS%;Dc*P7r8IFcgIN}U2ji_pXreg&}vE}AoQPL@y)U2tZ)M0H0m z?nYcGydMkbJ$nLJWWc3)t{6bCM{jL|)RxtEP^=hQx13b9R269nnqQA8`w>+!HyG8w zpEdb)SLZ?M%)LW@iWC2iJR3RC8*{l>FRE!GY~}Q3`PBf8NpQ05Q`NKHb)!Y;qw^Ji zM{=u&`@ecyUtF2RdvGc@1l|YiJ~zs-{Lpz@H@)uicek-_DdJmhEi88kK3nz}0W+c7 zC89BWle~An`D1%1W*(i$+qVCb_K0A_Y)3Re4#=p$D$9N>5DM_RCv| z&5;T6yvEQiPrIs$)ZL!yyS1HR7+;JQCYFjT>2muiH>0Cy1aGADOux_%spqGCm6s+B$t~%VK6ZbM--vN5EyLKLIeF6bch>jW6BjAfzfe4Y|6g8=~|QPDbsH{rT)&#WP&$_4*TYmIdILOu=_q>=EzZc36% zENF1m&^gW=1Mkb7fXNIgR4+ROM%77z1PQo7b;9HdA^p387#7C@j4lw=>8qG4>6&Ix zpyT%S0V^Urh3QUwB(irP>J7GnFvG15YXXYr2zSs5>GW$lrsDpO45EhrP1K(}7&`jS zDP(r%&F*K@{Nw1LhS1i{)2AdRY6lPfRNcBxn*N?w)B8krzxe_few!M()%E;YR^PnH zlai>$UavIBUgD*bd|gE6gvt{$e3aN|^FiAv{etuL3lzvqyX$R@bK3P1J^S;9O=4?l z6Tgmf5}R|(2{>AS^?UsT=|9dZJe?6R%mG?Vj&VjdSLy#<`8&oLR(SC*GRjhWFZdFn ziv%x1^PU7SxifYtdj?W+JBOcB7%B_vtDBtP_)zU;x&N*G{lOIdgAwgZ;-{X%d}X)H z+FiP**heX9z3Q*xCd~x;$VcGeF*dm>;Cl1t=>y2C6BW_~mPcp(rY5V>nuQEo~)- z#L0ux#PE{Yfxh<%$$NbfVqz_6JHQ!+xj(KAoo@@6B>J8a8sEfu*hnUD(SgVJflFMj z5Y319Ka`YkUBERkdla(32*62(4T~PLdTz4-gt01JpK<%OZ22#s(5?0%mVUCiYoFM= zc)5SOm=XQ_E$9gOq@cyndBC$XEMiH|zhd(NKC)-ythkKp1rFd(tGV$vDsQ6bnpGtPb=A+P8I4eGrA$m@`0bbvu#ab z^NV-QFD<8~8gG}}_^;<{qv+n3banb6`nfsD(RyRzNw=jBA7gue9vx}FEEp5af8^3R z?m0ODBl&$~NXH)7xdv~c@3ZGFgh~UJpX78VHT`aT>hwsG<#sqP%J`NuwhDe zU+;PpS+z+jMwW$Q9?!5nM(k(!t_e9878x+vwodC4dvse)8u9QL!o$rpS09n{J1}hAH5f0vWz5@gAr<%*(-RJq$tuHRs=7|QM?3^%RA3^a#WP=-OaKk1Aoo@i z_S46iScS&$O1WogZ8ajPn1sj3D+1BL<2qP2b&R+!DF9lFndA}b;aG^6EJP(UtR*KA z|3}kV_%-!DZhsr2YjnftP6cTO(%oGmh%|z9ZAc^1DF_mRgml+HkWxXUBqt%=HTv1- z`M!RC!_L`#pDW&%GB0)Ua}gm5E^3(O#2W+=o(k~*0W=R<{p#<$XdJP!d4W^z*YL;> zR7c(55`$-QlnO}fHtTEdPj}?bxKTJf}Cv$cv4CmQDX9`)To;dnC@h&;5%msH@>R^r8%=m7sEbiJr6)_r? z>|wXHi~boMESNSyRt)Dz`RXih$)RAW{1Iwlo(m;_je=jK{CyP)rPu<_VN6<-9nO~a zYC92{xqGwot6yjYnFgSXB`EBw*__w0hh=3GiMw@tmrbDvCA3j!QQ=5g6iNrD$;{UM zdDOe;3m`Wa@%lI|Y%|5Ba3`~1dL7P-81m2xve=}lrP}g3evMHW%&uPlefg;<0Edsd z&ioNRjf+2k;>}A)Kk*R;Hf4jvtelgQC%wQk4o& zdmD_NM}|M()K7_LKm!1Z@WWw6hb$PocAAax37+U9OrK1ZPybi2#nn$?-mvn)BYo-#zg_W3%jJ&J10Bcg<!snGG~iMOIr5Gzma zths3K2f4p;KOYH7n96j`q!wmgG0%Q&jtaT81c^r7JW_anba&kR{JryBLcK?~rT21? zszgr+)>zI*{Ndvi19kWx!t(^Gy7*+9njBa)ID-jFOIry9%6-(z&tPh@MJTbPZNxkZz3{I9`^XOgGBl;-%2rqd>C`t zGJ2cxEhRiO0z(T@lvNF_fa|40zQ7`~?_BRw*|u`lxDa;Jft74~pK<}+lvgZ8C#Y~Q zxh<@xVneaJ(wPWtG7@p1+_HY3zBOmg93G`HU=U`zt+xH@UQO6P=dU{vyMLjfU87~xp)7#?|!&&MxdRP1)yzU!r@C4!LV2GpL z)iq)1c|KkW>KV3ATrD9bWH36}3>~&fX+paD-4@nkZf};5wACK>_lR2E{!9A6UqLo3 zQ*H8Ci9~^xQW=A`1=cjU`Ona%f%q6d)#*2z@fti45w?A8c*6iWAR5GxkhH zsy(a;4u%RN0!{6QK>)P6?gw z$01Jy!b6TrKhmVdlD0Pmo}iky1&2+{F&|AVs)qCyRC)@e%M^<}LQVx{QuFCXZs`K4Q9gbD1aeTa?it4P3Xh(J# zmo^!zwUc!IOBA4%dd9f&B@9=EXsAU)+`Z6Et@Q_u!FQhqR9<=v_2?@4;t$TNj}p4^ zk980Kg=Cb>1{B=C{0I;f|5)g!tMZiW*;aG9>d`Lnbs$qGRtkXdGYj6g5oiSo<*3s- z#8w8ukv5zbIj}5Pw*4Ru_|iL9VHQN^yV+ zCxwwk(;#t8``lHqyofRq_m&54@)kdF4RDHm(mv0PxkO|5d~m=pL0vMEXf)D%Kw_2AlPZiJjz77D;JG*fJpH&WIs+r4;(m515z!A9yQ&8BVzvBO+^D5BL_7WJ;z_ zK&<3W$;K&So%q^*PA|n{FxG%9jtwqA$!%|ogeHW8{R!S|k!@9-%3I2T?++dmYKST` z#47=Q&8$8n1^&a0u>f|b+@3sW;QN0Pf?JJ(rIfz^l^wT2wpfV3arq50F5b(8^A8v zi)INn!|k+ja7}dcHRzA!AlSX>@YkL!S#~Z@QU|u>5=-%nOB;QAYSS$t{eOSZu|*MK zyn|GvzxUna8|8zase*>|ZH&Q%cR1{6Ih!kex_#xD{W9z(uT_;_S@K~Od#9!JANjt6 zAQ4W#q|_p6LVA3D?t;ZZK*{)*^lAK9nG#;Pteg`g{5ZM7l3mZkYA1+F24Av&kYfMp z+I>;|Bm7verNp5W3vsr>ryxkF*wUq@=^^vl{)>b_xSy%U{}pI z*`qsZGK6Yi5vz1K4@q8e|HpV?TQ4JHF(Tjuw}=Wtjtg&%;CmTe98(l6M`hZx3sO8^ zEIQg%6-D%|BY5@KGiFj4c3oK;tYF~AJecW^#>=*ZH$q-iG2l7Fx3sV+UfOnGx3T<^ z(GB>*^f3!4?i!2ZRE6u;BCG-QOCA)@fdoI(e6vk_H29xc*!I{wYpDv0708G63YYSi znT3~xTkZ{6)$tyMGvSNg<{9GN?(_MfL;lkOOHSYW%|3@e^}{tVtt?UE;v`#>S61s9GGXX=(?Dw`M0|{Hk|d7BGq}_>=C3 z7w0SApEYif?4`)m)y$-~H1~I7j%@bxX~`z#@CeK(2Q>tQVXDJ$PM!YJBydox|1+Y0 zOP*7b1BzA@Ab2yU>t2}<_i2E?l4L4|%{&bFK}W^;7m@PUWDFPpPOMV?{4ST4a-8_= z#C{b(L@=GAzY0jtxOBEfnioIpaYDuH!!dP}XOB`vmpMu!S@}TCbIMWC{789FnA1i` zcVOc=&CyMxnf;t`h6TtGXEg)LfwGAljYGg8Ix@}2OkyIkCh&ncrxDFGK+uF zHp~?O%2v+TRbR8?M0u7y7m+5z8)p6yLtA_*+*dgpPFke09Lp&(I_hK@{P6Zb@#01f z)LI2v#qPqLv#2)&?6C;P9}p`eFOPc!Y9d;N??SWE5j_jpJ>2piR%#C+BJ2(mVW1@o zC$_~ObB&Uq2IDBny?|w8O)S7=0`8##qk33MkICeHd&7#d0X?QcYrSc)J<&n8E zG|GCv2FE3g(1zC>Wd{lADXwW@IEfe9%W31_w^|T>rMOEz){5DeT+U`&S*tl zpq`>JlJ*CoG7yCmRWoP+9O;OWL8`Lxy7LMljhMfqk5YrjlSdheD33zq1Kym6|K(yR z5?%YK5tjiqLDMqe}{x&CpYiaLzU?}5y5G5*6Ak2N_QQr^0gAHFe^$5$# zu6@twvjPr&W6+In@c>oY`G`ynqWhlF z+#tJA;JLRgRoK1P5V5}LTJ`YXMcYBrQt0g!-d1&bf(i^A`(*3~gqLwizz|}=Xsxhh zL-Jw!ug)XC{J)-fp14?sPy#zcY6v#RYwg114A}D|>MEx@tKQu~D+G9J*>NpZ^?EG| z+)@H|Rp8|GE__qiWdDK@-~>&fAcS(Z>4Q^`C;dPVf)aLM0RH#DZ5%DLHxsWl!tZ_CJq_I&;~!@)W4+M5!PBEbt^QoiUo#tClex(5Cyh7za(=2h7?P{ z#u-OITiF9tFX|PLt*WgK&7pv_1AoO79}ra7VxY#4!>$afu6%^5PUaUbJX3ux6#q2L zbUCmx%$Ls5uw-}zhJDp!xvg|bx>g9?&!vtit9&rqxShS*_?kzF-VnhCD^gpho# zaop!aVeaos>(@n059VfwZj>ViaA)13F1hYft5P;l9UA_|iY-Pm=do4lx4as=jg`r` zj+=la3hWu$F=B6u>egOU0mNl5+r}CiL7^I{a(M%gS)r+xRY;7E-sC}DlOw;TMGuYM z>;i7X64}S9O6+Kcna*ygRaUy~)E=yrL4SR7Ybn&%`{gZOt2^{^bPcB$ZAeW&IU+J3 zEB6N-NaZH(;h>zE7G%YJo=E8a%KLmucTdmxD$pqATe;2|4x45SouEXMoA2QQ9tUOx zMBXpbpj9eG>jTlWaQ12WxH95?M!gi2CM)k<4%}hELk=X+^;?>n1Iw$cBMcZ8I;Lod`KPa^J2xtCE7qzqAKEt*9K|YC zQdy*c0`xm~N6Uh0;QS1#9{#(NhCp)}N3pbv0f{@{Zt_)B+}~lYyT6`!o@#yrql%Q) zYjVA6S;y-axw?>Y{~tbt!OSa?wq!-m0iBsN&)N);Du5$U`5U`Z)*_XeLMjgVqCwXo zd)#4A8fz+!Di|_IZ~crzh?~M# zP1`bG>!L9IcJt_b2Yi`#~MuKs(wFYG&ZGb(X7&M+i8sbnqzheEkD9cngnM!8N&v8-MHnl@CNcx}$=G?6$#~`h!mc(j z2-y2pT+qzWv^S&qi}j?mvG6k+w{8z!53LAhfd_@=LzavIG>KEVWU&iyW&58sZGz%b z2Ojb+!Z7H-xwcX7jxmJ*8k~eFNlmUahESs;8Sxql=9tNl1{TuPQAhDpSi8gDw!g4J zi73Cl!d})L-j}SmF$nk^?;G;3eNn#Fudn7Y0871Z73+3xC;*@34UNwc6`ZKZUOPQ6_om8iX|pHJ49SK#J^%jj>q zn1SFcYajyj5Avhmc5UBYR3>=8(~KJ-_#R}E3$!?icBhRDfpz!76tu$S3G8G3qg~KJ zM<-I~Fh|)AtQ47Gi1Bm&$iEeJ$YYYUJ%Ar_(jM~2GAqR`!JFC?08}Dbql$%86}~ns zpDX}RrwDYiQ4kMS2_?fq3*ZRBb$yHxH}W3gLlN^!Q=slQr@AJD3iD^|0E8gz5i;%^ zN-iSx06r`OkU+HSTU^9t! zx<5-FD{a3;>us#aNTD`6Rfe)vsZZ5v6^nd$fAT<8nLjwNaAQ*;^(pkY|K3lJO22fg z)0@%BntuP1rB>6gK~h)V?()N&^ly#G3K?pOhnqz;5WXo>af(trfFy?;vhm+JF$eC>Zn{piM#_xkq#Knds~zE2t+Opa^TdKf}={*VcwH#BI&j zfk^+Y&e{`^^=7Q?64=VHsgXMN8%o<=d*6QRAjDOco&Uva}F@nWmhI(%1v2;-H@Z6M&&22ck6>1F5b`fnL*&zd#mKTmW_7N51K zJ9LCKaG8YQ=r(=b{U#;FX#J><edJGto(-7K1#mU z)|Wu!h#jtN;))USaaeg~Ndcm8jm*xnMW;cuyDV}djCqIe^Mq7oEcQ2W2s|+07ek(%^$@2yS^wWb_lhzoxH8r#^*YKJ2KJ)T|I5}8-&@WqN z7R@!bn%`JlZdrowy|p>sM0hjze2rHsBpr+J?03F%9=N=vGElBh+X_gE14del_jLdG zZT!(iZg*}%-sVxOBdKPQ*I~HnA;Qi5L$y2yW(wjJz>CT>3Gf;AE&9i-)Yqq&%WOLc zVgbQqg>wY4;e;t4*B+C_9&$n(pww_en5K6EfCvcYMDf8cOBK(hF<~CJq)T<3s;)_wN;iCo_V!z^mv&-*wrN>QvfEin+T5__ z&{g2ZKLr!!d&ZMFET3$Zh4yS%4$C<%GbM17dCrP;mvn+P8q&2EvI=Kx$b~a0r_yyL z-Z@1Gw|rs*rm)nX5ojkc{^S{^oq475JK1o9MmX*-YRB<2z79_et*Kt!-B|kcS%!n! zZ25eBQhL+6Cl52Q4^^3O2PvQgwJXEZ#LZRP}Uc4edkoQL8KCZ6UaUi1al06;&0`T5{UL17I0ALDxpWm!$%o#bF|y~l46Id$o%li7MLS@1QbQBYz>$h2Z2f=DRAg17Cu<)F_;q~LH5z8Zj=9VK4kt+#|eK>%?pI#OhurE zn`uvmDZbnJyW5)paPSqnpo+#2UR!!zZKa767M#egXVn>7sQ5?a{(3Ay;**I=Dh!(e z{QLxH*2~b8^W56{9pzCe)gWIx63+vg zHX9ZDbL{)O(@^ZAhz`3fVbMuU#2(8HJV0K2$_m>=w9y(1^#W55F6~+C0Y43h;HLIV zkF>OoBlq)kyKHVCt_9?Qx)l@uwyvAh#j7!j#IME@^T>-1@66>>%Ge@CgH;^ zv*F)xV}&^6wi-d1mu6k|Gh?$MjT7#M2#{<&U=fHZ@~7tOl|y-$ndvJr^c4{$#v_b* z4RP?q*ld(II*C@%L+fobY2bUueNl}3FB$jRev6W5qmPIfv##O_`bM|~!LS)hD8Z$& zIho&MivRntv5dmUGh`FUWoZZP2~{&im4buUM?Hys<+)Ltjd@<#Eis_*waLM~uRep- zI%VWDrqsPQnZ*s)(bYyt{WIOVuXc@kn@Yp!Hm=5`kA|8m?KNunEq&ex2&k~1q*-RS z_8o4v#uxB2UUwW{CPmo!R2AEmUe-E0e-2-$>}t9=VAoeW+Fx(^3?hpNd?g~VzMR_b z+4uCdyz;-bDVl9DZZIV>JL~>;*!5GA_Ny@T*S<+#?YPp;+8+ruTTU?0YZ}Ha{KOSe zz(^l0^2w0K-&;?Z^pl1?OE?+>9M!m*Emt8KTDN30vi;!a_~zt1&oflnb8v_)POp>^ z8q40{AE?t%6<;D-PP}$5MWwsl$ZY})d~stO<`q***!gL9Gob>V+X+pC>5?H-qR3cS ztCP(;T5wxAQne%d*Aj*lb~?-y@YDg{{@X~j*iEp^ zOtjo|RjDy*W}7KfHQ2T5jU#?(-j4&g{j>qTJ&~|P>XB^?1yne$&F{|j6eqcv*=}xl zs6Xe1hyCB{>hx>8j%(A=Mwg#PC-@z7K@l6ZD7}M@zumv%Uw7W6MJPwZuD>dDd*tCM z!P30K6;(u1%aYam1jD${eoMcDcnB>5Lw5o9fQtd1km5!EM1nRcg72=kuRxeJ3b4JT zp+lAQ8+*h!Zeo|(8;Q1qOBD_j;mW)MM)JKU<7xIE*YFmkjF`*+BtEUHe+mz&4=-jS zBMa@)BsOBhkBcm+!mTNB6wNr1WlKX6OVz(>7=F=Eupp|lBB(SiUE=$0^Sm)MUZDSw z{4*^X&KuK!@wZ=m9rvf5&u&<<^ZtmGW%DDNJe%FUSLAg;0vP~`qU$lHim**#cg(nH zd?xaD9&3e1{}z_MDgcyoy?7{x;qSp!KmIWUJu;!o5lS(l1OvZkY36*Cu*Zzn+UHf@ z7^~dW-#cP+?cCQBP;)6^AWf(%=mecJ9xsX0X!rQj&qLZcqw#Hb~ryK@q{8> zNN6k(p+gw^Q-W^KfDjB1Rz3V5&XzQ=@14{^T}*9{W2P@n(|q*k=&Bm>K_BU5+f&zE zWvyH!>~3Q+{JZRh!LDs*4soEKn4MvSawF#SbUb$2UNC7fu6f18w@|7J@6A8C-*8uo zJ&|b9abdVtL};`FWjT~2>)14gMs~Q>Pd`L{tt1~%Qdx%{ja*}oWzwCU#C4kDMFrLIvu?yB zC-3=fkNG)D0R9C7UV#F!yfN?nu=fMWA~5n*d?AMQcG-u>h7oyYuFa-^dTC%~aTZ8uK1jH@*Fk)_SenigwXVIl#jhhaGl;e?E27rA9 zGdSaJj(ExK&7Bvcj;x8@0d#F>6gm;1tDU2ps_N zAxSw73qq8yfn6jJI!`!@8KVz(9?^T~`?kB-N}0}A#D^gQ#lbt^8ix3#*qG-e8j4UL zh)Q{Y+wofvAUAQunAFF9N49|-K@PhLpN|SXx?}xBUEA*A+!=Jg?iGw0q^P)LVwdRX1HUEf=+=>eFZyq&XcAwZxa+w_Rkq zM+)4{No=U#P&r<)!o?&$`(jXZZ1B)*F8`Xk69(M9**ijxRzCmm7roMCz(6nA%wY7I z=IQ6r10yFKc`Exb12(PQnn*8ax?#loBH8m-t#5Dt@|$pr+3(wlTiEBU&xYdDn(H|} zA-hVqdaPr<^S2A+DFCOMbhESEvoFB5<&cH?^CqiI{mNF48NY5m+X{iwC=3OEQ%=+1 z0iAeGVI4j*Iq#`OH|ExUZLYOV4yQi+k@9`>^!C8~hj#9MB@Yvq1Qis^OBI`?9@O-#%yw{ zC!ZUWnOIiJDwF7`_vHt`Jl8mJ_)T|5Peax&73$(6uF7`62d(?`!r#y$hL{RQ2fh9e zSj_sJwz?u`{~0c3gj(h5Gxo$Q`a6*2n$v#zhufsGt(;F;e=$f23qHh&y*2O2IMLifuL6>g$KV`dhMPD5A{^Sy)~t-D6ZFr#K^s$vW6B%7Cv>O zbT653&J1;BBHbpvhp52#(;ug~r`@Bt(UJN;c{?KBF=KJ#Urog$wd*EQ`zOX%I8ocu zD1Z16@^(iQlHlZnf^itfGeui2byL(wvB(JsU`W4+n@M)<4U)>Kf}I9W4%8^Pq);Jva=z$r^G8% zS$GjIou6&oO`Bn&G(=>5MB+FfL72fZOp{nWwVCC7PFPT9MxkJp#pXSm50bb@1JBI9 z*br_6UXLFIPcR@);uYBdno$Nod6B3vERKyox&jq|MSxusA*Lz$0{BuFR-S#(99-M& znz_v5>PIj(By3=A*jv{OIkGb4Sw|jLBW=|L!fX0xI&EL69B7UBWWPcsQ_ZDgUr<`0 z@lOu9n`%+i5e~Q`p(A(3p?CfbXwc2u11gUfLT(CUXhP+Gb^SO#j`K%332S+=pgfvA4emZ{a|7fFZg{*|@H-|TF02$s*}2hpM6 zm*HHSa0LN8)XA(&xoU#yEGsuR&(AltwTI~Un-JwLp}l-}XJtr5-0uX1d_@hIoWmr6i>G+#<{Vg8z4*7drV;Qk*4bYA5Yb4~wm$NlmI z=$v`RTMU7f8!(E9C#<-mp%O7UOr>^wP0QKOj1^}VhczLjoeU$uQUV8lixHI$4g9iD zeRuk&=G{eW#fhqDl~rleyicN~5wJJtDzX86a@;I!D!8@XC6uspS!<_VB+PV!-dI{q zHl-IX^H5izH9h95gd zgP;84@$8k#ectqV-iEEMWG^-hr{V`goih{VwRZV?xC+7!vel%n^)f4Oj4M%9gcC!h zs7usrBCR)5q#*)JRq$gW|kaP)~n?;{&R7;l15v$s;;pb^8+pJTsUh56jWS6H4M~IE>+qL;noXt5?`pL&IZfa?n!q&4+9?)TB;ze@^|={5!K)xe z@#s<+VArlzv?4AJ>cz4H$|`_fzQcFhq`Z?&y1+sI#hbVbm`GU4-=gg#mO0DSj{aD< z?^tqa9!%N{DcB8|IL=@E;=Ay;wJ$R@BdX_t=r~qK_Dy}TKVONh{G@4VixI;s4~B)$ zS?bW~O!#<|@d}2x-11OVKizhGlYl>f=&MYg*K8&hj!TTv2U2{vZB|F=%@?h^YGo~? zTzqE{tHOHZO&E6{;)Sdsz^Sx_)p92iMgEsK4#Cq-&yNN4@4;eXb^ET@=phVoV^K`E z19)>b6-QX~R9vXuv!dznbMdOQ^0scPwy195#D`~piW@HAJ#mpC*fr_!?(FTt8{O~zW5WyH+J3o z{PfzirTvcYPcee(5k9mmY`f)umuY+VDmIq#7U4CkkY85;GbQ8b1Kmy7Jr3t>7cLEc#Qs+cip*WcvrG-}4Wq1M<6DFeKz z1Al5LY~HaijUVDs-)TWRv9n}*q5KCs{U-1aD*BiZ>GL5+guWwPE#bX1S2H>g@wh0R zkpuP?Kt(<%$A(=z8_a^dS(W|U5y6$x?@5`Uo_n+EhOmcL`pU31NOk$=*Az_tUP6c# z?964vUk6mFLQ{~FgJadc>EBFsI7GHzVdG58)Y&wHng|~8L-*tD7AUc?%PVaH37n7v z;Pp*CXHWQg&k*qS&w--cO7eVO{z6?;vH;K%*bEo|R)8|-kKz@l@P=e*~g?)TgG1v%I&ob5i97+Bo~91 zS`EboQ^5R86WJ;S{g?T@?%vL1eWpS{8!0K*1~uM4^7%&V0Q?#vyLhzo{wBz!Cd&(VN5k)P^nR%%?LBOaLEkM>{@5P8;k_c~*7 zjbYo{0u=kUiSRy(o7=|%Xz7)rQIupV#&i`ptf`oUg%S1z43L7sP<&OYyN4ht31a6| ziO8YYv@fuSPe?#?NB16>gd>U>sy_@XGj;JIrqyEXx%=+AJu#d)Vd)oEs zH3-euVvm&RFzx%d9UA_i8Eo?>i|BJ@4tx@R*z4zlj#aUH_y)Z3djOTZr?HmraEjL| zr^;052v^EqpsvUmmFY|}&aO_Z&c8WhMibH@Xm1UPNifjChP^gG$cwhAWPxrzpoQkI zu*wPb__x_JaLHzU5P&SV!r*4KZ*7lUwDAmBDHH?$GG9 z8*a%t-<*ZukuZbn4K+!MjHtDvh>~b5S&P>%b-{M(F&r6}x_2%GhDRqEj_2)ypZzU? zKN_vRZ9A(0I_uu7yzwPV4bQ>~@0^Ox;wSv+NBW?9;A@CK+XK2jI@INe9LX(($Wbi+ z7JskC6y+Xu_t`gzo_~i_CssR$nBo zG{&dhE~`|iL?FLsV}}9@#I>>t>`~f-;5p01*k}=YBC#Sn82B%^=!R=Mj2eL);p5Q! zjmgo(Vq~rF#6)12s=fC+hMFJz$(GHFK{b~5Vl#C)9VZz5q5)kajwr`M$RT<{nj>eL zErGixokhei^`~&2@VS0f;BnDtxOi?gGVWzCgGkOSoT^U?z15V^X$ViVUeGw%H?pK^ zZMrCP8sVQ?T+VcVSABQeLxp`(+42&`X(buACez{#)jB-KJSqS~fL6>@*W=a*Cx#Q- z4_aU41v1ulzpXsE4||?RV=ev3Z$!)4QAcmgCot+mMdR&Zn3gI(vb3xBT?qBNmhQAa zLvgybjJ)>hX^l^cd}f_DvODZpw8Cz8wNW7-b+mB|X$rsbL*Te)b!YKn40H#5ty_V% zCo^IGmsP3j@iXLO<%NHHd_tF!0jj3{ouyYK9xoeoc-8N2etwp~AUY08+zj`QcIvM$ zQ4()kpN^d$Qi;~dvqI=O)4?wm{bV^X;R+E<}jb4znQT z&z9Uf57P%#i8dXN_u@vMpQgg}L5b7?Ej>S!K~F-5c7ZJ~8zxMD(4A@YzeFx7r8-bHoIu^kmDfINE!LX^U-?%M*>LS;m0f8`aByB>GJHKFSX|Kq6V5H1>dMDb zC=>q`QnoEyT-#*h3<^D*d(3tPlA%^;_Iveyrn&3Kwu!+cvzxG%Fie=Zu1x7N_YNP(|XP~?O)a=@>+!25rXvADnhEuiC?WKgU=1tGWJ=H z^G1N7P>5>8#L$xwA3mBe1mxYR^-CH$%* z^OZNc)R$A=GI(e=BkD>wOTj&$dv({s0IhMBAjV(gZ`=68xF#B8GykcDW#9CgcMLmx zFxznW#JSE47#BUY&NAw0ueA>X+UKiC)=t`R$JQ7*{WXbWe}X#Ws_vmoS;Wsk{xShQ zXtons778#ph0qXRK4()rvW3P_7#fsMDR`^$_MBcXpDvX1UO=guO_Wg&IG>|(1_BSe zK*6bQz%9S^JiNYf6%N^bKInwm0-!*Z9@_iT~ za7C~O6awgRK5wlttGS&qG71cy;dNkl+*f#A+0Mx7P$#RmgV`H)5=}9JES5h^iK;xu zRKR0kpX!HVMY1Eaca?5dlX>$OE;Sy%P;2^E-{ zyr+O;KyROu@~kV$H`QH}y4qgM)Mzx6eckypf9&CIqxr~6>RQf9zTu-Fv*maeajjQX zntYvL`uyC**@u<@+lU)S13L@ds|B{$NAJ0mO?4wm&1Hp?{P@);hykauq;$%uUbsD* zQ)`c{BSYo&uIjP)Y;!kLr_TaG_WFY#R-U#Xs4&AB=FWFr9&7Ak@q&IFYh~`nJ!8_f z^Y`ft#wAd*)lvr>?%8+byhMIJlGV4ej^6giJj7;9>uxKn&l2Q_8j{QMFUGoI7K|qL zE7UPP$8H?$s*H^kkx6BLN%Bb0d@WZWqf%qXZ9;OSo#qz-iZkx-)3BQOB3(7(Z zzl(k4%Y6@I_y!xoUA^8fm!~$@*v(ur5oy8^Y(`u<%}vWT9&=#|7bo@^$bSu&*Qg1L z9lD$!0LaFDc{~6L48U@{TOuyfgkTr>Vul^@k2(M^a1$VtrSz&VVqNja}&xLq%9&RzqOK(xYpaZu-{emxCV4MjC;La9Ln?%gJH$C-wQ~ z`xwQ9vAp7?v*yrb)>K1ISqmTEmEH2c^D4d~vkUQFJ1VQG+G0UQ{b^I8S{MHHSz!hN zv6MkO(XN;pI-}Vv;woMh{Uy`470=&)d(u+y$a3N58A%I!$ynLo(@Hz~KTXKN(u)l* z^#9KP5kW#-ZC8`q$?YHM`GB8+(Yde$J6*8#w&Hktl^LM-J|oZBl)IaIJD;uUGdU^< z)M1Rgx3F=aZMrbT_Hh5&_OHcZDx^idw9a1N!%DL4i~6dZRr+Ka@zx?@t7u&sNiqcRfs@^g$M*yP8p^@gr$s6kmK$AV8LYmmthIPD7kjI+_4d$gZ`^`A4cj;zLqkku{9Uv#U%gZKPbvg z%slC1mggq4;l`k3yj?HpO-t5yzhyml#HAJdmbI=;m8X9!=oWBz*riNM zK4*MwyU$WY2mB690jbl_p-51mC4O*W>yn(EY)mCHL7q<`$!eT7Spa-OBpjXR+AA{#DtB zoBvbJwLC3e3V`8yp)o&%lmX88-n@tV1jyfd1}if1Jru|-Ra;T?)vq7^no>97&*@)w z3y(}GaZKnsPE3=0KX6d{ciE(;3}G23+bVBrKIhdbquiNaWj&nlXZ7>wgOCkOsJ6&{ zZm%hvG9c~j-7iqkr}oVV-O~VNCRpGN@Ir!E(ZlHZ{Gr-jSv4IF^xxcjN%<$RO_`pK zMV(h>Di5~r0Phc%^7tUS)F>6&($&}ZtusM`Pk`xitFS!K)(4PM!i>k9= zQLhmXV{I|JnVz8b*38k61!*$_dp+K+i-zkZ>|5LBl@{F|0BNfW37)mjkz5U-&T@T2H(1$y{6 zUb@emL|H*6aboOrKv|u=`ctdY(?Ry-){WB8 z!>C2-jIU;b?PJ&8NpQxjrJA;PaI4)e`ruIP&p!-c0r+1c-=F5OB9DJFU57K3M9aWA zan3*=DIvREi{NSrh4jO=I-QmAZqZlhSG#jB|620+;fv;5Kbc2_DRBgAyP_z{_zVbp zhE2Bu?f=>@l!q}$#y%zyqI;=E=?hnXSE(&&$l{{;Ty-p-2V?TAIVHXw9{8DA6LwWz zdrOT_WQ}5OX#xbU4g&&Mg5mamH3-5vqyuFbI?ok7aX8eEd1iP3XCS<2sQn#D$)`Z-*Ujorq>mQYhdf4EJ=(e7vObURM z2j7CRNcx{ol{^mzylilnme4@Co7F{)8zqjT-1RFQjT`?%>iWx_*_ME@^%k5#79-%$ zTEeQl^P8Q`hF3KSTM@P@*tV_B% zu`qSfB2|-FLn$giw~Wl>Hrq4Ae|s9P|#2*VmsSx zfefU-&31)z2n|vSTe0_pKXL8n!rFAkuLXWjkRUj`yAq{1ExB?^7o~~*eEh2|w zdd0j&G)Tt4pfGlUi$fOYetC6Zk9bH2b;@J&(C7)t%EK z1AjYiI1i93bZcR29Ttl%z2iI!FczRd-^vN|@i*xl5Z z)rw*PEnL%eg3p_m=C`g}g52dSZcPbnFDHF>H{E(?da%PvVXSc5mJr=!b!^AiosYXi z{%C#wf$m5;Y+c1TIYN_u#;5%>OSn`=xgW5A$|dzLtDoh>@Ll+iB=B;<>~2r~`t2v4 zmhUG%@7(`gv$noD+jKdw<+0Gz($VZ@kx9V0Uy$Zy^{2nq;;PlxyfJ{^JV2$0fjYvH zL12CIb*3!A7UgN^-uy3O_bThyC8LFTHA67&=IiD)!jO2#^}>GMiL%5vOMSl4S0<`K6c9A%_&gQUWl-)-mh;BkWgRg!0#O13b zzg`KB>JO}=pwS#H_PHC(6^2Kl|0ctZrAkkzdLtS^fh6A5g2w>7=)+0BQNMF$&d&JR zez{GF)6=z^_Spy)ChTk9;EV7n@m2o(LId}Ii!U@H?heXlN@%}ruawRq)G_PnWT0+7 zC=KZ^gH35>bCF^Hp9gL-FEoGt+-Bm9Q(+?(v`$Q>AvJEc65q8GZcVVtaIQ5Oq0gLo zc#o0et6YV`RjN#ARrE(Y)=lj0_7$3QHL<@;{rf2J3Fj|J+aS-YNfjaf^EAOExUp3F zRC9DFJHk%2NLcux$02;zm=_dowsV#_ba>;*in*vXpa(r1e;Z0DhF!RLjPf}odnJEQ zF21JQL4KVd*B6Sg#D%k1+>S75TExJ6)v;v>jX&+q^z>Hu2;3VA!bySEsabRVmtwl9pCktS7!MiA+rmC7uN|@<3p{V9*vP*6-cPcXa#0y4%(}4nDgM zg<<>vj4VaYTa(zr{AX`JF@)x2<=fJ2-sUg=50*e_zn(!#5@ez$9jhnT;8Ox{B88Lc zVP7^(1n}uO5x_1<|J6NYq9i0eTwD{1PHhJIb)_vC|Oc?L0Y_T`2 zl(xApllMt0m+v{Nl>Z5-g{MRcIc<33Jo+D8(xbPK!Zt`@T3b7i(Mj$?cc}yoypT%x zL~(_E86B0fscjo4wv&ZZs&ds3w|a+`4U&W#D0hMXkpr9<_RjAwa)@3ZUZ#LsypF1w z1`BzbVIAv7**X22&nu|*B>@n7z>))Mq&_4N$@)MBt~LbH^IMX2AL~m3A((fbsJzxW zMg7k~8V++(n53lue_+G7Z3={bq>+Gf^eFm38S%r-hJSlaF)mMfB z#c)VXLID0FNMV*pRHU#wqo=Yp)ooCN*VGeVTthG`Thj{Ft(n$`6{>1VZY672qMS9* z)ZC^8OKO)~f%xv9*es>})@rO6%|C3<-SExVtWus*R;OSQ&*8TyTToSdlKNFNYD*Ho zOEseUld`)?-jODO^RD`b6NY=O4F%oZ=%X|r%K{aQolVGpEXk!Kch!w$^SAU zhvGI~!961U^Lmw+#25Hw?H8$9Z?OV%0Dk$vN=oBZwKWRlt&zpY>aQOqA74bUR@Q%0 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 literal 0 HcmV?d00001 diff --git a/2.x/trunk/plugins/FirewallMonitor/resources/monitor.ico b/2.x/trunk/plugins/FirewallMonitor/resources/monitor.ico new file mode 100644 index 0000000000000000000000000000000000000000..a898987d45b6ae5fbbfadd9fd100c6ac28500150 GIT binary patch literal 10134 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 bQoZ(%zyANI|JI1Vy@=uGv8$F>KhOORs^Vdd literal 0 HcmV?d00001 diff --git a/2.x/trunk/plugins/FirewallMonitor/resources/public.ico b/2.x/trunk/plugins/FirewallMonitor/resources/public.ico new file mode 100644 index 0000000000000000000000000000000000000000..5fe64a43e179b2bf5d3298980a0dc4ad71853937 GIT binary patch literal 29926 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 Wzb7YuHJqL~yWbxj{tO4r`~Lt@ym?Ll literal 0 HcmV?d00001 diff --git a/2.x/trunk/plugins/FirewallMonitor/resources/wfirewall.ico b/2.x/trunk/plugins/FirewallMonitor/resources/wfirewall.ico new file mode 100644 index 0000000000000000000000000000000000000000..9ef71115c8a32fdb397e7c7236b14ee79e3dc491 GIT binary patch literal 234353 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%0AY)o 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⪚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 r71F&XFJ8~lide6mAk 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 w~A#*H&gi#AQw1A)B?83gXUXlRa%# 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 z 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 literal 0 HcmV?d00001 diff --git a/2.x/trunk/plugins/FirewallMonitor/wf.h b/2.x/trunk/plugins/FirewallMonitor/wf.h new file mode 100644 index 000000000..f243c4353 --- /dev/null +++ b/2.x/trunk/plugins/FirewallMonitor/wf.h @@ -0,0 +1,2344 @@ +#ifndef __FIREWALL_H_ +#define __FIREWALL_H_ + +#define STRICT +#define WIN32_LEAN_AND_MEAN + +#include +#include +#include + +//http://msdn.microsoft.com/en-us/library/cc231461.aspx + +//Protocol Versions: This protocol has only one interface version. +//There are currently three policy versions, which can be tied to policies and specific policy objects, as defined in section 2.2. +//The three versions are 0x0200, 0x0201, and 0x020A. +//<1> Protocol Versions are used as Binary Versions and Schema Versions (also called policy versions). + +//Windows Vista uses version 0x0200. +//Windows Vista SP1 and Windows Server 2008 use version 0x0201. +//Windows 7 and Windows Server 2008 R2 use version 0x020A. + +#define FW_VISTA_BINARY_VERSION 0x0200 //(FW_VERSION(2,0)) +#define FW_VISTA_SCHEMA_VERSION 0x0200 //(FW_VERSION(2,0)) +#define FW_SERVER2K8_BINARY_VERSION 0x0201 +#define FW_SERVER2K8_SCHEMA_VERSION 0x0201 +#define FW_SEVEN_BINARY_VERSION 0x020A +#define FW_SEVEN_SCHEMA_VERSION 0x020A + +#define FW_ICMP_CODE_ANY (256) +#define FW_IP_PROTOCOL_ANY (256) + +#define FW_PROFILE_CONFIG_LOG_FILE_SIZE_MIN 1 +#define FW_PROFILE_CONFIG_LOG_FILE_SIZE_MAX 32767 + +#define FW_GLOBAL_CONFIG_CRL_CHECK_MAX 2 +#define FW_GLOBAL_CONFIG_SA_IDLE_TIME_MAX 3600 +#define FW_GLOBAL_CONFIG_SA_IDLE_TIME_MIN 300 + +typedef HANDLE FW_CONN_HANDLE; +typedef HANDLE FW_POLICY_STORE_HANDLE; +typedef /*[ref]*/ FW_POLICY_STORE_HANDLE *PFW_POLICY_STORE_HANDLE; +typedef HANDLE FW_PRODUCT_HANDLE; + +typedef enum _FW_POLICY_STORE // custom enum by dmex +{ + FW_POLICY_STORE_MAIN = 0, + FW_POLICY_STORE_GPRSOP = 1, + FW_POLICY_STORE_DYNAMIC = 2, + FW_POLICY_STORE_DEFAULT = 3 +} FW_POLICY_STORE; + +typedef enum _FW_POLICY_STORE_FLAGS // custom enum by dmex +{ + FW_POLICY_STORE_FLAGS_NONE, + FW_POLICY_STORE_FLAGS_DELETE_DYNAMIC_RULES_AFTER_CLOSE, + FW_POLICY_STORE_FLAGS_MAX +} FW_POLICY_STORE_FLAGS; + +typedef enum _tag_FW_STORE_TYPE +{ + FW_STORE_TYPE_INVALID, + FW_STORE_TYPE_GP_RSOP, + FW_STORE_TYPE_LOCAL, + FW_STORE_TYPE_NOT_USED_VALUE_3, + FW_STORE_TYPE_NOT_USED_VALUE_4, + FW_STORE_TYPE_DYNAMIC, + FW_STORE_TYPE_GPO, + FW_STORE_TYPE_DEFAULTS, + FW_STORE_TYPE_MAX +} FW_STORE_TYPE; + +typedef enum _tag_FW_PROFILE_TYPE //[v1_enum] +{ + FW_PROFILE_TYPE_INVALID = 0, + FW_PROFILE_TYPE_DOMAIN = 0x001, + FW_PROFILE_TYPE_STANDARD = 0x002, + FW_PROFILE_TYPE_PRIVATE = FW_PROFILE_TYPE_STANDARD, + FW_PROFILE_TYPE_PUBLIC = 0x004, + FW_PROFILE_TYPE_ALL = 0x7FFFFFFF, + FW_PROFILE_TYPE_CURRENT = 0x80000000, + FW_PROFILE_TYPE_NONE = FW_PROFILE_TYPE_CURRENT + 1 +} FW_PROFILE_TYPE; + +typedef enum _tag_FW_POLICY_ACCESS_RIGHT +{ + FW_POLICY_ACCESS_RIGHT_INVALID, + FW_POLICY_ACCESS_RIGHT_READ, + FW_POLICY_ACCESS_RIGHT_READ_WRITE, + FW_POLICY_ACCESS_RIGHT_MAX +} FW_POLICY_ACCESS_RIGHT; + + +typedef struct _POLICYSTORE // dmex +{ + FW_STORE_TYPE StoreType; + FW_POLICY_ACCESS_RIGHT AccessRight; + BOOLEAN UseLocalMachine; +} POLICYSTORE, *LPPOLICYSTORE; + + + +typedef struct _tag_FW_IPV4_SUBNET +{ + ULONG dwAddress; + ULONG dwSubNetMask; +} FW_IPV4_SUBNET, *PFW_IPV4_SUBNET; + +typedef struct _tag_FW_IPV4_SUBNET_LIST +{ + //[range(0, 1000)] + ULONG dwNumEntries; + //[size_is(dwNumEntries)] + __ecount(dwNumEntries) + PFW_IPV4_SUBNET pSubNets; +} FW_IPV4_SUBNET_LIST, *PFW_IPV4_SUBNET_LIST; + +typedef struct _tag_FW_IPV6_SUBNET +{ + UCHAR Address[16]; + //[range(0, 128)] + ULONG dwNumPrefixBits; +} FW_IPV6_SUBNET, *PFW_IPV6_SUBNET; + +typedef struct _tag_FW_IPV6_SUBNET_LIST +{ + //[range(0, 1000)] + ULONG dwNumEntries; + //[size_is(dwNumEntries)] + __ecount(dwNumEntries) + PFW_IPV6_SUBNET pSubNets; +} FW_IPV6_SUBNET_LIST, *PFW_IPV6_SUBNET_LIST; + +typedef struct _tag_FW_IPV4_ADDRESS_RANGE +{ + ULONG dwBegin; + ULONG dwEnd; +} FW_IPV4_ADDRESS_RANGE, *PFW_IPV4_ADDRESS_RANGE; + +typedef struct _tag_FW_IPV6_ADDRESS_RANGE +{ + UCHAR Begin[16]; + UCHAR End[16]; +} FW_IPV6_ADDRESS_RANGE, *PFW_IPV6_ADDRESS_RANGE; + +typedef struct _tag_FW_IPV4_RANGE_LIST +{ + //[range(0, 1000)] + ULONG dwNumEntries; + //[size_is(dwNumEntries)] + __ecount(dwNumEntries) + PFW_IPV4_ADDRESS_RANGE pRanges; +} FW_IPV4_RANGE_LIST, *PFW_IPV4_RANGE_LIST; + +typedef struct _tag_FW_IPV6_RANGE_LIST +{ + //[range(0, 1000)] + ULONG dwNumEntries; + //[size_is(dwNumEntries)] + __ecount(dwNumEntries) + PFW_IPV6_ADDRESS_RANGE pRanges; +} FW_IPV6_RANGE_LIST, *PFW_IPV6_RANGE_LIST; + +typedef struct _tag_FW_PORT_RANGE +{ + USHORT wBegin; + USHORT wEnd; +} FW_PORT_RANGE, *PFW_PORT_RANGE; + +typedef struct _tag_FW_PORT_RANGE_LIST +{ + //[range(0, 1000)] + ULONG dwNumEntries; + //[size_is(dwNumEntries)] + __ecount(dwNumEntries) + PFW_PORT_RANGE pPorts; +} FW_PORT_RANGE_LIST, *PFW_PORT_RANGE_LIST; + +typedef enum _tag_FW_PORT_KEYWORD +{ + FW_PORT_KEYWORD_NONE = 0x00, + FW_PORT_KEYWORD_DYNAMIC_RPC_PORTS = 0x01, + FW_PORT_KEYWORD_RPC_EP = 0x02, + FW_PORT_KEYWORD_TEREDO_PORT = 0x04, + FW_PORT_KEYWORD_IP_TLS_IN = 0x08, + FW_PORT_KEYWORD_IP_TLS_OUT = 0x10, + FW_PORT_KEYWORD_MAX = 0x20, + FW_PORT_KEYWORD_MAX_V2_1 = 0x08 +} FW_PORT_KEYWORD; + +typedef struct _tag_FW_PORTS +{ + USHORT wPortKeywords; + FW_PORT_RANGE_LIST Ports; +} FW_PORTS,*PFW_PORTS; + +typedef struct _tag_FW_ICMP_TYPE_CODE +{ + UCHAR bType; + //[range(0, 256)] + USHORT wCode; +} FW_ICMP_TYPE_CODE, *PFW_ICMP_TYPE_CODE; + +typedef struct _tag_FW_ICMP_TYPE_CODE_LIST +{ + //[range(0, 1000)] + ULONG dwNumEntries; + //[size_is(dwNumEntries)] + __ecount(dwNumEntries) + PFW_ICMP_TYPE_CODE pEntries; +} FW_ICMP_TYPE_CODE_LIST, *PFW_ICMP_TYPE_CODE_LIST; + +typedef struct _tag_FW_INTERFACE_LUIDS +{ + //[range(0, 1000)] + ULONG dwNumLUIDs; + //[size_is(dwNumLUIDs)] + GUID* pLUIDs; +} FW_INTERFACE_LUIDS, *PFW_INTERFACE_LUIDS; + +typedef enum _tag_FW_DIRECTION +{ + FW_DIR_INVALID = 0, + FW_DIR_IN = 1, + FW_DIR_OUT = 2, + FW_DIR_BOTH = 3 // MAX +} FW_DIRECTION; + +typedef enum _tag_FW_INTERFACE_TYPE +{ + FW_INTERFACE_TYPE_ALL = 0x0000, + FW_INTERFACE_TYPE_LAN = 0x0001, + FW_INTERFACE_TYPE_WIRELESS = 0x0002, + FW_INTERFACE_TYPE_REMOTE_ACCESS = 0x0004, + FW_INTERFACE_TYPE_MAX = 0x0008 +} FW_INTERFACE_TYPE; + +typedef enum _tag_FW_ADDRESS_KEYWORD +{ + FW_ADDRESS_KEYWORD_NONE = 0x0000, + FW_ADDRESS_KEYWORD_LOCAL_SUBNET = 0x0001, + FW_ADDRESS_KEYWORD_DNS = 0x0002, + FW_ADDRESS_KEYWORD_DHCP = 0x0004, + FW_ADDRESS_KEYWORD_WINS = 0x0008, + FW_ADDRESS_KEYWORD_DEFAULT_GATEWAY = 0x0010, + FW_ADDRESS_KEYWORD_MAX = 0x0020 +}FW_ADDRESS_KEYWORD; + +typedef struct _tag_FW_ADDRESSES +{ + ULONG dwV4AddressKeywords; + ULONG dwV6AddressKeywords; + FW_IPV4_SUBNET_LIST V4SubNets; + FW_IPV4_RANGE_LIST V4Ranges; + FW_IPV6_SUBNET_LIST V6SubNets; + FW_IPV6_RANGE_LIST V6Ranges; +}FW_ADDRESSES, *PFW_ADDRESSES; + +typedef enum _tag_FW_RULE_STATUS //[v1_enum] +{ + FW_RULE_STATUS_OK = 0x00010000, + FW_RULE_STATUS_PARTIALLY_IGNORED = 0x00020000, + FW_RULE_STATUS_IGNORED = 0x00040000, + FW_RULE_STATUS_PARSING_ERROR_NAME = 0x00080001, + FW_RULE_STATUS_PARSING_ERROR_DESC = 0x00080002, + FW_RULE_STATUS_PARSING_ERROR_APP = 0x00080003, + FW_RULE_STATUS_PARSING_ERROR_SVC = 0x00080004, + FW_RULE_STATUS_PARSING_ERROR_RMA = 0x00080005, + FW_RULE_STATUS_PARSING_ERROR_RUA = 0x00080006, + FW_RULE_STATUS_PARSING_ERROR_EMBD = 0x00080007, + FW_RULE_STATUS_PARSING_ERROR_RULE_ID = 0x00080008, + FW_RULE_STATUS_PARSING_ERROR_PHASE1_AUTH = 0x00080009, + FW_RULE_STATUS_PARSING_ERROR_PHASE2_CRYPTO = 0x0008000A, + FW_RULE_STATUS_PARSING_ERROR_REMOTE_ENDPOINTS = 0x0008000F, + FW_RULE_STATUS_PARSING_ERROR_REMOTE_ENDPOINT_FQDN = 0x00080010, + FW_RULE_STATUS_PARSING_ERROR_KEY_MODULE = 0x00080011, + FW_RULE_STATUS_PARSING_ERROR_PHASE2_AUTH = 0x0008000B, + FW_RULE_STATUS_PARSING_ERROR_RESOLVE_APP = 0x0008000C, + FW_RULE_STATUS_PARSING_ERROR_MAINMODE_ID = 0x0008000D, + FW_RULE_STATUS_PARSING_ERROR_PHASE1_CRYPTO = 0x0008000E, + FW_RULE_STATUS_PARSING_ERROR = 0x00080000, + FW_RULE_STATUS_SEMANTIC_ERROR_RULE_ID = 0x00100010, + FW_RULE_STATUS_SEMANTIC_ERROR_PORTS = 0x00100020, + FW_RULE_STATUS_SEMANTIC_ERROR_PORT_KEYW = 0x00100021, + FW_RULE_STATUS_SEMANTIC_ERROR_PORT_RANGE = 0x00100022, + FW_RULE_STATUS_SEMANTIC_ERROR_ADDR_V4_SUBNETS = 0x00100040, + FW_RULE_STATUS_SEMANTIC_ERROR_ADDR_V6_SUBNETS = 0x00100041, + FW_RULE_STATUS_SEMANTIC_ERROR_ADDR_V4_RANGES = 0x00100042, + FW_RULE_STATUS_SEMANTIC_ERROR_ADDR_V6_RANGES = 0x00100043, + FW_RULE_STATUS_SEMANTIC_ERROR_ADDR_RANGE = 0x00100044, + FW_RULE_STATUS_SEMANTIC_ERROR_ADDR_MASK = 0x00100045, + FW_RULE_STATUS_SEMANTIC_ERROR_ADDR_PREFIX = 0x00100046, + FW_RULE_STATUS_SEMANTIC_ERROR_ADDR_KEYW = 0x00100047, + FW_RULE_STATUS_SEMANTIC_ERROR_LADDR_PROP = 0x00100048, + FW_RULE_STATUS_SEMANTIC_ERROR_RADDR_PROP = 0x00100049, + FW_RULE_STATUS_SEMANTIC_ERROR_ADDR_V6 = 0x0010004A, + FW_RULE_STATUS_SEMANTIC_ERROR_LADDR_INTF = 0x0010004B, + FW_RULE_STATUS_SEMANTIC_ERROR_ADDR_V4 = 0x0010004C, + FW_RULE_STATUS_SEMANTIC_ERROR_TUNNEL_ENDPOINT_ADDR = 0x0010004D, + FW_RULE_STATUS_SEMANTIC_ERROR_DTE_VER = 0x0010004E, + FW_RULE_STATUS_SEMANTIC_ERROR_DTE_MISMATCH_ADDR = 0x0010004F, + FW_RULE_STATUS_SEMANTIC_ERROR_PROFILE = 0x00100050, + FW_RULE_STATUS_SEMANTIC_ERROR_ICMP = 0x00100060, + FW_RULE_STATUS_SEMANTIC_ERROR_ICMP_CODE = 0x00100061, + FW_RULE_STATUS_SEMANTIC_ERROR_IF_ID = 0x00100070, + FW_RULE_STATUS_SEMANTIC_ERROR_IF_TYPE = 0x00100071, + FW_RULE_STATUS_SEMANTIC_ERROR_ACTION = 0x00100080, + FW_RULE_STATUS_SEMANTIC_ERROR_ALLOW_BYPASS = 0x00100081, + FW_RULE_STATUS_SEMANTIC_ERROR_DO_NOT_SECURE = 0x00100082, + FW_RULE_STATUS_SEMANTIC_ERROR_ACTION_BLOCK_IS_ENCRYPTED_SECURE = 0x00100083, + FW_RULE_STATUS_SEMANTIC_ERROR_DIR = 0x00100090, + FW_RULE_STATUS_SEMANTIC_ERROR_PROT = 0x001000A0, + FW_RULE_STATUS_SEMANTIC_ERROR_PROT_PROP = 0x001000A1, + FW_RULE_STATUS_SEMANTIC_ERROR_DEFER_EDGE_PROP = 0x001000A2, + FW_RULE_STATUS_SEMANTIC_ERROR_ALLOW_BYPASS_OUTBOUND = 0x001000A3, + FW_RULE_STATUS_SEMANTIC_ERROR_DEFER_USER_INVALID_RULE = 0x001000A4, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS = 0x001000B0, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_AUTO_AUTH = 0x001000B1, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_AUTO_BLOCK = 0x001000B2, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_AUTO_DYN_RPC = 0x001000B3, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_AUTHENTICATE_ENCRYPT = 0x001000B4, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_AUTH_WITH_ENC_NEGOTIATE_VER = 0x001000B5, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_AUTH_WITH_ENC_NEGOTIATE = 0x001000B6, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_ESP_NO_ENCAP_VER = 0x001000B7, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_ESP_NO_ENCAP = 0x001000B8, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_TUNNEL_AUTH_MODES_VER = 0x001000B9, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_TUNNEL_AUTH_MODES = 0x001000BA, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_IP_TLS_VER = 0x001000BB, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_PORTRANGE_VER = 0x001000BC, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_ADDRS_TRAVERSE_DEFER_VER = 0x001000BD, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_AUTH_WITH_ENC_NEGOTIATE_OUTBOUND = 0x001000BE, + FW_RULE_STATUS_SEMANTIC_ERROR_FLAGS_AUTHENTICATE_WITH_OUTBOUND_BYPASS_VER = 0x001000BF, + FW_RULE_STATUS_SEMANTIC_ERROR_REMOTE_AUTH_LIST = 0x001000C0, + FW_RULE_STATUS_SEMANTIC_ERROR_REMOTE_USER_LIST = 0x001000C1, + FW_RULE_STATUS_SEMANTIC_ERROR_PLATFORM = 0x001000E0, + FW_RULE_STATUS_SEMANTIC_ERROR_PLATFORM_OP_VER = 0x001000E1, + FW_RULE_STATUS_SEMANTIC_ERROR_PLATFORM_OP = 0x001000E2, + FW_RULE_STATUS_SEMANTIC_ERROR_DTE_NOANY_ADDR = 0x001000F0, + FW_RULE_STATUS_SEMANTIC_TUNNEL_EXEMPT_WITH_GATEWAY = 0x001000F1, + FW_RULE_STATUS_SEMANTIC_TUNNEL_EXEMPT_VER = 0x001000F2, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE1_AUTH_SET_ID = 0x00100500, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE2_CRYPTO_SET_ID = 0x00100510, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE1_CRYPTO_SET_ID = 0x00100511, + FW_RULE_STATUS_SEMANTIC_ERROR_SET_ID = 0x00101000, + FW_RULE_STATUS_SEMANTIC_ERROR_IPSEC_PHASE = 0x00101010, + FW_RULE_STATUS_SEMANTIC_ERROR_EMPTY_SUITES = 0x00101020, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE1_AUTH_METHOD = 0x00101030, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE2_AUTH_METHOD = 0x00101031, + FW_RULE_STATUS_SEMANTIC_ERROR_AUTH_METHOD_ANONYMOUS = 0x00101032, + FW_RULE_STATUS_SEMANTIC_ERROR_AUTH_METHOD_DUPLICATE = 0x00101033, + FW_RULE_STATUS_SEMANTIC_ERROR_AUTH_METHOD_VER = 0x00101034, + FW_RULE_STATUS_SEMANTIC_ERROR_AUTH_SUITE_FLAGS = 0x00101040, + FW_RULE_STATUS_SEMANTIC_ERROR_HEALTH_CERT = 0x00101041, + FW_RULE_STATUS_SEMANTIC_ERROR_AUTH_SIGNCERT_VER = 0x00101042, + FW_RULE_STATUS_SEMANTIC_ERROR_AUTH_INTERMEDIATE_CA_VER = 0x00101043, + FW_RULE_STATUS_SEMANTIC_ERROR_MACHINE_SHKEY = 0x00101050, + FW_RULE_STATUS_SEMANTIC_ERROR_CA_NAME = 0x00101060, + FW_RULE_STATUS_SEMANTIC_ERROR_MIXED_CERTS = 0x00101061, + FW_RULE_STATUS_SEMANTIC_ERROR_NON_CONTIGUOUS_CERTS = 0x00101062, + FW_RULE_STATUS_SEMANTIC_ERROR_MIXED_CA_TYPE_IN_BLOCK = 0x00101063, + FW_RULE_STATUS_SEMANTIC_ERROR_MACHINE_USER_AUTH = 0x00101070, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE1_CRYPTO_NON_DEFAULT_ID = 0x00105000, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE1_CRYPTO_FLAGS = 0x00105001, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE1_CRYPTO_TIMEOUT_MINUTES = 0x00105002, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE1_CRYPTO_TIMEOUT_SESSIONS = 0x00105003, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE1_CRYPTO_KEY_EXCHANGE = 0x00105004, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE1_CRYPTO_ENCRYPTION = 0x00105005, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE1_CRYPTO_HASH = 0x00105006, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE1_CRYPTO_ENCRYPTION_VER = 0x00105007, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE1_CRYPTO_HASH_VER = 0x00105008, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE2_CRYPTO_PFS = 0x00105020, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE2_CRYPTO_PROTOCOL = 0x00105021, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE2_CRYPTO_ENCRYPTION = 0x00105022, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE2_CRYPTO_HASH = 0x00105023, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE2_CRYPTO_TIMEOUT_MINUTES = 0x00105024, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE2_CRYPTO_TIMEOUT_KBYTES = 0x00105025, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE2_CRYPTO_ENCRYPTION_VER = 0x00105026, + FW_RULE_STATUS_SEMANTIC_ERROR_PHASE2_CRYPTO_HASH_VER = 0x00105027, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_OR_AND_CONDITIONS = 0x00106000, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_AND_CONDITIONS = 0x00106001, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_CONDITION_KEY = 0x00106002, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_CONDITION_MATCH_TYPE = 0x00106003, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_CONDITION_DATA_TYPE = 0x00106004, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_CONDITION_KEY_AND_DATA_TYPE = 0x00106005, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_KEYS_PROTOCOL_PORT = 0x00106006, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_KEY_PROFILE = 0x00106007, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_KEY_STATUS = 0x00106008, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_KEY_FILTERID = 0x00106009, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_KEY_APP_PATH = 0x00106010, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_KEY_PROTOCOL = 0x00106011, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_KEY_LOCAL_PORT = 0x00106012, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_KEY_REMOTE_PORT = 0x00106013, + FW_RULE_STATUS_SEMANTIC_ERROR_QUERY_KEY_SVC_NAME = 0x00106015, + FW_RULE_STATUS_SEMANTIC_ERROR_REQUIRE_IN_CLEAR_OUT_ON_TRANSPORT = 0x00107000, + FW_RULE_STATUS_SEMANTIC_ERROR_TUNNEL_BYPASS_TUNNEL_IF_SECURE_ON_TRANSPORT = 0x00107001, + FW_RULE_STATUS_SEMANTIC_ERROR_AUTH_NOENCAP_ON_TUNNEL = 0x00107002, + FW_RULE_STATUS_SEMANTIC_ERROR_AUTH_NOENCAP_ON_PSK = 0x00107003, + FW_RULE_STATUS_SEMANTIC_ERROR_CRYPTO_ENCR_HASH = 0x00105040, + FW_RULE_STATUS_SEMANTIC_ERROR_CRYPTO_ENCR_HASH_COMPAT = 0x00105041, + FW_RULE_STATUS_SEMANTIC_ERROR_SCHEMA_VERSION = 0x00105050, + FW_RULE_STATUS_SEMANTIC_ERROR = 0x00100000, + FW_RULE_STATUS_RUNTIME_ERROR_PHASE1_AUTH_NOT_FOUND = 0x00200001, + FW_RULE_STATUS_RUNTIME_ERROR_PHASE2_AUTH_NOT_FOUND = 0x00200002, + FW_RULE_STATUS_RUNTIME_ERROR_PHASE2_CRYPTO_NOT_FOUND = 0x00200003, + FW_RULE_STATUS_RUNTIME_ERROR_AUTH_MCHN_SHKEY_MISMATCH = 0x00200004, + FW_RULE_STATUS_RUNTIME_ERROR_PHASE1_CRYPTO_NOT_FOUND = 0x00200005, + FW_RULE_STATUS_RUNTIME_ERROR_AUTH_NOENCAP_ON_TUNNEL = 0x00200006, + FW_RULE_STATUS_RUNTIME_ERROR_AUTH_NOENCAP_ON_PSK = 0x00200007, + FW_RULE_STATUS_RUNTIME_ERROR = 0x00200000, + FW_RULE_STATUS_ERROR = FW_RULE_STATUS_PARSING_ERROR | FW_RULE_STATUS_SEMANTIC_ERROR | FW_RULE_STATUS_RUNTIME_ERROR, + FW_RULE_STATUS_ALL = 0xFFFF0000 +} FW_RULE_STATUS; + +typedef enum _tag_FW_RULE_STATUS_CLASS +{ + FW_RULE_STATUS_CLASS_OK = FW_RULE_STATUS_OK, + FW_RULE_STATUS_CLASS_PARTIALLY_IGNORED = FW_RULE_STATUS_PARTIALLY_IGNORED, + FW_RULE_STATUS_CLASS_IGNORED = FW_RULE_STATUS_IGNORED, + FW_RULE_STATUS_CLASS_PARSING_ERROR = FW_RULE_STATUS_PARSING_ERROR, + FW_RULE_STATUS_CLASS_SEMANTIC_ERROR = FW_RULE_STATUS_SEMANTIC_ERROR, + FW_RULE_STATUS_CLASS_RUNTIME_ERROR = FW_RULE_STATUS_RUNTIME_ERROR, + FW_RULE_STATUS_CLASS_ERROR = FW_RULE_STATUS_ERROR, + FW_RULE_STATUS_CLASS_ALL = FW_RULE_STATUS_ALL +} FW_RULE_STATUS_CLASS; + +typedef enum _tag_FW_OBJECT_CTRL_FLAG +{ + FW_OBJECT_CTRL_FLAG_INCLUDE_METADATA = 0x0001, +} FW_OBJECT_CTRL_FLAG; + +typedef enum _tag_FW_ENFORCEMENT_STATE +{ + FW_ENFORCEMENT_STATE_INVALID, + FW_ENFORCEMENT_STATE_FULL, + FW_ENFORCEMENT_STATE_WF_OFF_IN_PROFILE, + FW_ENFORCEMENT_STATE_CATEGORY_OFF, + FW_ENFORCEMENT_STATE_DISABLED_OBJECT, + FW_ENFORCEMENT_STATE_INACTIVE_PROFILE, + FW_ENFORCEMENT_STATE_LOCAL_ADDRESS_RESOLUTION_EMPTY, + FW_ENFORCEMENT_STATE_REMOTE_ADDRESS_RESOLUTION_EMPTY, + FW_ENFORCEMENT_STATE_LOCAL_PORT_RESOLUTION_EMPTY, + FW_ENFORCEMENT_STATE_REMOTE_PORT_RESOLUTION_EMPTY, + FW_ENFORCEMENT_STATE_INTERFACE_RESOLUTION_EMPTY, + FW_ENFORCEMENT_STATE_APPLICATION_RESOLUTION_EMPTY, + FW_ENFORCEMENT_STATE_REMOTE_MACHINE_EMPTY, + FW_ENFORCEMENT_STATE_REMOTE_USER_EMPTY, + FW_ENFORCEMENT_STATE_LOCAL_GLOBAL_OPEN_PORTS_DISALLOWED, + FW_ENFORCEMENT_STATE_LOCAL_AUTHORIZED_APPLICATIONS_DISALLOWED, + FW_ENFORCEMENT_STATE_LOCAL_FIREWALL_RULES_DISALLOWED, + FW_ENFORCEMENT_STATE_LOCAL_CONSEC_RULES_DISALLOWED, + FW_ENFORCEMENT_STATE_MISMATCHED_PLATFORM, + FW_ENFORCEMENT_STATE_OPTIMIZED_OUT, + FW_ENFORCEMENT_STATE_MAX +} FW_ENFORCEMENT_STATE; + +typedef struct _tag_FW_OBJECT_METADATA +{ + ULONGLONG qwFilterContextID; + //[range(0, 100)] + ULONG dwNumEntries; + //[size_is(dwNumEntries)] + __ecount(dwNumEntries) + FW_ENFORCEMENT_STATE *pEnforcementStates; +} FW_OBJECT_METADATA, *PFW_OBJECT_METADATA; + +typedef enum _tag_FW_OS_PLATFORM_OP +{ + FW_OS_PLATFORM_OP_EQ, + FW_OS_PLATFORM_OP_GTEQ, + FW_OS_PLATFORM_OP_MAX, +} FW_OS_PLATFORM_OP; + +typedef struct _tag_FW_OS_PLATFORM +{ + UCHAR bPlatform; + UCHAR bMajorVersion; + UCHAR bMinorVersion; + UCHAR Reserved; +} FW_OS_PLATFORM, *PFW_OS_PLATFORM; + +typedef struct _tag_FW_OS_PLATFORM_LIST +{ + //[range(0, 1000)] + ULONG dwNumEntries; + //[size_is(dwNumEntries)] + __ecount(dwNumEntries) + PFW_OS_PLATFORM pPlatforms; +} FW_OS_PLATFORM_LIST, *PFW_OS_PLATFORM_LIST; + +typedef enum _tag_FW_RULE_ORIGIN_TYPE +{ + FW_RULE_ORIGIN_INVALID, + FW_RULE_ORIGIN_LOCAL, + FW_RULE_ORIGIN_GP, + FW_RULE_ORIGIN_DYNAMIC, + FW_RULE_ORIGIN_AUTOGEN, + FW_RULE_ORIGIN_HARDCODED, + FW_RULE_ORIGIN_MAX +} FW_RULE_ORIGIN_TYPE; + +//http://msdn.microsoft.com/en-us/library/cc231521.aspx +typedef enum _tag_FW_ENUM_RULES_FLAGS +{ + // This value signifies that no specific flag is used. + // It is defined for IDL definitions and code to add readability, instead of using the number 0. + FW_ENUM_RULES_FLAG_NONE = 0x0000, + // Resolves rule description strings to user-friendly, localizable strings if they are in the following format: @file.dll,-. resID refers to the resource ID in the indirect string. Please see [MSDN-SHLoadIndirectString] for further documentation on the string format. + FW_ENUM_RULES_FLAG_RESOLVE_NAME = 0x0001, + // Resolves rule description strings to user-friendly, localizable strings if they are in the following format: @file.dll,-. resID refers to the resource ID in the indirect string. Please see [MSDN-SHLoadIndirectString] for further documentation on the string format. + FW_ENUM_RULES_FLAG_RESOLVE_DESCRIPTION = 0x0002, + // If this flag is set, the server MUST inspect the wszLocalApplication field of each FW_RULE structure and replace all environment variables in the string with their corresponding values. See [MSDN-ExpandEnvironmentStrings] for more details about environment-variable strings. + FW_ENUM_RULES_FLAG_RESOLVE_APPLICATION = 0x0004, + // Resolves keywords in addresses and ports to the actual addresses and ports (dynamic store only). + FW_ENUM_RULES_FLAG_RESOLVE_KEYWORD = 0x0008, + // Resolves the GPO name for the GP_RSOP rules. + FW_ENUM_RULES_FLAG_RESOLVE_GPO_NAME = 0x0010, + // If this flag is set, the server MUST only return objects where at least one FW_ENFORCEMENT_STATE entry in the object's metadata is equal to FW_ENFORCEMENT_STATE_FULL. This flag is available for the dynamic store only. + FW_ENUM_RULES_FLAG_EFFECTIVE = 0x0020, + // Includes the metadata object information, represented by the FW_OBJECT_METADATA structure, in the enumerated objects. + FW_ENUM_RULES_FLAG_INCLUDE_METADATA = 0x0040, + // This value and greater values are invalid and MUST NOT be used. It is defined for simplicity in writing IDL definitions and code. + FW_ENUM_RULES_FLAG_MAX = 0x0080 +} FW_ENUM_RULES_FLAGS; + +typedef enum _tag_FW_RULE_ACTION +{ + FW_RULE_ACTION_INVALID = 0, + FW_RULE_ACTION_ALLOW_BYPASS, + FW_RULE_ACTION_BLOCK, + FW_RULE_ACTION_ALLOW, + FW_RULE_ACTION_MAX +} FW_RULE_ACTION; + +typedef enum _tag_FW_RULE_FLAGS +{ + FW_RULE_FLAGS_NONE = 0x0000, + FW_RULE_FLAGS_ACTIVE = 0x0001, + FW_RULE_FLAGS_AUTHENTICATE = 0x0002, + FW_RULE_FLAGS_AUTHENTICATE_WITH_ENCRYPTION = 0x0004, + FW_RULE_FLAGS_ROUTEABLE_ADDRS_TRAVERSE = 0x0008, + FW_RULE_FLAGS_LOOSE_SOURCE_MAPPED = 0x0010, + FW_RULE_FLAGS_AUTH_WITH_NO_ENCAPSULATION = 0x0020, + FW_RULE_FLAGS_AUTH_WITH_ENC_NEGOTIATE = 0x0040, + FW_RULE_FLAGS_ROUTEABLE_ADDRS_TRAVERSE_DEFER_APP = 0x0080, + FW_RULE_FLAGS_ROUTEABLE_ADDRS_TRAVERSE_DEFER_USER = 0x0100, + FW_RULE_FLAGS_AUTHENTICATE_BYPASS_OUTBOUND = 0x0200, + FW_RULE_FLAGS_MAX = 0x0400, + FW_RULE_FLAGS_MAX_V2_1 = 0x0020, + FW_RULE_FLAGS_MAX_V2_9 = 0x0040, +} FW_RULE_FLAGS; + +typedef struct _tag_FW_RULE2_0 +{ + struct _tag_FW_RULE2_0 *pNext; + USHORT wSchemaVersion; + //[string, range(1,10001), ref] + __range(1, 10001)__nullterminated PWCHAR wszRuleId; + //[string, range(1,10001)] + __range(1, 10001)__nullterminated PWCHAR wszName; + //[string, range(1,10001)] + __range(1, 10001)__nullterminated PWCHAR wszDescription; + FW_PROFILE_TYPE dwProfiles; + //[range(FW_DIR_INVALID, FW_DIR_OUT)] + FW_DIRECTION Direction; + //[range(0,256)] + USHORT wIpProtocol; + //[switch_type(unsigned short), switch_is(wIpProtocol)] + union + { + //[case(6,17)] + struct + { + FW_PORTS LocalPorts; + FW_PORTS RemotePorts; + }; + //[case(1)] + FW_ICMP_TYPE_CODE_LIST V4TypeCodeList; + //[case(58)] + FW_ICMP_TYPE_CODE_LIST V6TypeCodeList; + }; + FW_ADDRESSES LocalAddresses; + FW_ADDRESSES RemoteAddresses; + FW_INTERFACE_LUIDS LocalInterfaceIds; + ULONG dwLocalInterfaceTypes; + //[string, range(1,10001)] + __range(1, 10001)__nullterminated PWCHAR wszLocalApplication; + //[string, range(1,10001)] + __range(1, 10001)__nullterminated PWCHAR wszLocalService; + //[range(FW_RULE_ACTION_INVALID, FW_RULE_ACTION_MAX)] + FW_RULE_ACTION Action; + FW_ENUM_RULES_FLAGS wFlags; + //[string, range(1,10001)] + __range(1, 10001)__nullterminated PWCHAR wszRemoteMachineAuthorizationList; + //[string, range(1,10001)] + __range(1, 10001)__nullterminated PWCHAR wszRemoteUserAuthorizationList; + //[string, range(1,10001)] + __range(1, 10001)__nullterminated PWCHAR wszEmbeddedContext; + FW_OS_PLATFORM_LIST PlatformValidityList; + FW_RULE_STATUS Status; + //[range(FW_RULE_ORIGIN_INVALID, FW_RULE_ORIGIN_MAX)] + FW_RULE_ORIGIN_TYPE Origin; + //[string, range(1,10001)] + __range(1, 10001)__nullterminated PWCHAR wszGPOName; + ULONG Reserved; +} FW_RULE2_0, *PFW_RULE2_0; + +typedef struct _tag_FW_RULE +{ + struct _tag_FW_RULE *pNext; + USHORT wSchemaVersion; + //[string, range(1,512), ref] + __nullterminated PWCHAR wszRuleId; + //[string, range(1,10001)] + __nullterminated PWCHAR wszName; + //[string, range(1,10001)] + __nullterminated PWCHAR wszDescription; + FW_PROFILE_TYPE dwProfiles; + //[range(FW_DIR_INVALID, FW_DIR_OUT)] + FW_DIRECTION Direction; + //[range(0,256)] + USHORT wIpProtocol; + //[switch_type(unsigned short), switch_is(wIpProtocol)] + union + { + //[case(6,17)] + struct + { + FW_PORTS LocalPorts; + FW_PORTS RemotePorts; + }; + //[case(1)] + FW_ICMP_TYPE_CODE_LIST V4TypeCodeList; + //[case(58)] + FW_ICMP_TYPE_CODE_LIST V6TypeCodeList; + }; + FW_ADDRESSES LocalAddresses; + FW_ADDRESSES RemoteAddresses; + FW_INTERFACE_LUIDS LocalInterfaceIds; + ULONG dwLocalInterfaceTypes; + //[string, range(1,10001)] + __nullterminated PWCHAR wszLocalApplication; + //[string, range(1,10001)] + __nullterminated PWCHAR wszLocalService; + //[range(FW_RULE_ACTION_INVALID, FW_RULE_ACTION_MAX)] + FW_RULE_ACTION Action; + FW_ENUM_RULES_FLAGS wFlags; + //[string, range(1,10001)] + __nullterminated PWCHAR wszRemoteMachineAuthorizationList; + //[string, range(1,10001)] + __nullterminated PWCHAR wszRemoteUserAuthorizationList; + //[string, range(1,10001)] + __nullterminated PWCHAR wszEmbeddedContext; + FW_OS_PLATFORM_LIST PlatformValidityList; + FW_RULE_STATUS Status; + //[range(FW_RULE_ORIGIN_INVALID, FW_RULE_ORIGIN_MAX)] + FW_RULE_ORIGIN_TYPE Origin; + //[string, range(1,10001)] + __nullterminated PWCHAR wszGPOName; + ULONG Reserved; + //[size_is((Reserved & FW_OBJECT_CTRL_FLAG_INCLUDE_METADATA) ? 1 : 0)] + PFW_OBJECT_METADATA pMetaData; +} FW_RULE, *PFW_RULE; + +typedef enum _tag_FW_PROFILE_CONFIG +{ + FW_PROFILE_CONFIG_INVALID, + FW_PROFILE_CONFIG_ENABLE_FW, + FW_PROFILE_CONFIG_DISABLE_STEALTH_MODE, + FW_PROFILE_CONFIG_SHIELDED, + FW_PROFILE_CONFIG_DISABLE_UNICAST_RESPONSES_TO_MULTICAST_BROADCAST, + FW_PROFILE_CONFIG_LOG_DROPPED_PACKETS, + FW_PROFILE_CONFIG_LOG_SUCCESS_CONNECTIONS, + FW_PROFILE_CONFIG_LOG_IGNORED_RULES, + FW_PROFILE_CONFIG_LOG_MAX_FILE_SIZE, + FW_PROFILE_CONFIG_LOG_FILE_PATH, + FW_PROFILE_CONFIG_DISABLE_INBOUND_NOTIFICATIONS, + FW_PROFILE_CONFIG_AUTH_APPS_ALLOW_USER_PREF_MERGE, + FW_PROFILE_CONFIG_GLOBAL_PORTS_ALLOW_USER_PREF_MERGE, + FW_PROFILE_CONFIG_ALLOW_LOCAL_POLICY_MERGE, + FW_PROFILE_CONFIG_ALLOW_LOCAL_IPSEC_POLICY_MERGE, + FW_PROFILE_CONFIG_DISABLED_INTERFACES, + FW_PROFILE_CONFIG_DEFAULT_OUTBOUND_ACTION, + FW_PROFILE_CONFIG_DEFAULT_INBOUND_ACTION, + FW_PROFILE_CONFIG_MAX +} FW_PROFILE_CONFIG; + +typedef enum _FW_GLOBAL_CONFIG_IPSEC_EXEMPT_VALUES +{ + FW_GLOBAL_CONFIG_IPSEC_EXEMPT_NONE = 0x0000, + FW_GLOBAL_CONFIG_IPSEC_EXEMPT_NEIGHBOR_DISC = 0x0001, + FW_GLOBAL_CONFIG_IPSEC_EXEMPT_ICMP = 0x0002, + FW_GLOBAL_CONFIG_IPSEC_EXEMPT_ROUTER_DISC = 0x0004, + FW_GLOBAL_CONFIG_IPSEC_EXEMPT_DHCP = 0x0008, + FW_GLOBAL_CONFIG_IPSEC_EXEMPT_MAX = 0x0010, + FW_GLOBAL_CONFIG_IPSEC_EXEMPT_MAX_V2_0 = 0x0004 +} FW_GLOBAL_CONFIG_IPSEC_EXEMPT_VALUES; + +typedef enum _FW_GLOBAL_CONFIG_PRESHARED_KEY_ENCODING_VALUES +{ + FW_GLOBAL_CONFIG_PRESHARED_KEY_ENCODING_NONE = 0, + FW_GLOBAL_CONFIG_PRESHARED_KEY_ENCODING_UTF_8, + FW_GLOBAL_CONFIG_PRESHARED_KEY_ENCODING_MAX +} FW_GLOBAL_CONFIG_PRESHARED_KEY_ENCODING_VALUES; + +typedef enum _FW_GLOBAL_CONFIG_IPSEC_THROUGH_NAT_VALUES +{ + FW_GLOBAL_CONFIG_IPSEC_THROUGH_NAT_NEVER = 0, + FW_GLOBAL_CONFIG_IPSEC_THROUGH_NAT_SERVER_BEHIND_NAT, + FW_GLOBAL_CONFIG_IPSEC_THROUGH_NAT_SERVER_AND_CLIENT_BEHIND_NAT, + FW_GLOBAL_CONFIG_IPSEC_THROUGH_NAT_MAX +} FW_GLOBAL_CONFIG_IPSEC_THROUGH_NAT_VALUES; + +typedef enum _tag_FW_GLOBAL_CONFIG +{ + FW_GLOBAL_CONFIG_INVALID, + FW_GLOBAL_CONFIG_POLICY_VERSION_SUPPORTED, + FW_GLOBAL_CONFIG_CURRENT_PROFILE, + FW_GLOBAL_CONFIG_DISABLE_STATEFUL_FTP, + FW_GLOBAL_CONFIG_DISABLE_STATEFUL_PPTP, + FW_GLOBAL_CONFIG_SA_IDLE_TIME, + FW_GLOBAL_CONFIG_PRESHARED_KEY_ENCODING, + FW_GLOBAL_CONFIG_IPSEC_EXEMPT, + FW_GLOBAL_CONFIG_CRL_CHECK, + FW_GLOBAL_CONFIG_IPSEC_THROUGH_NAT, + FW_GLOBAL_CONFIG_POLICY_VERSION, + FW_GLOBAL_CONFIG_BINARY_VERSION_SUPPORTED, + FW_GLOBAL_CONFIG_IPSEC_TUNNEL_REMOTE_MACHINE_AUTHORIZATION_LIST, + FW_GLOBAL_CONFIG_IPSEC_TUNNEL_REMOTE_USER_AUTHORIZATION_LIST, + FW_GLOBAL_CONFIG_MAX +} FW_GLOBAL_CONFIG; + +typedef enum _FW_CONFIG_FLAGS +{ + FW_CONFIG_FLAG_RETURN_DEFAULT_IF_NOT_FOUND = 0x0001 +} FW_CONFIG_FLAGS; + +typedef struct tag_FW_NETWORK +{ + __nullterminated PWCHAR pszName; + FW_PROFILE_TYPE ProfileType; +} FW_NETWORK, *PFW_NETWORK; + +typedef struct tag_FW_ADAPTER +{ + __nullterminated PWCHAR pszFriendlyName; + GUID Guid; +} FW_ADAPTER, *PFW_ADAPTER; + +typedef struct tag_FW_DIAG_APP +{ + __nullterminated PWCHAR pszAppPath; +} FW_DIAG_APP, *PFW_DIAG_APP; + +typedef enum tag_FW_RULE_CATEGORY //[v1_enum] +{ + FW_RULE_CATEGORY_BOOT, + FW_RULE_CATEGORY_STEALTH, + FW_RULE_CATEGORY_FIREWALL, + FW_RULE_CATEGORY_CONSEC, + FW_RULE_CATEGORY_MAX +} FW_RULE_CATEGORY, *PFW_RULE_CATEGORY; + +typedef struct tag_FW_PRODUCT +{ + ULONG dwFlags; + ULONG dwNumRuleCategories; + //[size_is(dwNumRuleCategories), unique] + FW_RULE_CATEGORY* pRuleCategories; + //[string, ref] + __nullterminated PWCHAR pszDisplayName; + //[string, unique] + __nullterminated PWCHAR pszPathToSignedProductExe; +} FW_PRODUCT, *PFW_PRODUCT; + +typedef enum _tag_FW_IP_VERSION +{ + FW_IP_VERSION_INVALID, + FW_IP_VERSION_V4, + FW_IP_VERSION_V6, + FW_IP_VERSION_MAX +} FW_IP_VERSION; + +typedef enum _tag_FW_IPSEC_PHASE +{ + FW_IPSEC_PHASE_INVALID, + FW_IPSEC_PHASE_1, + FW_IPSEC_PHASE_2, + FW_IPSEC_PHASE_MAX +} FW_IPSEC_PHASE; + +typedef enum _tag_FW_CS_RULE_FLAGS +{ + FW_CS_RULE_FLAGS_NONE = 0x00, + FW_CS_RULE_FLAGS_ACTIVE = 0x01, + FW_CS_RULE_FLAGS_DTM = 0x02, + FW_CS_RULE_FLAGS_TUNNEL_BYPASS_IF_ENCRYPTED = 0x08, + FW_CS_RULE_FLAGS_OUTBOUND_CLEAR = 0x10, + FW_CS_RULE_FLAGS_APPLY_AUTHZ = 0x20, + FW_CS_RULE_FLAGS_MAX = 0x40, + FW_CS_RULE_FLAGS_MAX_V2_1 = 0x02, + FW_CS_RULE_FLAGS_MAX_V2_8 = 0x04 +} FW_CS_RULE_FLAGS; + +typedef enum _tag_FW_CS_RULE_ACTION +{ + FW_CS_RULE_ACTION_INVALID, + FW_CS_RULE_ACTION_SECURE_SERVER, + FW_CS_RULE_ACTION_BOUNDARY, + FW_CS_RULE_ACTION_SECURE, + FW_CS_RULE_ACTION_DO_NOT_SECURE, + FW_CS_RULE_ACTION_MAX +} FW_CS_RULE_ACTION; + +typedef enum _tag_FW_KEY_MODULE_ +{ + FW_KEY_MODULE_DEFAULT, + FW_KEY_MODULE_IKEv1, + FW_KEY_MODULE_AUTHIP, + FW_KEY_MODULE_MAX +} FW_KEY_MODULE; + +typedef struct _tag_FW_CS_RULE2_10 +{ + struct _tag_FW_CS_RULE2_0 *pNext; + USHORT wSchemaVersion; + // [string, range(1,512), ref] + __nullterminated PWCHAR wszRuleId; + //[string, range(1,10001)] + __nullterminated PWCHAR wszName; + //[string, range(1,10001)] + __nullterminated PWCHAR wszDescription; + FW_PROFILE_TYPE dwProfiles; + FW_ADDRESSES Endpoint1; + FW_ADDRESSES Endpoint2; + FW_INTERFACE_LUIDS LocalInterfaceIds; + ULONG dwLocalInterfaceTypes; + ULONG dwLocalTunnelEndpointV4; + UCHAR LocalTunnelEndpointV6[16]; + ULONG dwRemoteTunnelEndpointV4; + UCHAR RemoteTunnelEndpointV6[16]; + FW_PORTS Endpoint1Ports; + FW_PORTS Endpoint2Ports; + //[range(0,256)] + USHORT wIpProtocol; + //[string, range(1,1001)] + __nullterminated PWCHAR wszPhase1AuthSet; + //[string, range(1,1001)] + __nullterminated PWCHAR wszPhase2CryptoSet; + //[string, range(1,1001)] + __nullterminated PWCHAR wszPhase2AuthSet; + //[range(FW_CS_RULE_ACTION_SECURE_SERVER, FW_CS_RULE_ACTION_MAX)] + FW_CS_RULE_ACTION Action; + FW_ENUM_RULES_FLAGS wFlags; + //[string, range(1,10001)] + __nullterminated PWCHAR wszEmbeddedContext; + FW_OS_PLATFORM_LIST PlatformValidityList; + //[range(FW_RULE_ORIGIN_INVALID, FW_RULE_ORIGIN_MAX-1)] + FW_RULE_ORIGIN_TYPE Origin; + //[string, range(1,10001)] wchar_t* wszGPOName; + FW_RULE_STATUS Status; + //[string, range(1,512)] + __nullterminated PWCHAR wszRemoteTunnelEndpointFqdn; + FW_ADDRESSES RemoteTunnelEndpoints; + FW_KEY_MODULE KeyModule; +} FW_CS_RULE2_10, *PFW_CS_RULE2_10; + +typedef struct _tag_FW_CS_RULE2_0 +{ + struct _tag_FW_CS_RULE2_0 *pNext; + USHORT wSchemaVersion; + //[string, range(1,512), ref] + __nullterminated PWCHAR wszRuleId; + //[string, range(1,10001)] + __nullterminated PWCHAR wszName; + //[string, range(1,10001)] + __nullterminated PWCHAR wszDescription; + FW_PROFILE_TYPE dwProfiles; + FW_ADDRESSES Endpoint1; + FW_ADDRESSES Endpoint2; + FW_INTERFACE_LUIDS LocalInterfaceIds; + ULONG dwLocalInterfaceTypes; + ULONG dwLocalTunnelEndpointV4; + UCHAR LocalTunnelEndpointV6[16]; + ULONG dwRemoteTunnelEndpointV4; + UCHAR RemoteTunnelEndpointV6[16]; + FW_PORTS Endpoint1Ports; + FW_PORTS Endpoint2Ports; + //[range(0,256)] + USHORT wIpProtocol; + //[string, range(1,1001)] + __nullterminated PWCHAR wszPhase1AuthSet; + //[string, range(1,1001)] + __nullterminated PWCHAR wszPhase2CryptoSet; + //[string, range(1,1001)] + __nullterminated PWCHAR wszPhase2AuthSet; + //[range(FW_CS_RULE_ACTION_SECURE_SERVER, FW_CS_RULE_ACTION_MAX - 1)] + FW_CS_RULE_ACTION Action; + FW_ENUM_RULES_FLAGS wFlags; + //[string, range(1,10001)] + __nullterminated PWCHAR wszEmbeddedContext; + FW_OS_PLATFORM_LIST PlatformValidityList; + //[range(FW_RULE_ORIGIN_INVALID, FW_RULE_ORIGIN_MAX-1)] + FW_RULE_ORIGIN_TYPE Origin; + //[string, range(1,10001)] + __nullterminated PWCHAR wszGPOName; + FW_RULE_STATUS Status; +} FW_CS_RULE2_0, *PFW_CS_RULE2_0; + +typedef struct _tag_FW_CS_RULE +{ + struct _tag_FW_CS_RULE *pNext; + USHORT wSchemaVersion; + //[string, range(1,10001), ref] + __nullterminated PWCHAR wszRuleId; + //[string, range(1,10001)] + __nullterminated PWCHAR wszName; + //[string, range(1,10001)] + __nullterminated PWCHAR wszDescription; + FW_PROFILE_TYPE dwProfiles; + FW_ADDRESSES Endpoint1; + FW_ADDRESSES Endpoint2; + FW_INTERFACE_LUIDS LocalInterfaceIds; + ULONG dwLocalInterfaceTypes; + ULONG dwLocalTunnelEndpointV4; + UCHAR LocalTunnelEndpointV6[16]; + ULONG dwRemoteTunnelEndpointV4; + UCHAR RemoteTunnelEndpointV6[16]; + FW_PORTS Endpoint1Ports; + FW_PORTS Endpoint2Ports; + //[range(0,256)] + USHORT wIpProtocol; + //[string, range(1,10001)] + __nullterminated PWCHAR wszPhase1AuthSet; + //[string, range(1,10001)] + __nullterminated PWCHAR wszPhase2CryptoSet; + //[string, range(1,10001)] + __nullterminated PWCHAR wszPhase2AuthSet; + //[range(FW_CS_RULE_ACTION_SECURE_SERVER, FW_CS_RULE_ACTION_MAX - 1)] + FW_CS_RULE_ACTION Action; + USHORT wFlags; + //[string, range(1,10001)] + __nullterminated PWCHAR wszEmbeddedContext; + FW_OS_PLATFORM_LIST PlatformValidityList; + //[range(FW_RULE_ORIGIN_INVALID, FW_RULE_ORIGIN_MAX-1)] + FW_RULE_ORIGIN_TYPE Origin; + //[string, range(1,10001)] + __nullterminated PWCHAR wszGPOName; + FW_RULE_STATUS Status; + //[string, range(1,512)] + __nullterminated PWCHAR wszMMParentRuleId; + ULONG Reserved; + //[size_is((Reserved & FW_OBJECT_CTRL_FLAG_INCLUDE_METADATA) ? 1 : 0)] + PFW_OBJECT_METADATA pMetaData; +} FW_CS_RULE, *PFW_CS_RULE; + +typedef enum _tag_FW_AUTH_METHOD +{ + FW_AUTH_METHOD_INVALID, + FW_AUTH_METHOD_ANONYMOUS, + FW_AUTH_METHOD_MACHINE_KERB, + FW_AUTH_METHOD_MACHINE_SHKEY, + FW_AUTH_METHOD_MACHINE_NTLM, + FW_AUTH_METHOD_MACHINE_CERT, + FW_AUTH_METHOD_USER_KERB, + FW_AUTH_METHOD_USER_CERT, + FW_AUTH_METHOD_USER_NTLM, + FW_AUTH_METHOD_MAX +} FW_AUTH_METHOD; + +typedef enum _tag_FW_AUTH_SUITE_FLAGS +{ + FW_AUTH_SUITE_FLAGS_NONE = 0x0000, + FW_AUTH_SUITE_FLAGS_CERT_EXCLUDE_CA_NAME = 0x0001, + FW_AUTH_SUITE_FLAGS_HEALTH_CERT = 0x0002, + FW_AUTH_SUITE_FLAGS_PERFORM_CERT_ACCOUNT_MAPPING = 0x0004, + FW_AUTH_SUITE_FLAGS_CERT_SIGNING_ECDSA256 = 0x0008, + FW_AUTH_SUITE_FLAGS_CERT_SIGNING_ECDSA384 = 0x0010, + FW_AUTH_SUITE_FLAGS_MAX_V2_1 = 0x0020, + FW_AUTH_SUITE_FLAGS_INTERMEDIATE_CA = 0x0020, + FW_AUTH_SUITE_FLAGS_MAX = 0x0040 +} FW_AUTH_SUITE_FLAGS; + +typedef struct _tag_FW_AUTH_SUITE +{ + //[range(FW_AUTH_METHOD_INVALID+1, FW_AUTH_METHOD_MAX)] + FW_AUTH_METHOD Method; + USHORT wFlags; + //[switch_type(FW_AUTH_METHOD), switch_is(Method)] + union + { + //[case(FW_AUTH_METHOD_MACHINE_CERT,FW_AUTH_METHOD_USER_CERT)] + struct + { + //[ref, string] + __nullterminated PWCHAR wszCAName; + }; + //[case(FW_AUTH_METHOD_MACHINE_SHKEY)] + struct + { + //[ref, string] + __nullterminated PWCHAR wszSHKey; + }; + }; +} FW_AUTH_SUITE, *PFW_AUTH_SUITE; + +typedef struct _tag_FW_AUTH_SET +{ + struct _tag_FW_AUTH_SET* pNext; + USHORT wSchemaVersion; + //[range(FW_IPSEC_PHASE_INVALID+1, FW_IPSEC_PHASE_MAX-1)] + FW_IPSEC_PHASE IpSecPhase; + //[string, range(1,255), ref] + __nullterminated PWCHAR wszSetId; + //[string, range(1,10001)] + __nullterminated PWCHAR wszName; + //[string, range(1,10001)] + __nullterminated PWCHAR wszDescription; + //[string, range(1,10001)] + __nullterminated PWCHAR wszEmbeddedContext; + //[range(0, 1000)] + ULONG dwNumSuites; + //[size_is(dwNumSuites)] + PFW_AUTH_SUITE pSuites; + //[range(FW_RULE_ORIGIN_INVALID, FW_RULE_ORIGIN_MAX-1)] + FW_RULE_ORIGIN_TYPE Origin; + //[string, range(1,10001)] + __nullterminated PWCHAR wszGPOName; + FW_RULE_STATUS Status; + ULONG dwAuthSetFlags; +} FW_AUTH_SET, *PFW_AUTH_SET; + +typedef enum _tag_FW_CRYPTO_KEY_EXCHANGE_TYPE +{ + FW_CRYPTO_KEY_EXCHANGE_NONE = 0, + FW_CRYPTO_KEY_EXCHANGE_DH1, + FW_CRYPTO_KEY_EXCHANGE_DH2, + FW_CRYPTO_KEY_EXCHANGE_ECDH256, + FW_CRYPTO_KEY_EXCHANGE_ECDH384, + FW_CRYPTO_KEY_EXCHANGE_DH2048, + FW_CRYPTO_KEY_EXCHANGE_DH14 = FW_CRYPTO_KEY_EXCHANGE_DH2048, + FW_CRYPTO_KEY_EXCHANGE_MAX +} FW_CRYPTO_KEY_EXCHANGE_TYPE; + +typedef enum _tag_FW_CRYPTO_ENCRYPTION_TYPE +{ + FW_CRYPTO_ENCRYPTION_NONE, + FW_CRYPTO_ENCRYPTION_DES, + FW_CRYPTO_ENCRYPTION_3DES, + FW_CRYPTO_ENCRYPTION_AES128, + FW_CRYPTO_ENCRYPTION_AES192, + FW_CRYPTO_ENCRYPTION_AES256, + FW_CRYPTO_ENCRYPTION_AES_GCM128, + FW_CRYPTO_ENCRYPTION_AES_GCM192, + FW_CRYPTO_ENCRYPTION_AES_GCM256, + FW_CRYPTO_ENCRYPTION_MAX, + FW_CRYPTO_ENCRYPTION_MAX_V2_0 = FW_CRYPTO_ENCRYPTION_AES_GCM128 +} FW_CRYPTO_ENCRYPTION_TYPE; + +typedef enum _tag_FW_CRYPTO_HASH_TYPE +{ + FW_CRYPTO_HASH_NONE, + FW_CRYPTO_HASH_MD5, + FW_CRYPTO_HASH_SHA1, + FW_CRYPTO_HASH_SHA256, + FW_CRYPTO_HASH_SHA384, + FW_CRYPTO_HASH_AES_GMAC128, + FW_CRYPTO_HASH_AES_GMAC192, + FW_CRYPTO_HASH_AES_GMAC256, + FW_CRYPTO_HASH_MAX, + FW_CRYPTO_HASH_MAX_V2_0 = FW_CRYPTO_HASH_SHA256 +} FW_CRYPTO_HASH_TYPE; + +typedef enum _tag_FW_CRYPTO_PROTOCOL_TYPE +{ + FW_CRYPTO_PROTOCOL_INVALID, + FW_CRYPTO_PROTOCOL_AH, + FW_CRYPTO_PROTOCOL_ESP, + FW_CRYPTO_PROTOCOL_BOTH, + FW_CRYPTO_PROTOCOL_AUTH_NO_ENCAP, + FW_CRYPTO_PROTOCOL_MAX, + FW_CRYPTO_PROTOCOL_MAX_2_1 = (FW_CRYPTO_PROTOCOL_BOTH + 1) +} FW_CRYPTO_PROTOCOL_TYPE; + +typedef struct _tag_FW_PHASE1_CRYPTO_SUITE +{ + //[range(FW_CRYPTO_KEY_EXCHANGE_NONE, FW_CRYPTO_KEY_EXCHANGE_MAX-1)] + FW_CRYPTO_KEY_EXCHANGE_TYPE KeyExchange; + //[range(FW_CRYPTO_ENCRYPTION_NONE+1, FW_CRYPTO_ENCRYPTION_MAX-1)] + FW_CRYPTO_ENCRYPTION_TYPE Encryption; + //[range(FW_CRYPTO_HASH_NONE+1, FW_CRYPTO_HASH_MAX-1)] + FW_CRYPTO_HASH_TYPE Hash; + ULONG dwP1CryptoSuiteFlags; +} FW_PHASE1_CRYPTO_SUITE, *PFW_PHASE1_CRYPTO_SUITE; + +typedef struct _tag_FW_PHASE2_CRYPTO_SUITE +{ + //[range(FW_CRYPTO_PROTOCOL_INVALID+1, FW_CRYPTO_PROTOCOL_MAX-1)] + FW_CRYPTO_PROTOCOL_TYPE Protocol; + FW_CRYPTO_HASH_TYPE AhHash; + FW_CRYPTO_HASH_TYPE EspHash; + FW_CRYPTO_ENCRYPTION_TYPE Encryption; + ULONG dwTimeoutMinutes; + ULONG dwTimeoutKBytes; + ULONG dwP2CryptoSuiteFlags; +} FW_PHASE2_CRYPTO_SUITE, *PFW_PHASE2_CRYPTO_SUITE; + +typedef enum _tag_FW_PHASE1_CRYPTO_FLAGS +{ + FW_PHASE1_CRYPTO_FLAGS_NONE = 0x00, + FW_PHASE1_CRYPTO_FLAGS_DO_NOT_SKIP_DH = 0x01, + FW_PHASE1_CRYPTO_FLAGS_MAX = 0x02 +} FW_PHASE1_CRYPTO_FLAGS; + +typedef enum _tag_FW_PHASE2_CRYPTO_PFS +{ + FW_PHASE2_CRYPTO_PFS_INVALID, + FW_PHASE2_CRYPTO_PFS_DISABLE, + FW_PHASE2_CRYPTO_PFS_PHASE1, + FW_PHASE2_CRYPTO_PFS_DH1, + FW_PHASE2_CRYPTO_PFS_DH2, + FW_PHASE2_CRYPTO_PFS_DH2048, + FW_PHASE2_CRYPTO_PFS_ECDH256, + FW_PHASE2_CRYPTO_PFS_ECDH384, + FW_PHASE2_CRYPTO_PFS_MAX +} FW_PHASE2_CRYPTO_PFS; + +typedef struct _tag_FW_CRYPTO_SET +{ + struct _tag_FW_CRYPTO_SET* pNext; + USHORT wSchemaVersion; + //[range(FW_IPSEC_PHASE_INVALID+1, FW_IPSEC_PHASE_MAX-1)] + FW_IPSEC_PHASE IpSecPhase; + //[string, range(1,255), ref] + __range(1, 255)__nullterminated PWCHAR wszSetId; + //[string, range(1,10001)] + __range(1, 10001)__nullterminated PWCHAR wszName; + //[string, range(1,10001)] + __range(1, 10001)__nullterminated PWCHAR wszDescription; + //[string, range(1,10001)] + __range(1, 10001)__nullterminated PWCHAR wszEmbeddedContext; + //[switch_type(FW_IPSEC_PHASE), switch_is(IpSecPhase)] + union + { + //[case(FW_IPSEC_PHASE_1)] + struct + { + USHORT wFlags; + //[range(0, 1000)] + ULONG dwNumPhase1Suites; + //[size_is(dwNumPhase1Suites)] + PFW_PHASE1_CRYPTO_SUITE pPhase1Suites; + ULONG dwTimeoutMinutes; + ULONG dwTimeoutSessions; + }; + //[case(FW_IPSEC_PHASE_2)] + struct + { + FW_PHASE2_CRYPTO_PFS Pfs; + //[range(0, 1000)] + ULONG dwNumPhase2Suites; + //[size_is(dwNumPhase2Suites)] + PFW_PHASE2_CRYPTO_SUITE pPhase2Suites; + }; + }; + //[range(FW_RULE_ORIGIN_INVALID, FW_RULE_ORIGIN_MAX-1)] + FW_RULE_ORIGIN_TYPE Origin; + //[string, range(1,10001)] + __nullterminated PWCHAR wszGPOName; + FW_RULE_STATUS Status; + ULONG dwCryptoSetFlags; +} FW_CRYPTO_SET, *PFW_CRYPTO_SET; + +typedef struct _tag_FW_BYTE_BLOB +{ + //[range(0, 10000)] + ULONG dwSize; + //[size_is(dwSize)] + PUCHAR Blob; +} FW_BYTE_BLOB, *PFW_BYTE_BLOB; + +typedef struct _tag_FW_COOKIE_PAIR +{ + ULONGLONG Initiator; + ULONGLONG Responder; +} FW_COOKIE_PAIR, *PFW_COOKIE_PAIR; + +typedef enum _tag_FW_PHASE1_KEY_MODULE_TYPE +{ + FW_PHASE1_KEY_MODULE_INVALID, + FW_PHASE1_KEY_MODULE_IKE, + FW_PHASE1_KEY_MODULE_AUTH_IP, + FW_PHASE1_KEY_MODULE_MAX +} FW_PHASE1_KEY_MODULE_TYPE; + +typedef struct _tag_FW_CERT_INFO +{ + FW_BYTE_BLOB SubjectName; + //[range(FW_AUTH_SUITE_FLAGS_NONE, FW_AUTH_SUITE_FLAGS_MAX-1)] + ULONG dwCertFlags; +} FW_CERT_INFO, *PFW_CERT_INFO; + +typedef struct _tag_FW_AUTH_INFO +{ + //[range(FW_AUTH_METHOD_INVALID + 1, FW_AUTH_METHOD_MAX)] + FW_AUTH_METHOD AuthMethod; + //[switch_type(FW_AUTH_METHOD), switch_is(AuthMethod)] + union + { + //[case(FW_AUTH_METHOD_MACHINE_CERT,FW_AUTH_METHOD_USER_CERT)] + struct + { + FW_CERT_INFO MyCert; + FW_CERT_INFO PeerCert; + }; + //[case(FW_AUTH_METHOD_MACHINE_KERB,FW_AUTH_METHOD_USER_KERB)] + struct + { + //[string, range(1,10001)] + __nullterminated PWCHAR wszMyId; + //[string, range(1,10001)] + __nullterminated PWCHAR wszPeerId; + }; + }; + ULONG dwAuthInfoFlags; +} FW_AUTH_INFO, *PFW_AUTH_INFO; + +typedef struct _tag_FW_ENDPOINTS +{ + //[range(FW_IP_VERSION_INVALID+1, FW_IP_VERSION_MAX-1)] + FW_IP_VERSION IpVersion; + ULONG dwSourceV4Address; + ULONG dwDestinationV4Address; + UCHAR SourceV6Address[16]; + UCHAR DestinationV6Address[16]; +} FW_ENDPOINTS, *PFW_ENDPOINTS; + +typedef struct _tag_FW_PHASE1_SA_DETAILS +{ + ULONGLONG SaId; + //[range(FW_PHASE1_KEY_MODULE_INVALID+1, FW_PHASE1_KEY_MODULE_MAX-1)] + FW_PHASE1_KEY_MODULE_TYPE KeyModuleType; + FW_ENDPOINTS Endpoints; + FW_PHASE1_CRYPTO_SUITE SelectedProposal; + ULONG dwProposalLifetimeKBytes; + ULONG dwProposalLifetimeMinutes; + ULONG dwProposalMaxNumPhase2; + FW_COOKIE_PAIR CookiePair; + PFW_AUTH_INFO pFirstAuth; + PFW_AUTH_INFO pSecondAuth; + ULONG dwP1SaFlags; +} FW_PHASE1_SA_DETAILS, *PFW_PHASE1_SA_DETAILS; + +typedef enum _tag_FW_PHASE2_TRAFFIC_TYPE +{ + FW_PHASE2_TRAFFIC_TYPE_INVALID, + FW_PHASE2_TRAFFIC_TYPE_TRANSPORT, + FW_PHASE2_TRAFFIC_TYPE_TUNNEL, + FW_PHASE2_TRAFFIC_TYPE_MAX +} FW_PHASE2_TRAFFIC_TYPE; + +typedef struct _tag_FW_PHASE2_SA_DETAILS +{ + ULONGLONG SaId; + //[range(FW_DIR_INVALID+1, FW_DIR_MAX-1)] + FW_DIRECTION Direction; + FW_ENDPOINTS Endpoints; + USHORT wLocalPort; + USHORT wRemotePort; + USHORT wIpProtocol; + FW_PHASE2_CRYPTO_SUITE SelectedProposal; + FW_PHASE2_CRYPTO_PFS Pfs; + GUID TransportFilterId; + ULONG dwP2SaFlags; +} FW_PHASE2_SA_DETAILS, *PFW_PHASE2_SA_DETAILS; + +typedef + //[switch_type(FW_PROFILE_CONFIG)] +union _FW_PROFILE_CONFIG_VALUE +{ + //[case(FW_PROFILE_CONFIG_LOG_FILE_PATH)] + //[string, range(1,10001)] + __nullterminated PWCHAR wszStr; + //[case(FW_PROFILE_CONFIG_DISABLED_INTERFACES)] + PFW_INTERFACE_LUIDS pDisabledInterfaces; + //[case(FW_PROFILE_CONFIG_ENABLE_FW, + //FW_PROFILE_CONFIG_DISABLE_STEALTH_MODE, + // FW_PROFILE_CONFIG_SHIELDED, + // FW_PROFILE_CONFIG_DISABLE_UNICAST_RESPONSES_TO_MULTICAST_BROADCAST, + // FW_PROFILE_CONFIG_LOG_DROPPED_PACKETS, + // FW_PROFILE_CONFIG_LOG_SUCCESS_CONNECTIONS, + // FW_PROFILE_CONFIG_LOG_IGNORED_RULES, + // FW_PROFILE_CONFIG_LOG_MAX_FILE_SIZE, + // FW_PROFILE_CONFIG_DISABLE_INBOUND_NOTIFICATIONS, + // FW_PROFILE_CONFIG_AUTH_APPS_ALLOW_USER_PREF_MERGE, + // FW_PROFILE_CONFIG_GLOBAL_PORTS_ALLOW_USER_PREF_MERGE, + // FW_PROFILE_CONFIG_ALLOW_LOCAL_POLICY_MERGE, + // FW_PROFILE_CONFIG_ALLOW_LOCAL_IPSEC_POLICY_MERGE, + // FW_PROFILE_CONFIG_DEFAULT_OUTBOUND_ACTION, + // FW_PROFILE_CONFIG_DEFAULT_INBOUND_ACTION)] + PULONG pdwVal; +} FW_PROFILE_CONFIG_VALUE, *PFW_PROFILE_CONFIG_VALUE; + +typedef struct _tag_FW_MM_RULE +{ + struct _tag_FW_MM_RULE *pNext; + USHORT wSchemaVersion; + //[string, range(1,512), ref] + __nullterminated PWCHAR wszRuleId; + //[string, range(1,10001)] + __nullterminated PWCHAR wszName; + //[string, range(1,10001)] + __nullterminated PWCHAR wszDescription; + FW_PROFILE_TYPE dwProfiles; + FW_ADDRESSES Endpoint1; + FW_ADDRESSES Endpoint2; + //[string, range(1,255)] + PWCHAR wszPhase1AuthSet; + //[string, range(1,255)] + PWCHAR wszPhase1CryptoSet; + USHORT wFlags; + //[string, range(1,10001)] + __nullterminated PWCHAR wszEmbeddedContext; + FW_OS_PLATFORM_LIST PlatformValidityList; + //[range(FW_RULE_ORIGIN_INVALID, FW_RULE_ORIGIN_MAX-1)] + FW_RULE_ORIGIN_TYPE Origin; + //[string, range(1,10001)] + __nullterminated PWCHAR wszGPOName; + FW_RULE_STATUS Status; + ULONG Reserved; + //[size_is((Reserved & FW_OBJECT_CTRL_FLAG_INCLUDE_METADATA) ? 1 : 0)] + PFW_OBJECT_METADATA pMetaData; +} FW_MM_RULE, *PFW_MM_RULE; + +typedef enum _tag_FW_MATCH_KEY +{ + FW_MATCH_KEY_PROFILE, + FW_MATCH_KEY_STATUS, + FW_MATCH_KEY_OBJECTID, + FW_MATCH_KEY_FILTERID, + FW_MATCH_KEY_APP_PATH, //The APP Path + FW_MATCH_KEY_PROTOCOL, + FW_MATCH_KEY_LOCAL_PORT, + FW_MATCH_KEY_REMOTE_PORT, + FW_MATCH_KEY_GROUP, + FW_MATCH_KEY_SVC_NAME, + FW_MATCH_KEY_DIRECTION, + FW_MATCH_KEY_MAX +} FW_MATCH_KEY; + +typedef enum _tag_FW_DATA_TYPE +{ + FW_DATA_TYPE_EMPTY, + FW_DATA_TYPE_UINT8, + FW_DATA_TYPE_UINT16, + FW_DATA_TYPE_UINT32, + FW_DATA_TYPE_UINT64, + FW_DATA_TYPE_UNICODE_STRING +} FW_DATA_TYPE; + +typedef struct _tag_FW_MATCH_VALUE +{ + FW_DATA_TYPE type; + //[switch_type(FW_DATA_TYPE), switch_is(type)] + union + { + //[case(FW_DATA_TYPE_UINT8)] + UCHAR uInt8; + //[case(FW_DATA_TYPE_UINT16)] + ULONG uInt16; + //[case(FW_DATA_TYPE_UINT32)] + ULONG uInt32; + //[case(FW_DATA_TYPE_UINT64)] + ULONGLONG uInt64; + //[case(FW_DATA_TYPE_UNICODE_STRING)] + struct + { + //[string, range(1,10001)] + PWCHAR wszString; + }; + }; +} FW_MATCH_VALUE; + +typedef enum _tag_FW_MATCH_TYPE +{ + FW_MATCH_TYPE_TRAFFIC_MATCH, + FW_MATCH_TYPE_EQUAL, + FW_MATCH_TYPE_MAX +} FW_MATCH_TYPE; + +typedef struct _tag_FW_QUERY_CONDITION +{ + FW_MATCH_KEY matchKey; + FW_MATCH_TYPE matchType; + FW_MATCH_VALUE matchValue; +} FW_QUERY_CONDITION, *PFW_QUERY_CONDITION; + +typedef struct _tag_FW_QUERY_CONDITIONS +{ + ULONG dwNumEntries; + //[size_is(dwNumEntries)] + FW_QUERY_CONDITION *AndedConditions; +} FW_QUERY_CONDITIONS, *PFW_QUERY_CONDITIONS; + +typedef struct _tag_FW_QUERY +{ + USHORT wSchemaVersion; + ULONG dwNumEntries; + //[size_is(dwNumEntries)] + FW_QUERY_CONDITIONS *ORConditions; + FW_RULE_STATUS Status; +} FW_QUERY, *PFW_QUERY; + +//uuid(6b5bdd1e-528c-422c-af8c-a4079be4fe48) +//version(1.0) + +//fw_free(PVOID) +//fw_allocate(size_t size) + +// unsigned long RRPC_FWOpenPolicyStore( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] unsigned short BinaryVersion, +// [in, range(FW_STORE_TYPE_INVALID+1, FW_STORE_TYPE_MAX-1)] +// FW_STORE_TYPE StoreType, +// [in, range(FW_POLICY_ACCESS_RIGHT_INVALID+1, FW_POLICY_ACCESS_RIGHT_MAX-1)] +// FW_POLICY_ACCESS_RIGHT AccessRight, +// [in] unsigned long dwFlags, +// [out] PFW_POLICY_STORE_HANDLE phPolicyStore +// ); + +typedef ULONG (WINAPI *_FWOpenPolicyStore)( + __in USHORT BinaryVersion, + __in PWCHAR wszMachineOrGPO, + __in FW_STORE_TYPE StoreType, + __in FW_POLICY_ACCESS_RIGHT AccessRight, + __in FW_POLICY_STORE_FLAGS dwFlags, + __out PFW_POLICY_STORE_HANDLE phPolicy + ); + +// unsigned long RRPC_FWClosePolicyStore( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in, out] PFW_POLICY_STORE_HANDLE phPolicyStore +// ); + +typedef ULONG (WINAPI *_FWClosePolicyStore)( + __inout PFW_POLICY_STORE_HANDLE phPolicyStore + ); + +// unsigned long +// RRPC_FWRestoreDefaults( +// [in] FW_CONN_HANDLE rpcConnHandle +// ); + +typedef ULONG (WINAPI *_FWRestoreDefaults)( + __in const __nullterminated PWCHAR wszMachineOrGPO // why is the C# version using this? + ); + +// unsigned long +// RRPC_FWGetGlobalConfig( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] unsigned short BinaryVersion, +// [in] FW_STORE_TYPE StoreType, +// [in, range(FW_GLOBAL_CONFIG_INVALID+1, FW_GLOBAL_CONFIG_MAX-1)] +// FW_GLOBAL_CONFIG configID, +// [in] unsigned long dwFlags, +// [in, out, unique, size_is(cbData), length_is(*pcbTransmittedLen)] +// unsigned char* pBuffer, +// [in] unsigned long cbData, +// [in,out] unsigned long *pcbTransmittedLen, +// [out] unsigned long *pcbRequired +// ); + +typedef ULONG (WINAPI *_FWGetGlobalConfig)( + __in USHORT wBinaryVersion, + __in __nullterminated PWCHAR wszMachineOrGPO, // why is the C# version using this????? + __in FW_STORE_TYPE StoreType, + __in FW_GLOBAL_CONFIG configId, + __in FW_CONFIG_FLAGS dwFlags, + __inout PUCHAR pBuffer, + __out ULONG pdwBufSize + ); + +// unsigned long +// RRPC_FWSetGlobalConfig( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] unsigned short BinaryVersion, +// [in] FW_STORE_TYPE StoreType, +// [in, range(FW_GLOBAL_CONFIG_INVALID+1, FW_GLOBAL_CONFIG_MAX-1)] +// FW_GLOBAL_CONFIG configID, +// [in, unique, size_is(dwBufSize)] +// unsigned char *lpBuffer, +// [in, range(0, 10*1024)] unsigned long dwBufSize +// ); + +typedef ULONG (WINAPI *_FWSetGlobalConfig)( + __in USHORT wBinaryVersion, + __in __nullterminated PWCHAR wszMachineOrGPO, + __in FW_STORE_TYPE StoreType, + __in FW_GLOBAL_CONFIG configId, + __inout PUCHAR lpBuffer, + __in ULONG dwBufSize + ); + +// unsigned long +// RRPC_FWAddFirewallRule( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [in] PFW_RULE2_0 pRule +// ); + +typedef ULONG (WINAPI *_FWAddFirewallRule)( + __in FW_POLICY_STORE_HANDLE hPolicyStore, + __in PFW_RULE2_0 pRule // C# uses ref so do we need __inout ?? + ); + +// unsigned long +// RRPC_FWSetFirewallRule( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [in] PFW_RULE2_0 pRule +// ); + +typedef ULONG (WINAPI *_FWSetFirewallRule)( + __in FW_POLICY_STORE_HANDLE hPolicyStore, + __in PFW_RULE2_0 pRule + ); + +// unsigned long +// RRPC_FWDeleteFirewallRule( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [in, string, ref] const wchar_t* wszRuleID +// ); + +typedef ULONG (WINAPI *_FWDeleteFirewallRule)( + __in FW_POLICY_STORE_HANDLE hPolicyStore, + __in const __nullterminated PWCHAR wszRuleID + ); + +// unsigned long +// RRPC_FWDeleteAllFirewallRules( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore +// ); + +typedef ULONG (WINAPI *_FWDeleteAllFirewallRules)( + __in FW_POLICY_STORE_HANDLE hPolicyStore + ); + +// unsigned long +// RRPC_FWEnumFirewallRules( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [in] unsigned long dwFilteredByStatus, +// [in] unsigned long dwProfileFilter, +// [in] unsigned short wFlags, +// [out, ref] unsigned long *pdwNumRules, +// [out] PFW_RULE2_0 *ppRules +// ); + +typedef ULONG (WINAPI *_FWEnumFirewallRules)( + __in FW_POLICY_STORE_HANDLE hPolicyStore, + __in FW_RULE_STATUS_CLASS dwFilteredByStatus, + __in FW_PROFILE_TYPE dwProfileFilter, + __in FW_ENUM_RULES_FLAGS wFlags, + __out PULONG pdwNumRules, + __out_ecount(pdwNumRules) PFW_RULE2_0 *ppFwRules + ); + +///////////////////////////////////////// + +// unsigned long +// RRPC_FWGetConfig( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [in, range(FW_PROFILE_CONFIG_ENABLE_FW, FW_PROFILE_CONFIG_MAX-1)] +// FW_PROFILE_CONFIG configID, +// [in] FW_PROFILE_TYPE Profile, +// [in] unsigned long dwFlags, +// [in, out, unique, size_is(cbData), length_is(*pcbTransmittedLen)] +// unsigned char* pBuffer, +// [in] unsigned long cbData, +// [in,out] unsigned long *pcbTransmittedLen, +// [out] unsigned long *pcbRequired +// ); + +typedef ULONG (WINAPI *_FWGetConfig)( + __in FW_POLICY_STORE_HANDLE hPolicyStore, + __in FW_PROFILE_CONFIG configId, + __in FW_PROFILE_TYPE Profile, + __in FW_CONFIG_FLAGS dwFlags, + __inout PCHAR pBuffer, + __in ULONG pdwBufSize + ); + +// unsigned long +// RRPC_FWSetConfig( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [in, range(FW_PROFILE_CONFIG_ENABLE_FW, FW_PROFILE_CONFIG_MAX-1)] +// FW_PROFILE_CONFIG configID, +// [in] FW_PROFILE_TYPE Profile, +// [in, switch_is(configID)] FW_PROFILE_CONFIG_VALUE pConfig, +// [in, range(0, 10*1024)] unsigned long dwBufSize +// ); + +typedef ULONG (WINAPI *_FWSetConfig)( + __in FW_POLICY_STORE_HANDLE hPolicyStore, + __in FW_PROFILE_CONFIG configId, + __in FW_PROFILE_TYPE Profile, + __in FW_PROFILE_CONFIG_VALUE pConfig, + __in ULONG dwBufSize + ); + +// unsigned long +// RRPC_FWAddConnectionSecurityRule( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_CS_RULE2_0 pRule +// ); + +typedef ULONG (WINAPI *_FWAddConnectionSecurityRule)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_CS_RULE2_0 pRule + ); + +// unsigned long +// RRPC_FWSetConnectionSecurityRule( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_CS_RULE2_0 pRule +// ); + +typedef ULONG (WINAPI *_FWSetConnectionSecurityRule)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_CS_RULE2_0 pRule + ); + +// unsigned long +// RRPC_FWDeleteConnectionSecurityRule( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in, string, ref] wchar_t *pRuleId +// ); + +typedef ULONG (WINAPI *_FWDeleteConnectionSecurityRule)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in __nullterminated PWCHAR pRuleId + ); + +// unsigned long +// RRPC_FWDeleteAllConnectionSecurityRules( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy +// ); + +typedef ULONG (WINAPI *_FWDeleteAllConnectionSecurityRules)( + __in FW_POLICY_STORE_HANDLE hPolicy + ); + +// unsigned long +// RRPC_FWEnumConnectionSecurityRules( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] unsigned long dwFilteredByStatus, +// [in] unsigned long dwProfileFilter, +// [in] unsigned short wFlags, +// [out, ref] unsigned long * pdwNumRules, +// [out] PFW_CS_RULE2_0* ppRules +// ); + +typedef ULONG (WINAPI *_FWEnumConnectionSecurityRules)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in FW_RULE_STATUS_CLASS dwFilteredByStatus, + __in FW_PROFILE_TYPE dwProfileFilter, + __in FW_ENUM_RULES_FLAGS wFlags, + __out PULONG pdwNumRules, + __out_ecount(pdwNumRules) PFW_CS_RULE2_0* ppRules + ); + +// unsigned long +// RRPC_FWAddAuthenticationSet( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_AUTH_SET pAuth +// ); + +typedef ULONG (WINAPI *_FWAddAuthenticationSet)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_AUTH_SET pAuth + ); + +// unsigned long +// RRPC_FWSetAuthenticationSet( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_AUTH_SET pAuth +// ); + +typedef ULONG (WINAPI *_FWSetAuthenticationSet)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_AUTH_SET pAuth + ); + +// unsigned long +// RRPC_FWDeleteAuthenticationSet( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in, range(FW_IPSEC_PHASE_INVALID+1, FW_IPSEC_PHASE_MAX-1)] +// FW_IPSEC_PHASE IpSecPhase, +// [in, string, ref] const wchar_t* wszSetId +// ); + +typedef ULONG (WINAPI *_FWDeleteAuthenticationSet)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in FW_IPSEC_PHASE IpSecPhase, + __in const __nullterminated PWCHAR wszSetId + ); + +// unsigned long +// RRPC_FWDeleteAllAuthenticationSets( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in, range(FW_IPSEC_PHASE_INVALID+1, FW_IPSEC_PHASE_MAX-1)] +// FW_IPSEC_PHASE IpSecPhase +// ); + +typedef ULONG (WINAPI *_FWDeleteAllAuthenticationSets)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in FW_IPSEC_PHASE IpSecPhase + ); + +// unsigned long +// RRPC_FWEnumAuthenticationSets( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in, range(FW_IPSEC_PHASE_INVALID+1, FW_IPSEC_PHASE_MAX-1)] +// FW_IPSEC_PHASE IpSecPhase, +// [in] unsigned long dwFilteredByStatus, +// [in] unsigned short wFlags, +// [out] unsigned long* pdwNumAuthSets, +// [out] PFW_AUTH_SET* ppAuth +// ); + +typedef ULONG (WINAPI *_FWEnumAuthenticationSets)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in FW_IPSEC_PHASE IpSecPhase, + __in FW_RULE_STATUS_CLASS dwFilteredByStatus, + __in FW_ENUM_RULES_FLAGS wFlags, + __out PULONG dwNumAuthSets, + __out_ecount(dwNumAuthSets) PFW_AUTH_SET* ppAuthSets + ); + +// unsigned long +// RRPC_FWAddCryptoSet( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_CRYPTO_SET pCrypto +// ); + +typedef ULONG (WINAPI *_FWAddCryptoSet)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_CRYPTO_SET pCrypto + ); + +// unsigned long +// RRPC_FWSetCryptoSet( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_CRYPTO_SET pCrypto +// ); + +typedef ULONG (WINAPI *_FWSetCryptoSet)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_CRYPTO_SET pCrypto + ); + +// unsigned long +// RRPC_FWDeleteCryptoSet( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in, range(FW_IPSEC_PHASE_INVALID+1, FW_IPSEC_PHASE_MAX-1)] +// FW_IPSEC_PHASE IpSecPhase, +// [in, string, ref] const wchar_t* wszSetId +// ); + +typedef ULONG (WINAPI *_FWDeleteCryptoSet)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in FW_IPSEC_PHASE IpSecPhase, + __in const __nullterminated PWCHAR wszSetId + ); + +// unsigned long +// RRPC_FWDeleteAllCryptoSets( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in, range(FW_IPSEC_PHASE_INVALID+1, FW_IPSEC_PHASE_MAX-1)] +// FW_IPSEC_PHASE IpSecPhase +// ); + +typedef ULONG (WINAPI *_FWDeleteAllCryptoSets)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in FW_IPSEC_PHASE IpSecPhase + ); + +// unsigned long +// RRPC_FWEnumCryptoSets( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in, range(FW_IPSEC_PHASE_INVALID+1, FW_IPSEC_PHASE_MAX-1)] +// FW_IPSEC_PHASE IpSecPhase, +// [in] unsigned long dwFilteredByStatus, +// [in] unsigned short wFlags, +// [out, ref] unsigned long* pdwNumSets, +// [out] PFW_CRYPTO_SET* ppCryptoSets +// ); + +typedef ULONG (WINAPI *_FWEnumCryptoSets)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in FW_IPSEC_PHASE IpSecPhase, + __in FW_RULE_STATUS_CLASS dwFilteredByStatus, + __in FW_ENUM_RULES_FLAGS wFlags, + __out PULONG pdwNumSets, + __out_ecount(pdwNumSets) PFW_CRYPTO_SET* ppCryptoSets + ); + +// unsigned long +// RRPC_FWEnumPhase1SAs( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in,unique] PFW_ENDPOINTS pEndpoints, +// [out,ref] unsigned long* pdwNumSAs, +// [out,size_is( , *pdwNumSAs)] PFW_PHASE1_SA_DETAILS* ppSAs +// ); + +typedef ULONG (WINAPI *_FWEnumPhase1SAs)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_ENDPOINTS pEndpoints, + __out PULONG pdwNumSAs, + __out_ecount(pdwNumSAs) PFW_PHASE1_SA_DETAILS* ppSAs + ); + +// unsigned long +// RRPC_FWEnumPhase2SAs( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in, unique] PFW_ENDPOINTS pEndpoints, +// [out,ref] unsigned long* pdwNumSAs, +// [out,size_is( , *pdwNumSAs)] PFW_PHASE2_SA_DETAILS* ppSAs +// ); + +typedef ULONG (WINAPI *_FWEnumPhase2SAs)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_ENDPOINTS pEndpoints, + __out PULONG pdwNumSAs, + __out_ecount(pdwNumSAs) PFW_PHASE2_SA_DETAILS* ppSAs + ); + +// unsigned long +// RRPC_FWDeletePhase1SAs( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in, unique] PFW_ENDPOINTS pEndpoints +// ); + +typedef ULONG (WINAPI *_FWDeletePhase1SAs)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_ENDPOINTS pEndpoints + ); + +// unsigned long +// RRPC_FWDeletePhase2SAs( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in, unique] PFW_ENDPOINTS pEndpoints +// ); + +typedef ULONG (WINAPI *_FWDeletePhase2SAs)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_ENDPOINTS pEndpoints + ); + +// unsigned long +// RRPC_FWEnumProducts( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [out] unsigned long* pdwNumProducts, +// [out, size_is(,*pdwNumProducts)] PFW_PRODUCT* ppProducts +// ); + +typedef ULONG (WINAPI *_FWEnumProducts)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __out PULONG pdwNumProducts, + __out_ecount(pdwNumProducts) PFW_PRODUCT* ppProducts + ); + +///////////////////////////////////////// + +typedef ULONG (WINAPI *_FWFreeProducts)( + __in PFW_PRODUCT pProducts + ); + +///////////////////////////////////////// + +// unsigned long +// RRPC_FWAddMainModeRule( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_MM_RULE pMMRule, +// [out] FW_RULE_STATUS * pStatus +// ); + +typedef ULONG (WINAPI *_FWAddMainModeRule)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_MM_RULE pMMRule, + __out FW_RULE_STATUS* pStatus + ); + +// unsigned long +// RRPC_FWSetMainModeRule( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_MM_RULE pMMRule, +// [out] FW_RULE_STATUS * pStatus +// ); + +typedef ULONG (WINAPI *_FWSetMainModeRule)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_MM_RULE pMMRule, + __out FW_RULE_STATUS* pStatus + ); + +// unsigned long +// RRPC_FWDeleteMainModeRule( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in, string, ref] LPWSTR pRuleId +// ); + +typedef ULONG (WINAPI *_FWDeleteMainModeRule)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in LPWSTR pRuleId + ); + +// unsigned long +// RRPC_FWDeleteAllMainModeRules( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy +// ); + +typedef ULONG (WINAPI *_FWDeleteAllMainModeRules)( + __in FW_POLICY_STORE_HANDLE hPolicy + ); + +// unsigned long +// RRPC_FWEnumMainModeRules( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] unsigned long dwFilteredByStatus, +// [in] unsigned long dwProfileFilter, +// [in] unsigned short wFlags, +// [out, ref] unsigned long *pdwNumRules, +// [out] PFW_MM_RULE * ppMMRules +// ); + +typedef ULONG (WINAPI *_FWEnumMainModeRules)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in FW_RULE_STATUS_CLASS dwFilteredByStatus, + __in FW_PROFILE_TYPE dwProfileFilter, + __in FW_ENUM_RULES_FLAGS wFlags, + __out PULONG pdwNumRules, + __out_ecount(pdwNumRules) PFW_MM_RULE* ppMMRules + ); + +////////////////////////////////////////////////// + +// unsigned long +// RRPC_FWQueryFirewallRules( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_QUERY pQuery, +// [in] unsigned short wFlags, +// [out, ref] unsigned long *pdwNumRules, +// [out] PFW_RULE * ppRules +// ); + +typedef ULONG (WINAPI *_FWQueryFirewallRules)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_QUERY pQuery, + __in FW_ENUM_RULES_FLAGS wFlags, + __out PULONG pdwNumRules, + __out_ecount(pdwNumRules) PFW_RULE* ppFwRules + ); + +// unsigned long +// RRPC_FWQueryConnectionSecurityRules( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_QUERY pQuery, +// [in] unsigned short wFlags, +// [out, ref] unsigned long *pdwNumRules, +// [out] PFW_CS_RULE * ppRules +// ); + +typedef ULONG (WINAPI *_FWQueryConnectionSecurityRules)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_QUERY pQuery, + __in FW_ENUM_RULES_FLAGS wFlags, + __out PULONG pdwNumRules, + __out_ecount(pdwNumRules) PFW_CS_RULE* ppRules + ); + +// unsigned long +// RRPC_FWQueryMainModeRules( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_QUERY pQuery, +// [in] unsigned short wFlags, +// [out, ref] unsigned long *pdwNumRules, +// [out] PFW_MM_RULE * ppMMRules +// ); + +typedef ULONG (WINAPI *_FWQueryMainModeRules)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in PFW_QUERY pQuery, + __in FW_ENUM_RULES_FLAGS wFlags, + __out PULONG pdwNumRules, + __out_ecount(pdwNumRules) PFW_MM_RULE* ppMMRules + ); + +// unsigned long +// RRPC_FWQueryAuthenticationSets( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in, range(FW_IPSEC_PHASE_INVALID+1, FW_IPSEC_PHASE_MAX-1)] +// FW_IPSEC_PHASE IPsecPhase, +// [in] PFW_QUERY pQuery, +// [in] unsigned short wFlags, +// [out, ref] unsigned long *pdwNumSets, +// [out] PFW_AUTH_SET * ppAuthSets +// ); + +typedef ULONG (WINAPI *_FWQueryAuthenticationSets)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in FW_IPSEC_PHASE IPsecPhase, + __in PFW_QUERY pQuery, + __in FW_ENUM_RULES_FLAGS wFlags, + __out PULONG pdwNumSets, + __out_ecount(pdwNumSets) PFW_AUTH_SET* ppAuthSets + ); + +// unsigned long +// RRPC_FWQueryCryptoSets( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in, range(FW_IPSEC_PHASE_INVALID+1, FW_IPSEC_PHASE_MAX-1)] +// FW_IPSEC_PHASE IPsecPhase, +// [in] PFW_QUERY pQuery, +// [in] unsigned short wFlags, +// [out, ref] unsigned long *pdwNumSets, +// [out] PFW_CRYPTO_SET * ppCryptoSets +// ); + +typedef ULONG (WINAPI *_FWQueryCryptoSets)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __in FW_IPSEC_PHASE IPsecPhase, + __in PFW_QUERY pQuery, + __in FW_ENUM_RULES_FLAGS wFlags, + __out PULONG pdwNumSets, + __out_ecount(pdwNumSets) PFW_CRYPTO_SET* ppCryptoSets + ); + +// unsigned long +// RRPC_FWEnumNetworks( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [out] unsigned long *pdwNumNetworks, +// [out, size_is(,*pdwNumNetworks)] PFW_NETWORK* ppNetworks +// ); + +typedef ULONG (WINAPI *_FWEnumNetworks)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __out PULONG pdwNumNetworks, + __out_ecount(pdwNumNetworks) PFW_NETWORK* ppNetworks + ); + +// unsigned long +// RRPC_FWEnumAdapters( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [out] unsigned long *pdwNumAdapters, +// [out, size_is(,*pdwNumAdapters)] PFW_ADAPTER* ppAdapters +// ); + +typedef ULONG (WINAPI *_FWEnumAdapters)( + __in FW_POLICY_STORE_HANDLE hPolicy, + __out PULONG pdwNumAdapters, + __out_ecount(pdwNumAdapters) PFW_ADAPTER* ppAdapters + ); + +//////////////////////////////////////// + +typedef ULONG (WINAPI *_FWFreeMainModeRules)( + __in PFW_MM_RULE pMMRules + ); + +typedef ULONG (WINAPI *_FWFreeAdapters)( + __in PFW_ADAPTER pAdapters + ); + +typedef ULONG (WINAPI *_FWFreeFirewallRules)( + __in PFW_RULE2_0 pFwRules + ); + +typedef ULONG (WINAPI *_FWFreeNetworks)( + __in PFW_NETWORK pNetworks + ); + +//////////////////////////////////////// + + +typedef ULONG (WINAPI *_FWStatusMessageFromStatusCode)( + __in FW_RULE_STATUS StatusCode, + __out_ecount(pcchMsg) __typefix(PWCHAR) PWCHAR pszMsg, + __out PULONG pcchMsg + ); + +typedef ULONG (WINAPI *_FWVerifyFirewallRule)( + __in USHORT wBinaryVersion, + __inout PFW_RULE pRule + ); + +typedef ULONG (WINAPI *_FWExportPolicy)( + __in CONST __nullterminated PWCHAR wszMachineOrGPO, + __in BOOLEAN fGPO, + __in CONST __nullterminated PWCHAR wszFilePath, + __out PBOOLEAN fSomeInfoLost + ); + +typedef ULONG (WINAPI *_FWImportPolicy)( + __in const __nullterminated PWCHAR wszMachineOrGPO, + __in BOOLEAN fGPO, + __in CONST __nullterminated PWCHAR wszFilePath, + __out PBOOLEAN fSomeInfoLost + ); + +typedef ULONG (WINAPI *_FWRestoreGPODefaults)( + __in CONST __nullterminated PWCHAR wszGPOPath + ); + +typedef ULONG (WINAPI *_FwIsGroupPolicyEnforced)( + __in CONST __nullterminated PWCHAR wszMachine, + __in ULONG Profiles, + __out PBOOLEAN dwEnforced + ); + +typedef ULONG (WINAPI *_FWChangeNotificationCreate)( + __in HANDLE hEvent, //WaitHandle + __out PHANDLE hNewNotifyObject + ); + +typedef ULONG (WINAPI *_FWChangeNotificationDestroy)( + __out PHANDLE hNotifyObject + ); + +typedef enum _FW_TRANSACTIONAL_STATE +{ + FW_TRANSACTIONAL_STATE_NONE, + FW_TRANSACTIONAL_STATE_NO_FLUSH, + FW_TRANSACTIONAL_STATE_MAX +} FW_TRANSACTIONAL_STATE; + + +//typedef ULONG (WINAPI *_FWChangeTransactionalState(IntPtr hPolicy, FW_TRANSACTIONAL_STATE TransactionState); +//typedef ULONG (WINAPI *_FWRevertTransaction(IntPtr hPolicy); + + +// unsigned long +// RRPC_FWGetGlobalConfig2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] unsigned short BinaryVersion, +// [in] FW_STORE_TYPE StoreType, +// [in, range(FW_GLOBAL_CONFIG_INVALID+1, FW_GLOBAL_CONFIG_MAX-1)] +// FW_GLOBAL_CONFIG configID, +// [in] unsigned long dwFlags, +// [in, out, unique, size_is(cbData), length_is(*pcbTransmittedLen)] +// BYTE* pBuffer, +// [in] unsigned long cbData, +// [in,out] unsigned long *pcbTransmittedLen, +// [out] unsigned long *pcbRequired, +// [out] FW_RULE_ORIGIN_TYPE * pOrigin +// ); + +// unsigned long +// RRPC_FWGetConfig2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [in, range(FW_PROFILE_CONFIG_ENABLE_FW, FW_PROFILE_CONFIG_MAX-1)] +// FW_PROFILE_CONFIG configID, +// [in] FW_PROFILE_TYPE Profile, +// [in] unsigned long dwFlags, +// [in, out, unique, size_is(cbData), length_is(*pcbTransmittedLen)] +// BYTE* pBuffer, +// [in] unsigned long cbData, +// [in,out] unsigned long *pcbTransmittedLen, +// [out] unsigned long *pcbRequired, +// [out] FW_RULE_ORIGIN_TYPE * pOrigin +// ); +// +// unsigned long +// RRPC_FWAddFirewallRule2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [in] PFW_RULE pRule, +// [out] FW_RULE_STATUS * pStatus +// ); + +// unsigned long +// RRPC_FWSetFirewallRule2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [in] PFW_RULE pRule, +// [out] FW_RULE_STATUS * pStatus +// ); +// +// unsigned long +// RRPC_FWEnumFirewallRules2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [in] unsigned long dwFilteredByStatus, +// [in] unsigned long dwProfileFilter, +// [in] unsigned short wFlags, +// [out, ref] unsigned long *pdwNumRules, +// [out] PFW_RULE *ppRules +// ); +// +// unsigned long +// RRPC_FWAddConnectionSecurityRule2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_CS_RULE pRule, +// [out] FW_RULE_STATUS * pStatus +// ); +// +// unsigned long +// RRPC_FWSetConnectionSecurityRule2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_CS_RULE pRule, +// [out] FW_RULE_STATUS * pStatus +// ); +// +// unsigned long +// RRPC_FWEnumConnectionSecurityRules2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [in] unsigned long dwFilteredByStatus, +// [in] unsigned long dwProfileFilter, +// [in] unsigned short wFlags, +// [out, ref] unsigned long *pdwNumRules, +// [out] PFW_CS_RULE *ppRules +// ); +// +// unsigned long +// RRPC_FWAddAuthenticationSet2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_AUTH_SET pAuth, +// [out] FW_RULE_STATUS * pStatus +// ); +// +// unsigned long +// RRPC_FWSetAuthenticationSet2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_AUTH_SET pAuth, +// [out] FW_RULE_STATUS * pStatus +// ); +// +// unsigned long +// RRPC_FWEnumAuthenticationSets2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [in, range(FW_IPSEC_PHASE_INVALID+1, FW_IPSEC_PHASE_MAX-1)] +// FW_IPSEC_PHASE IpSecPhase, +// [in] unsigned long dwFilteredByStatus, +// [in] unsigned short wFlags, +// [out, ref] unsigned long *pdwNumAuthSets, +// [out] PFW_AUTH_SET *ppAuth +// ); +// +// unsigned long +// RRPC_FWAddCryptoSet2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_CRYPTO_SET pCrypto, +// [out] FW_RULE_STATUS * pStatus +// ); +// +// unsigned long +// RRPC_FWSetCryptoSet2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicy, +// [in] PFW_CRYPTO_SET pCrypto, +// [out] FW_RULE_STATUS * pStatus +// ); +// +// unsigned long +// RRPC_FWEnumCryptoSets2_10( +// [in] FW_CONN_HANDLE rpcConnHandle, +// [in] FW_POLICY_STORE_HANDLE hPolicyStore, +// [in, range(FW_IPSEC_PHASE_INVALID+1, FW_IPSEC_PHASE_MAX-1)] FW_IPSEC_PHASE IpSecPhase, +// [in] unsigned long dwFilteredByStatus, +// [in] unsigned short wFlags, +// [out, ref] unsigned long *pdwNumSets, +// [out] PFW_AUTH_SET *ppCrytoSets +// ); +// +//} + +typedef BOOLEAN (CALLBACK *PFW_WALK_RULES)( + __in PFW_RULE2_0 FwRule, + __in PVOID Context + ); + +BOOLEAN IsFirewallApiInitialized( + VOID + ); + +BOOLEAN InitializeFirewallApi( + VOID + ); + +VOID FreeFirewallApi( + VOID + ); + +VOID EnumerateFirewallRules( + __in FW_POLICY_STORE Store, + __in FW_PROFILE_TYPE Type, + __in FW_DIRECTION Direction, + __in PFW_WALK_RULES Callback, + __in PVOID Context + ); + +#endif //__FIREWALL_H_ \ No newline at end of file