Fix: Icinga Agent version detection by using the icinga2 binary instead of the registry values
Fixes the version detection of the installed Icinga Agent by looking on the local installed `icinga2.exe` instead of fully relying on the registry version, printing an error in case the versions do not match
Fix: Issue with user updates on domain controllers in case the domain is included in the update
Fixes an issue with user updates on domain controllers, which included the domain besides the user name, causing the user updates to fail
Feature: Changes CPU counter being used for measurement to % Processor Time
Changes CPU provider to use the `\Processor(*)\% Processor Time` counter instead of `\Processor Information(*)\% Processor Utility`
Fix: FIPS exception caused by MD5 hash usage
Fixes possible FIPS exception on some Windows machines, caused by `MD5` hash algorithm used to verify the service binary file integrity after download instead of `SHA256`
Fix: Plugin error for match and not match with special characters
Fixes plugin execution error while using any `%IfNotMatch`/`%IfNotLike`/`%IfMatch`/`%IfLike` check function for strings containing special characters like `:`
Fix: Various issues on the New-IcingaCheck component
Fixes a bunch of issues present in the `New-IcingaCheck` component, resulting in non-desired output value:
* The new introducted `INFO` state was not properly removed while using `SetOk`, `SetWarning`, `SetCritical` or `SetUnknown` without prior calling of any threshold evaluation for unlocked objects
* Locked objects did not properly output the configured output message, if no threshold validation function was called
* Locked objects did not output any performance data
Fix: Security catalog compilation on non-english Windows versions
Fixes security catalog compilation error on non-english Windows versions, while properly skipping checks on system SID's and improves security by always adding the `SeDenyNetworkLogonRight` and `SeDenyInteractiveLogonRight` privilege section for the JEA user SID
Feature: Adds caching update for added/removed performance counter instances
Adds feature to update the cache for performance counter instances to keep track of system changes.
This will ensure that while we are running as a daemon with Icinga for Windows, newly added or removed information for performance counters will be updated whenever required.
Fix: Icinga Agent installation lookup on missing registry attributes
Fixes registry lookup for Icinga Agent installation to check if the required `DisplayName` attribute is defined before checking
Fix: Never load user PowerShell profiles
To enhance compatibility and reduce the overall impact during certain tasks run by Icinga for Windows, ensure we never load any user PowerShell profiles
Fix: JEA compiler to always force a framework rebuild on update
Fixes JEA compiler to always enforce a rebuild of the Framework to ensure integrity of JEA profiles
Feauture: Adds support to ensure Icinga services are always set to delayed auto start
Adds new Cmdlet `Set-IcingaForWindowsServicesDelayedStart` which will update the Icinga Agent and Icinga for Windows service to run with delayed autostart
Fix: AddSummaryHeader not adding any check information to check package
Fixes plugin compiler not handling `AddSummaryHeader` properly for nested check packages, not adding any check information
```powershell
[WARNING] CPU Load [WARNING] Socket #0 (All must be [OK])
\_ [OK] Overall Load: 8.283808%
\_ [WARNING] Socket #0: 2 Warning 3 Ok [WARNING] Core 0, Core 2 (All must be [OK])
\_ [WARNING] Core 0: Value 18.86168% is greater than threshold 9%
\_ [OK] Core 1: 4.852731%
\_ [WARNING] Core 2: Value 9.340026% is greater than threshold 9%
\_ [OK] Core 3: 0.080795%
\_ [OK] Core Total: 8.283808%
| totalload::ifw_cpu::load=8.283808%;9;;0;100 0_0::ifw_cpu::load=18.86168%;9;;0;100 0_1::ifw_cpu::load=4.852731%;9;;0;100 0_2::ifw_cpu::load=9.340026%;9;;0;100 0_3::ifw_cpu::load=0.080795%;9;;0;100 0_total::ifw_cpu::load=8.283808%;9;;0;100
```
Feature: Adds support to suppress messages for Disable-IcingaUntrustedCertificateValidation
Adds support to suppress messages for Disable-IcingaUntrustedCertificateValidation
Fix: Config compiler to always use Switchparameter for switch argument
Fixes Icinga for Windows config compiler to always use `Switchparameter` for `switch` data types, in case the documentation is not written properly for the plugin
Fix: Icinga for Windows being stuck while fetching service information if other services block CIM requests
Fixes Icinga for Windows being stuck during installation while fetching service information over CIM-Instances, if other services are frozen, blocking the CIM-Request