summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOdd Stranne <odd@mullvad.net>2019-11-27 13:18:56 +0100
committerOdd Stranne <odd@mullvad.net>2019-12-04 13:07:58 +0100
commit7f4187d0ce488119596f2391e84ca4fe519cf03f (patch)
tree8085e0259d9e1c5082529468fad17151a87dc2f9
parent9ed4565edc9fe4f290bec93c7b3acc0c266649c0 (diff)
downloadmullvadvpn-7f4187d0ce488119596f2391e84ca4fe519cf03f.tar.xz
mullvadvpn-7f4187d0ce488119596f2391e84ca4fe519cf03f.zip
Update logging in winnet
-rw-r--r--windows/winnet/src/winnet/winnet.cpp35
-rw-r--r--windows/winnet/src/winnet/winnet.h2
-rw-r--r--windows/winnet/src/winnet/winnet.vcxproj24
-rw-r--r--windows/winnet/winnet.sln5
4 files changed, 29 insertions, 37 deletions
diff --git a/windows/winnet/src/winnet/winnet.cpp b/windows/winnet/src/winnet/winnet.cpp
index c94970b863..3c8f133d57 100644
--- a/windows/winnet/src/winnet/winnet.cpp
+++ b/windows/winnet/src/winnet/winnet.cpp
@@ -3,8 +3,9 @@
#include "NetworkInterfaces.h"
#include "offlinemonitor.h"
#include "routing/routemanager.h"
-#include <shared/logsinkadapter.h>
-#include <shared/network/interfaceutils.h>
+#include <libshared/logging/logsinkadapter.h>
+#include <libshared/logging/unwind.h>
+#include <libshared/network/interfaceutils.h>
#include <libcommon/error.h>
#include <libcommon/network.h>
#include <cstdint>
@@ -25,7 +26,7 @@ OfflineMonitor *g_OfflineMonitor = nullptr;
std::mutex g_RouteManagerLock;
RouteManager *g_RouteManager = nullptr;
-std::shared_ptr<shared::LogSinkAdapter> g_RouteManagerLogSink;
+std::shared_ptr<shared::logging::LogSinkAdapter> g_RouteManagerLogSink;
Network ConvertNetwork(const WINNET_IPNETWORK &in)
{
@@ -134,18 +135,6 @@ std::vector<Route> ConvertRoutes(const WINNET_ROUTE *routes, uint32_t numRoutes)
return out;
}
-void UnwindAndLog(MullvadLogSink logSink, void *logSinkContext, const std::exception &err)
-{
- if (nullptr == logSink)
- {
- return;
- }
-
- auto logger = std::make_shared<shared::LogSinkAdapter>(logSink, logSinkContext);
-
- common::error::UnwindException(err, logger);
-}
-
std::vector<SOCKADDR_INET> ConvertAddresses(const WINNET_IP *addresses, uint32_t numAddresses)
{
//
@@ -209,7 +198,7 @@ WinNet_EnsureTopMetric(
}
catch (const std::exception &err)
{
- UnwindAndLog(logSink, logSinkContext, err);
+ shared::logging::UnwindAndLog(logSink, logSinkContext, err);
return WINNET_ETM_STATUS_FAILURE;
}
catch (...)
@@ -250,7 +239,7 @@ WinNet_GetTapInterfaceIpv6Status(
}
catch (const std::exception &err)
{
- UnwindAndLog(logSink, logSinkContext, err);
+ shared::logging::UnwindAndLog(logSink, logSinkContext, err);
return WINNET_GTII_STATUS_FAILURE;
}
catch (...)
@@ -282,7 +271,7 @@ WinNet_GetTapInterfaceAlias(
}
catch (const std::exception &err)
{
- UnwindAndLog(logSink, logSinkContext, err);
+ shared::logging::UnwindAndLog(logSink, logSinkContext, err);
return false;
}
catch (...)
@@ -331,7 +320,7 @@ WinNet_ActivateConnectivityMonitor(
callback(connected, callbackContext);
};
- auto logger = std::make_shared<shared::LogSinkAdapter>(logSink, logSinkContext);
+ auto logger = std::make_shared<shared::logging::LogSinkAdapter>(logSink, logSinkContext);
g_OfflineMonitor = new OfflineMonitor(logger, forwarder);
@@ -339,7 +328,7 @@ WinNet_ActivateConnectivityMonitor(
}
catch (const std::exception &err)
{
- UnwindAndLog(logSink, logSinkContext, err);
+ shared::logging::UnwindAndLog(logSink, logSinkContext, err);
return false;
}
catch (...)
@@ -383,14 +372,14 @@ WinNet_ActivateRouteManager(
throw std::runtime_error("Cannot activate route manager twice");
}
- g_RouteManagerLogSink = std::make_shared<shared::LogSinkAdapter>(logSink, logSinkContext);
+ g_RouteManagerLogSink = std::make_shared<shared::logging::LogSinkAdapter>(logSink, logSinkContext);
g_RouteManager = new RouteManager(g_RouteManagerLogSink);
return true;
}
catch (const std::exception &err)
{
- UnwindAndLog(logSink, logSinkContext, err);
+ shared::logging::UnwindAndLog(logSink, logSinkContext, err);
return false;
}
catch (...)
@@ -713,7 +702,7 @@ WinNet_AddDeviceIpAddresses(
}
catch (const std::exception &err)
{
- UnwindAndLog(logSink, logSinkContext, err);
+ shared::logging::UnwindAndLog(logSink, logSinkContext, err);
return false;
}
catch (...)
diff --git a/windows/winnet/src/winnet/winnet.h b/windows/winnet/src/winnet/winnet.h
index f277d61c81..40ccf9f421 100644
--- a/windows/winnet/src/winnet/winnet.h
+++ b/windows/winnet/src/winnet/winnet.h
@@ -1,6 +1,6 @@
#pragma once
-#include <shared/logsink.h>
+#include <libshared/logging/logsink.h>
#include <stdint.h>
#include <stdbool.h>
diff --git a/windows/winnet/src/winnet/winnet.vcxproj b/windows/winnet/src/winnet/winnet.vcxproj
index 5fb0a50ec5..c21f75b2c1 100644
--- a/windows/winnet/src/winnet/winnet.vcxproj
+++ b/windows/winnet/src/winnet/winnet.vcxproj
@@ -170,14 +170,14 @@
<ConformanceMode>true</ConformanceMode>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<LanguageStandard>stdcpplatest</LanguageStandard>
- <AdditionalIncludeDirectories>$(ProjectDir)..\..\..\shared\src\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>$(ProjectDir)..\..\..\libshared\src\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ModuleDefinitionFile>winnet.def</ModuleDefinitionFile>
<AdditionalLibraryDirectories>$(SolutionDir)/bin/$(Platform)-$(Configuration)</AdditionalLibraryDirectories>
- <AdditionalDependencies>shared.lib;libcommon.lib;Iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>libshared.lib;libcommon.lib;Iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug Static|Win32'">
@@ -190,7 +190,7 @@
<ConformanceMode>true</ConformanceMode>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<LanguageStandard>stdcpplatest</LanguageStandard>
- <AdditionalIncludeDirectories>$(ProjectDir)..\..\..\shared\src\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>$(ProjectDir)..\..\..\libshared\src\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
@@ -201,7 +201,7 @@
</Link>
<Lib>
<AdditionalLibraryDirectories>$(SolutionDir)/bin/$(Platform)-Debug</AdditionalLibraryDirectories>
- <AdditionalDependencies>shared.lib;libcommon.lib;Iphlpapi.lib</AdditionalDependencies>
+ <AdditionalDependencies>libshared.lib;libcommon.lib;Iphlpapi.lib</AdditionalDependencies>
</Lib>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
@@ -214,12 +214,12 @@
<ConformanceMode>true</ConformanceMode>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<LanguageStandard>stdcpplatest</LanguageStandard>
- <AdditionalIncludeDirectories>$(ProjectDir)..\..\..\shared\src\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>$(ProjectDir)..\..\..\libshared\src\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
- <AdditionalDependencies>shared.lib;libcommon.lib;Iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>libshared.lib;libcommon.lib;Iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(SolutionDir)/bin/$(Platform)-$(Configuration)</AdditionalLibraryDirectories>
<ModuleDefinitionFile>winnet.def</ModuleDefinitionFile>
</Link>
@@ -234,7 +234,7 @@
<ConformanceMode>true</ConformanceMode>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<LanguageStandard>stdcpplatest</LanguageStandard>
- <AdditionalIncludeDirectories>$(ProjectDir)..\..\..\shared\src\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>$(ProjectDir)..\..\..\libshared\src\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
@@ -244,7 +244,7 @@
<ModuleDefinitionFile>winnet.def</ModuleDefinitionFile>
</Link>
<Lib>
- <AdditionalDependencies>shared.lib;libcommon.lib;Iphlpapi.lib</AdditionalDependencies>
+ <AdditionalDependencies>libshared.lib;libcommon.lib;Iphlpapi.lib</AdditionalDependencies>
<AdditionalLibraryDirectories>$(SolutionDir)/bin/$(Platform)-Debug</AdditionalLibraryDirectories>
</Lib>
</ItemDefinitionGroup>
@@ -260,7 +260,7 @@
<ConformanceMode>true</ConformanceMode>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<LanguageStandard>stdcpplatest</LanguageStandard>
- <AdditionalIncludeDirectories>$(ProjectDir)..\..\..\shared\src\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>$(ProjectDir)..\..\..\libshared\src\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
@@ -269,7 +269,7 @@
<GenerateDebugInformation>true</GenerateDebugInformation>
<ModuleDefinitionFile>winnet.def</ModuleDefinitionFile>
<AdditionalLibraryDirectories>$(SolutionDir)/bin/$(Platform)-$(Configuration)</AdditionalLibraryDirectories>
- <AdditionalDependencies>shared.lib;libcommon.lib;Iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>libshared.lib;libcommon.lib;Iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
@@ -284,7 +284,7 @@
<ConformanceMode>true</ConformanceMode>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<LanguageStandard>stdcpplatest</LanguageStandard>
- <AdditionalIncludeDirectories>$(ProjectDir)..\..\..\shared\src\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>$(ProjectDir)..\..\..\libshared\src\;$(ProjectDir)..\..\..\windows-libraries\src\;$(ProjectDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
@@ -293,7 +293,7 @@
<GenerateDebugInformation>true</GenerateDebugInformation>
<ModuleDefinitionFile>winnet.def</ModuleDefinitionFile>
<AdditionalLibraryDirectories>$(SolutionDir)/bin/$(Platform)-$(Configuration)</AdditionalLibraryDirectories>
- <AdditionalDependencies>shared.lib;libcommon.lib;Iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>libshared.lib;libcommon.lib;Iphlpapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
diff --git a/windows/winnet/winnet.sln b/windows/winnet/winnet.sln
index a64d15d479..9a83e0d4a2 100644
--- a/windows/winnet/winnet.sln
+++ b/windows/winnet/winnet.sln
@@ -11,7 +11,10 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winnet", "src\winnet\winnet
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libcommon", "..\windows-libraries\src\libcommon\libcommon.vcxproj", "{B52E2D10-A94A-4605-914A-2DCEF6A757EF}"
EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "shared", "..\shared\src\shared\shared.vcxproj", "{EE69EA4A-CF71-4B88-866B-957F60C4CE0D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libshared", "..\libshared\src\libshared\libshared.vcxproj", "{EE69EA4A-CF71-4B88-866B-957F60C4CE0D}"
+ ProjectSection(ProjectDependencies) = postProject
+ {B52E2D10-A94A-4605-914A-2DCEF6A757EF} = {B52E2D10-A94A-4605-914A-2DCEF6A757EF}
+ EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution