Walter.Web.FireWall.DiskLogger 2022.10.31.740

Prefix Reserved
There is a newer version of this package available.
See the version list below for details.
dotnet add package Walter.Web.FireWall.DiskLogger --version 2022.10.31.740
                    
NuGet\Install-Package Walter.Web.FireWall.DiskLogger -Version 2022.10.31.740
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Walter.Web.FireWall.DiskLogger" Version="2022.10.31.740" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Walter.Web.FireWall.DiskLogger" Version="2022.10.31.740" />
                    
Directory.Packages.props
<PackageReference Include="Walter.Web.FireWall.DiskLogger" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Walter.Web.FireWall.DiskLogger --version 2022.10.31.740
                    
#r "nuget: Walter.Web.FireWall.DiskLogger, 2022.10.31.740"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Walter.Web.FireWall.DiskLogger@2022.10.31.740
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Walter.Web.FireWall.DiskLogger&version=2022.10.31.740
                    
Install as a Cake Addin
#tool nuget:?package=Walter.Web.FireWall.DiskLogger&version=2022.10.31.740
                    
Install as a Cake Tool

Windows firewall management

You can use the windows firewall from as shown in this class The NuGet package uses the PowerShell command s in combination with a file watcher but there are several ways to interact with a physical firewall from code

/*
To use windows Firewall com object add a reference to %system32%\FirewallAPI.dll 
*/
    class FireWallHelper
    {
        const string guidFWPolicy2 = "{E2B3C97F-6AE1-41AC-817A-F6F92166D7DD}";
        const string guidRWRule = "{2C5BC43E-3369-4C33-AB0C-BE9469677AF4}";
        static Type typeFWPolicy2;
        static Type typeFWRule;
        static INetFwPolicy2 fwPolicy2;
        static FireWallHelper()
        {
            typeFWPolicy2 = Type.GetTypeFromCLSID(new Guid(guidFWPolicy2));
            typeFWRule = Type.GetTypeFromCLSID(new Guid(guidRWRule));
            fwPolicy2 = (INetFwPolicy2)Activator.CreateInstance(typeFWPolicy2);

        }
        public static bool IsPortOpen(int port)
        {
            EnsureSetup();

            Type progID = Type.GetTypeFromProgID("HNetCfg.FwMgr");
            INetFwMgr firewall = Activator.CreateInstance(progID) as INetFwMgr;
            INetFwOpenPorts ports = firewall.LocalPolicy.CurrentProfile.GloballyOpenPorts;
            IEnumerator portEnumerate = ports.GetEnumerator();
            while ((portEnumerate.MoveNext()))
            {
                INetFwOpenPort currentPort = portEnumerate.Current as INetFwOpenPort;
                if (currentPort.Port == port)
                    return true;
            }
            return false;
        }
        static INetFwRule MakeRule(IPAddress remoteIP, string ruleName = null)
        {
            INetFwRule rule = (INetFwRule)Activator.CreateInstance(typeFWRule);
            rule.Name = ruleName ?? $"Inbound block IP {remoteIP}";
            rule.Description = $"Block inbound traffic from {remoteIP} over TCP port";
            rule.Protocol = (int)NET_FW_IP_PROTOCOL_.NET_FW_IP_PROTOCOL_ANY;
            rule.RemoteAddresses = remoteIP.ToString();
            rule.Direction = NET_FW_RULE_DIRECTION_.NET_FW_RULE_DIR_IN;
            rule.Enabled = true;
            rule.Grouping = "@firewallapi.dll,-23255";
            rule.Profiles = fwPolicy2.CurrentProfileTypes;
            return rule;
        }
        static INetFwRule MakeRule(int port, IPAddress remoteIP, string ruleName = null)
        {
            INetFwRule rule = (INetFwRule)Activator.CreateInstance(typeFWRule);
            rule.Name = ruleName ?? $"Inbound block IP {remoteIP}";
            rule.Description = $"Block inbound traffic from {remoteIP} over TCP port {port}";
            rule.Protocol = (int)NET_FW_IP_PROTOCOL_.NET_FW_IP_PROTOCOL_ANY;
            rule.LocalPorts = port.ToString();
            rule.RemoteAddresses = remoteIP.ToString();
            rule.Direction = NET_FW_RULE_DIRECTION_.NET_FW_RULE_DIR_IN;
            rule.Enabled = true;
            rule.Grouping = "@firewallapi.dll,-23255";
            rule.Profiles = fwPolicy2.CurrentProfileTypes;
            return rule;
        }

        public static void OpenPort(int port, IPAddress remoteIP, string ruleName = null)
        {
            EnsureSetup();
            var newRule = MakeRule(port, remoteIP, ruleName);
            newRule.Enabled = false;
            newRule.Action = NET_FW_ACTION_.NET_FW_ACTION_ALLOW;
            fwPolicy2.Rules.Add(newRule);
        }
        public static void ClosePort(int port, IPAddress remoteIP, string ruleName)
        {
            EnsureSetup();
            var newRule = MakeRule(port, remoteIP, ruleName);

            newRule.Action = NET_FW_ACTION_.NET_FW_ACTION_BLOCK;
            fwPolicy2.Rules.Add(newRule);

        }

        public static void CloseIP(IPAddress remoteIP, string ruleName)
        {
            EnsureSetup();
            var newRule = MakeRule(remoteIP, ruleName);

            newRule.Action = NET_FW_ACTION_.NET_FW_ACTION_BLOCK;
            fwPolicy2.Rules.Add(newRule);
        }

        public static void OpenIP(IPAddress remoteIP, string ruleName)
        {
            EnsureSetup();

            var newRule = MakeRule(remoteIP, ruleName);

            newRule.Action = NET_FW_ACTION_.NET_FW_ACTION_ALLOW;
            fwPolicy2.Rules.Add(newRule);
        }

        public static void OpenPort(int port, string applicationName)
        {
            EnsureSetup();

            if (IsPortOpen(port))
                return;

            INetFwOpenPort openPort = GetInstance("INetOpenPort") as INetFwOpenPort;
            openPort.Port = port;
            openPort.Protocol = NET_FW_IP_PROTOCOL_.NET_FW_IP_PROTOCOL_TCP;
            openPort.Name = applicationName;

            INetFwOpenPorts openPorts = sm_fwProfile.GloballyOpenPorts;
            openPorts.Add(openPort);
        }

        public static void ClosePort(int port)
        {
            EnsureSetup();

            if (!IsPortOpen(port))
                return;

            INetFwOpenPorts ports = sm_fwProfile.GloballyOpenPorts;
            ports.Remove(port, NET_FW_IP_PROTOCOL_.NET_FW_IP_PROTOCOL_TCP);
        }

        private static object GetInstance(string typeName)
        {
            Type tpResult = null;
            switch (typeName)
            {
                case "INetFwMgr":
                    tpResult = Type.GetTypeFromCLSID(new Guid("{304CE942-6E39-40D8-943A-B913C40C9CD4}"));
                    return Activator.CreateInstance(tpResult);
                case "INetAuthApp":
                    tpResult = Type.GetTypeFromCLSID(new Guid("{EC9846B3-2762-4A6B-A214-6ACB603462D2}"));
                    return Activator.CreateInstance(tpResult);
                case "INetOpenPort":
                    tpResult = Type.GetTypeFromCLSID(new Guid("{0CA545C6-37AD-4A6C-BF92-9F7610067EF5}"));
                    return Activator.CreateInstance(tpResult);
                default:
                    throw new Exception("Unknown type name: " + typeName);
            }
        }

        private static void EnsureSetup()
        {
            if (sm_fwProfile != null)
                return;

            INetFwMgr fwMgr = GetInstance("INetFwMgr") as INetFwMgr;
            sm_fwProfile = fwMgr.LocalPolicy.CurrentProfile;
        }

        private static INetFwProfile sm_fwProfile = null;

    }


Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 is compatible. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2025.7.30.1003 8 7/30/2025
2025.7.10.1347 137 7/10/2025
2025.6.30.1407 135 7/1/2025
2025.6.12.1057 293 6/12/2025
2025.4.17.1816 206 4/17/2025
2025.3.13.1323 159 3/13/2025
2025.2.26.1642 105 2/26/2025
2025.2.25.1033 108 2/26/2025
2025.2.24.1556 109 2/25/2025
2025.2.16.1149 115 2/19/2025
2025.2.15.1316 121 2/15/2025
2025.1.16.1410 97 1/16/2025
2025.1.4.1941 135 1/4/2025
2025.1.2.1544 114 1/3/2025
2024.12.14.838 114 12/14/2024
2024.12.13.1227 106 12/13/2024
2024.12.9.1107 116 12/13/2024
2024.11.28.1632 104 11/28/2024
2024.11.20.644 123 11/21/2024
2024.11.15.421 133 11/15/2024
2024.11.11.1334 113 11/14/2024
2024.11.6.1222 119 11/6/2024
2024.10.28.1605 108 10/28/2024
2024.10.28.1335 101 10/28/2024
2024.10.19.1525 111 10/21/2024
2024.10.18.1315 127 10/18/2024
2024.9.27.1406 117 9/27/2024
2024.9.17.1417 119 9/17/2024
2024.9.12.1923 124 9/12/2024
2024.9.6.1352 125 9/7/2024
2024.9.1.1159 119 9/1/2024
2024.8.26.1150 125 8/26/2024
2024.8.19.1411 137 8/19/2024
2024.8.17.1000 134 8/17/2024
2024.8.12.1622 152 8/13/2024
2024.8.5.1010 103 8/5/2024
2024.8.1.1545 148 8/16/2024
2024.7.28.629 97 7/28/2024
2024.7.26.1512 114 7/26/2024
2024.7.26.828 102 7/26/2024
2024.7.11.1604 124 7/11/2024
2024.7.9.1520 128 7/9/2024
2024.7.4.1425 134 7/4/2024
2024.7.3.1249 103 7/3/2024
2024.7.2.1536 141 7/2/2024
2024.6.28.953 129 6/28/2024
2023.11.13.1117 459 11/13/2023
2023.10.26.1502 357 10/29/2023
2023.10.12.1926 427 10/12/2023
2023.9.14.812 464 9/14/2023
2023.9.7.1748 474 9/7/2023
2023.9.7.1241 479 9/7/2023
2023.9.6.1001 450 9/6/2023
2023.9.5.1246 460 9/5/2023
2023.9.5.1032 462 9/5/2023
2023.8.31.1522 506 8/31/2023
2023.8.29.1040 486 8/29/2023
2023.8.17.901 543 8/17/2023
2023.8.9.1314 526 8/9/2023
2023.8.2.750 633 8/2/2023
2023.7.12.830 523 7/12/2023
2023.7.5.1419 646 7/6/2023
2023.6.14.1628 581 6/14/2023
2023.6.11.1304 649 6/11/2023
2023.5.30.1640 671 5/30/2023
2023.5.4.1552 683 5/4/2023
2023.5.1.1524 702 5/1/2023
2023.4.29.910 719 4/29/2023
2023.4.12.1236 700 4/12/2023
2023.3.22.1456 706 3/22/2023
2023.3.14.1356 742 3/14/2023
2023.3.1.810 743 3/1/2023
2023.2.25.11857 809 2/25/2023
2023.2.22.27 765 2/22/2023
2023.2.15.1413 803 2/15/2023
2023.2.11.1628 831 2/11/2023
2023.1.11.534 841 1/11/2023
2022.12.30.711 820 12/30/2022
2022.12.15.1108 852 12/15/2022
2022.12.14.648 854 12/14/2022
2022.11.27.1059 894 11/27/2022
2022.11.21.338 862 11/21/2022
2022.11.14.1819 856 11/14/2022
2022.11.13.917 838 11/13/2022
2022.10.31.740 924 11/1/2022
2022.10.15.652 923 10/15/2022
2022.10.1.810 1,054 10/1/2022
2022.9.26.1444 1,000 9/26/2022
2022.9.14.1508 1,082 9/14/2022
2022.9.14.809 1,107 9/14/2022
2022.9.8.1009 1,124 9/8/2022
2022.8.20.1007 1,076 8/20/2022
2022.8.1.1 1,086 7/31/2022
2022.7.1300 1,157 7/1/2022
2022.7.31.1016 1,047 7/31/2022
2022.7.15.841 1,093 7/15/2022
2022.6.21.647 1,062 6/21/2022
2022.5.18.638 1,060 5/19/2022
2022.5.16.853 1,152 5/19/2022
2022.5.16.816 1,074 5/16/2022
2022.5.4.1010 1,123 5/4/2022
2022.4.10.947 1,162 4/10/2022
2022.4.10.925 1,177 4/10/2022
2022.4.10.828 1,187 4/10/2022
2022.4.1.1545 1,215 4/1/2022
2022.3.31.823 1,152 3/31/2022
2022.3.26.1103 1,147 3/26/2022
2022.3.26.820 1,273 3/26/2022
2022.3.25.840 1,177 3/26/2022
2022.2.16.1131 1,247 2/17/2022
2022.2.16.834 1,373 2/17/2022
2022.2.5.1114 1,314 2/5/2022
2022.1.17.1158 1,216 1/17/2022
2022.1.10.1505 1,321 1/10/2022
2022.1.10.537 1,256 1/10/2022
2022.1.5.1139 1,376 1/8/2022
2021.12.28.1452 1,420 12/28/2021
2021.12.16.812 1,218 12/16/2021
2021.11.23.1528 7,479 11/24/2021
2021.11.21.925 1,361 11/22/2021
2021.11.19.1503 1,590 11/22/2021
2021.11.19.847 1,531 11/19/2021
2021.11.18.1824 1,303 11/16/2021
2021.11.10.852 1,324 11/10/2021
2021.11.9.2021 1,507 11/9/2021
2021.11.8.2109 1,020 11/9/2021
2021.11.8.1612 1,060 11/8/2021
2021.11.7.1021 1,103 11/8/2021
2021.11.3.1612 1,146 11/4/2021
2021.11.1.1102 1,164 11/1/2021
2021.10.25.1206 1,220 10/25/2021
2021.10.23.1310 1,160 10/25/2021
2021.10.19.1522 1,130 10/19/2021
2021.10.16.1325 1,182 10/18/2021
2021.10.9.1119 117 10/9/2024
2021.10.6.1546 1,047 10/6/2021
2021.10.5.1450 1,250 10/5/2021
2021.10.4.1155 1,207 10/5/2021
2021.10.1.753 1,192 10/1/2021
2021.9.27.1005 1,089 9/28/2021
2021.9.26.1913 1,181 9/26/2021
2021.9.19.1015 1,227 9/19/2021
2021.9.17.1702 1,186 9/17/2021
2021.9.17.1449 1,092 9/17/2021
2021.9.13.1600 1,156 9/13/2021
2021.9.12.1100 1,211 9/13/2021
2021.9.11.2004 1,214 9/11/2021
2021.9.9.1110 1,234 9/9/2021
2021.9.7.1901 1,315 9/8/2021
2021.9.7.1121 1,198 9/7/2021
2021.9.6.1518 1,193 9/7/2021
2021.9.4.1124 1,345 9/4/2021
2021.9.2.708 1,144 9/4/2021
2021.9.0.1259 1,201 9/2/2021
2021.8.2200 1,112 8/23/2021
2021.8.2100 1,075 8/23/2021
2021.8.22.900 1,185 8/22/2021
2021.8.18.1500 1,243 8/18/2021
2021.8.18.930 1,272 8/18/2021
2021.8.14.1600 1,176 8/16/2021
2021.8.9.1105 1,139 8/9/2021
2021.8.8.1612 1,213 8/8/2021
2021.8.8.1138 1,278 8/8/2021
2021.8.6.1044 1,253 8/6/2021
2021.8.4.1355 1,248 8/5/2021
2021.7.30.2118 1,340 7/31/2021
2021.7.27.926 1,147 7/28/2021
2021.7.23.931 1,236 7/26/2021
2021.7.22.1456 1,121 7/23/2021
2021.7.15.1547 1,358 7/15/2021
2021.7.13.812 1,246 7/13/2021
2021.7.8.1527 1,278 7/10/2021
2021.7.5.1649 1,154 7/5/2021
2021.6.29.1453 1,202 6/30/2021
2021.6.26.1753 1,369 6/27/2021
2021.6.25.1849 1,404 6/25/2021
2021.6.24.1518 1,187 6/24/2021
2021.6.20.729 1,183 6/20/2021
2021.6.15.2006 1,196 6/15/2021
2021.6.14.2025 1,174 6/15/2021
2021.6.13.2035 1,245 6/14/2021
2021.6.12.1154 1,244 6/13/2021
2021.6.9.1120 1,167 6/9/2021
2021.6.3.1509 1,161 6/3/2021
2021.5.31.1533 1,246 5/31/2021
2021.5.31.1415 1,201 5/31/2021
2021.5.24.1128 1,183 5/24/2021
2021.5.24.1019 1,205 5/24/2021
2021.5.12.1054 1,127 5/12/2021
2021.5.12.637 1,232 5/12/2021
2021.5.10.1442 1,325 5/11/2021
2021.5.8.1226 1,131 5/8/2021
2021.5.6.2037 1,148 5/6/2021
2021.5.5.1901 1,156 5/6/2021
2021.5.3.1621 1,180 5/4/2021
2021.5.1.905 1,161 5/1/2021
2021.4.28.1511 1,119 4/28/2021
2021.4.20.1520 1,164 4/21/2021
2021.4.16.738 1,091 4/21/2021
2021.4.14.1216 1,286 4/16/2021
2021.4.9.1538 1,180 4/13/2021
2021.4.8.947 1,183 4/13/2021
2021.4.6.1235 1,198 4/6/2021
2021.4.5.1653 1,142 4/5/2021
2021.4.1.913 1,090 4/1/2021
2021.3.31.2003 1,155 4/1/2021
2021.3.18.1622 1,155 3/18/2021
2021.3.3.1259 1,163 3/3/2021
2021.3.2.1415 1,234 3/2/2021
2021.3.1.11 1,206 2/28/2021
2021.3.1.1 1,203 2/27/2021
2021.3.1 1,171 2/27/2021
2021.2.23.6 1,212 2/23/2021
2021.2.21.1 1,124 2/21/2021
2021.2.20.1 1,202 2/20/2021
2021.2.19.2 1,129 2/19/2021
2021.2.18.6 1,213 2/19/2021
2021.2.16.1 1,194 2/16/2021
2021.2.15.3 1,229 2/15/2021
2021.2.15.1 1,198 2/14/2021
2021.2.14.3 1,131 2/14/2021
2021.2.12.6 1,145 2/12/2021
2021.2.12.2 1,146 2/12/2021
2021.2.11.1 1,247 2/11/2021
2021.2.10.1 1,196 2/10/2021
2021.2.8.1 1,236 2/9/2021
2021.2.7.2 1,209 2/7/2021
2021.2.7.1 1,189 2/6/2021
2020.12.27.6 1,265 12/27/2020
2020.12.27.1 1,229 12/27/2020
2020.12.26.7 1,263 12/27/2020
2020.12.26.5 1,202 12/27/2020
2020.12.26.3 1,243 12/27/2020
2020.12.19.1 1,325 12/19/2020
2020.12.16.1 1,161 12/16/2020
2020.12.15.1 1,261 12/15/2020
2020.12.14.5 1,221 12/14/2020
2020.12.14.4 1,246 12/14/2020
2020.12.14.3 1,227 12/14/2020
2020.12.5.1 1,269 12/5/2020
2020.12.4.4 1,270 12/4/2020
2020.12.4.3 1,224 12/4/2020
2020.12.4.1 1,270 12/4/2020
2020.12.3.1 1,218 12/3/2020
2020.12.2.4 1,252 12/2/2020
2020.12.2.3 1,298 12/2/2020
2020.12.1.1 1,297 12/1/2020
2020.11.28.1 1,251 11/28/2020
2020.11.27.2 1,267 11/27/2020
2020.11.27.1 1,268 11/27/2020
2020.11.25.1 1,228 11/25/2020
2020.11.22.3 1,283 11/23/2020
2020.11.20.1 1,332 11/21/2020
2020.11.19.3 1,288 11/19/2020
2020.11.19.1 1,305 11/19/2020
2020.11.18.2 1,337 11/18/2020
2020.11.17.2 1,318 11/17/2020
2020.11.17.1 1,226 11/17/2020
2020.11.15.1 1,314 11/15/2020
2020.11.14.1 1,326 11/14/2020
2020.11.13.2 1,237 11/13/2020
2020.11.13.1 1,294 11/13/2020
2020.11.12.1 1,252 11/12/2020
2020.11.11.1 1,275 11/11/2020
2020.11.8.1 1,364 11/8/2020
2020.11.7.1 1,326 11/7/2020
2020.11.5.1 1,247 11/5/2020
2020.11.3.1 1,297 11/3/2020
2020.11.1.3 1,276 11/1/2020
2020.11.1.2 1,332 11/1/2020
2020.11.1.1 1,247 11/1/2020
2020.10.30.1 1,346 11/1/2020
2020.10.15.3 1,321 10/15/2020
2020.10.15.2 1,331 10/15/2020
2020.10.14.1 1,298 10/14/2020
2020.10.13.1 1,305 10/13/2020
2020.10.12.2 1,360 10/12/2020
2020.10.12.1 1,288 10/12/2020
2020.10.10.1 1,439 10/10/2020
2020.10.9.6 1,250 10/9/2020
2020.10.9.2 1,253 10/9/2020
2020.10.9.1 1,297 10/9/2020
2020.10.8.1 1,276 10/8/2020
2020.10.6.8 1,360 10/7/2020
2020.10.6.6 1,225 10/7/2020
2020.10.6.5 1,375 10/7/2020
2020.10.6.4 1,262 10/7/2020
2020.10.6.3 1,335 10/7/2020
2020.10.6.2 1,362 10/7/2020
2020.10.6.1 1,298 10/7/2020
2020.10.5.1 1,281 10/6/2020
2020.10.1.3 1,287 10/1/2020
2020.10.1.2 1,265 10/1/2020
2020.10.1.1 1,256 10/1/2020
2020.9.29.10 1,292 9/29/2020
2020.9.29.9 1,297 9/29/2020
2020.9.28.2 1,308 9/28/2020
2020.9.28.1 1,355 9/28/2020
2020.9.25.1 1,417 9/26/2020
2020.9.24.2 1,245 9/24/2020
2020.9.24 1,283 9/24/2020
2020.9.23.2 1,275 9/23/2020
2020.9.23.1 1,320 9/23/2020
2020.9.22.1 1,360 9/22/2020
2020.9.21.1 1,296 9/21/2020
2020.9.17.2 1,335 9/17/2020
2020.9.16.1 1,300 9/16/2020
2020.9.16 1,264 9/16/2020

Major releases that add functionality other than optimization and minor bug fixing
15 November 2022
- Update NuGet package references

1 October 2022
- Update build with new SDK
- Update code sign certificates

14 September 2022
- Update to include new package 6.0.X and Microsoft CVE-2022-38013

02 September 2022
- Please make sure to update servers using this packages due to a security bug in .net
> System.Security.Cryptography.Xml      4.5.0      Moderate   https://github.com/advisories/GHSA-2m65-m22p-9wjw
     > System.Text.Encodings.Web             4.5.0      Critical   https://github.com/advisories/GHSA-ghhp-997w-qr28

15 June 2022
- Update to support .net 6.0.7 and 3.1.27
- Update package references

4 May 2022
- Update NuGet References

15 March 2022
- update to 6.0.3

16 December 2021
- Update to .Net SDK update 14 December for .NET CORE 3.1.416, and .NET 5.0.404 and 6.0.101

9 November 2021
- Fix package dependency on vulnerable packages from Microsoft by upgrading vulnerable packages

08 November 2021
- Update to .Net NuGet packages .NET 6.0.0, .NET 5.0.403 and core 3.1.415

19 September
- Update NuGet packages release for .Net 5.0.10

8 Aug 2021
- update to .NET 6.0 SDK (v6.0.100-preview.6)

