summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/envsecurity.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/envsecurity.cpp b/src/envsecurity.cpp
index 87db98ce..6f4826e7 100644
--- a/src/envsecurity.cpp
+++ b/src/envsecurity.cpp
@@ -383,7 +383,18 @@ std::optional<SecurityProduct> getWindowsFirewall()
hr = policy->get_FirewallEnabled(NET_FW_PROFILE2_PUBLIC, &enabledVariant);
if (FAILED(hr))
{
- log::error("get_FirewallEnabled failed, {}", formatSystemMessage(hr));
+ // EPT_S_NOT_REGISTERED is "There are no more endpoints available from the
+ // endpoint mapper", which seems to happen sometimes on Windows 7 when the
+ // firewall has been disabled, so treat it as such and don't log it
+ //
+ // however the user reported the error was actually 0x800706d9, not just
+ // 0x6d9 (1753, what EPT_S_NOT_REGISTERED is defined to), so this is
+ // testing for both because it's not clear which it is and nobody can
+ // reproduce it
+ if (hr != EPT_S_NOT_REGISTERED && hr != 0x800706d9) {
+ log::error("get_FirewallEnabled failed, {}", formatSystemMessage(hr));
+ }
+
return {};
}
}