30 June 2021
- Add .Net 6.0 binaries to the NuGet package

15 June 2021
- Update to .Net Core 3.1.17 and .Net 5.0.8 SDK

09 June 2021
- Update to .Net SDK 5.0.301 and 3.1.410

31 April 2021
- Update debugger display to improve debugging experience
- Update on incident and communication interfaces
- Improved IFireWall WHOIS query method and include ISP counters

12 April 2021
- Update to new code base after .net security violation fix

22 March 2021
- Performance update

05 March 2021
- Update package reference

12 February 2021
- Framework extension changes
- Update package references

02 January 2021
- Updated terms and conditions to REL. 2021.01.02

29 December 2020
- Update package reference

23 December 2020
- Update package reference

19 December 2020
- Update package references

14 December 2020
- Update package references

12 December 2020
- Update package references
- Compile with Language version 9.0

04 December 2020
- Update package references

22 November 2020
- Update compiler hints improving .net Core 3.1 and .Net 5.0 compiled binaries

11 November 2020
- Update packages and support .Net 5.0

08 November 2020
- Update signatures and NuGet package references

14 October 2020
- Update to .net core 3.1.4

05 October 2020
- Update terms
- update NuGet package references

16 September 2020
- Add post processes support via options
- separate the Firewall integrated disk logging infrastructure to an external NuGet package to align licensing