summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorOdd Stranne <odd@mullvad.net>2019-11-27 15:17:01 +0100
committerOdd Stranne <odd@mullvad.net>2019-12-04 13:07:59 +0100
commitcbe95366a672a6cad17c4f6bab77044d3c701a43 (patch)
treec8fedd257a80ae7dccfc872a77462279857a0e0b
parent3c6723f89f1df413c31255ab56b2c48cad18f5e3 (diff)
downloadmullvadvpn-cbe95366a672a6cad17c4f6bab77044d3c701a43.tar.xz
mullvadvpn-cbe95366a672a6cad17c4f6bab77044d3c701a43.zip
Update logging in winutil
-rw-r--r--windows/winutil/src/winutil/winutil.cpp23
-rw-r--r--windows/winutil/src/winutil/winutil.h19
-rw-r--r--windows/winutil/src/winutil/winutil.vcxproj16
-rw-r--r--windows/winutil/winutil.sln14
4 files changed, 41 insertions, 31 deletions
diff --git a/windows/winutil/src/winutil/winutil.cpp b/windows/winutil/src/winutil/winutil.cpp
index 633e181779..4ea0ac27e3 100644
--- a/windows/winutil/src/winutil/winutil.cpp
+++ b/windows/winutil/src/winutil/winutil.cpp
@@ -1,7 +1,8 @@
#include "stdafx.h"
#include "winutil.h"
#include "migration.h"
-#include "libcommon/valuemapper.h"
+#include <libshared/logging/unwind.h>
+#include <libcommon/valuemapper.h>
#include <stdexcept>
extern "C"
@@ -9,8 +10,8 @@ WINUTIL_LINKAGE
WINUTIL_MIGRATION_STATUS
WINUTIL_API
WinUtil_MigrateAfterWindowsUpdate(
- WinUtilErrorSink errorSink,
- void *errorSinkContext
+ MullvadLogSink logSink,
+ void *logSinkContext
)
{
try
@@ -19,24 +20,20 @@ WinUtil_MigrateAfterWindowsUpdate(
const common::ValueMapper<migration::MigrationStatus, WINUTIL_MIGRATION_STATUS> mapper =
{
- value_type(migration::MigrationStatus::Success, WINUTIL_MIGRATION_STATUS::SUCCESS),
- value_type(migration::MigrationStatus::Aborted, WINUTIL_MIGRATION_STATUS::ABORTED),
- value_type(migration::MigrationStatus::NothingToMigrate, WINUTIL_MIGRATION_STATUS::NOTHING_TO_MIGRATE),
+ value_type(migration::MigrationStatus::Success, WINUTIL_MIGRATION_STATUS_SUCCESS),
+ value_type(migration::MigrationStatus::Aborted, WINUTIL_MIGRATION_STATUS_ABORTED),
+ value_type(migration::MigrationStatus::NothingToMigrate, WINUTIL_MIGRATION_STATUS_NOTHING_TO_MIGRATE),
};
return mapper.map(migration::MigrateAfterWindowsUpdate());
}
catch (const std::exception &err)
{
- if (nullptr != errorSink)
- {
- errorSink(err.what(), errorSinkContext);
- }
-
- return WINUTIL_MIGRATION_STATUS::FAILED;
+ shared::logging::UnwindAndLog(logSink, logSinkContext, err);
+ return WINUTIL_MIGRATION_STATUS_FAILED;
}
catch (...)
{
- return WINUTIL_MIGRATION_STATUS::FAILED;
+ return WINUTIL_MIGRATION_STATUS_FAILED;
}
}
diff --git a/windows/winutil/src/winutil/winutil.h b/windows/winutil/src/winutil/winutil.h
index 8939aadc8f..c29a57a079 100644
--- a/windows/winutil/src/winutil/winutil.h
+++ b/windows/winutil/src/winutil/winutil.h
@@ -1,6 +1,7 @@
#pragma once
-#include <cstdint>
+#include <libshared/logging/logsink.h>
+#include <stdint.h>
#ifdef WINUTIL_EXPORTS
#define WINUTIL_LINKAGE __declspec(dllexport)
@@ -10,19 +11,17 @@
#define WINUTIL_API __stdcall
-typedef void (WINUTIL_API *WinUtilErrorSink)(const char *errorMessage, void *context);
-
-enum class WINUTIL_MIGRATION_STATUS : uint32_t
+enum WINUTIL_MIGRATION_STATUS
{
- SUCCESS = 0,
+ WINUTIL_MIGRATION_STATUS_SUCCESS = 0,
// Destination already exists
- ABORTED,
+ WINUTIL_MIGRATION_STATUS_ABORTED,
// There's no backup
- NOTHING_TO_MIGRATE,
+ WINUTIL_MIGRATION_STATUS_NOTHING_TO_MIGRATE,
- FAILED,
+ WINUTIL_MIGRATION_STATUS_FAILED,
};
extern "C"
@@ -30,6 +29,6 @@ WINUTIL_LINKAGE
WINUTIL_MIGRATION_STATUS
WINUTIL_API
WinUtil_MigrateAfterWindowsUpdate(
- WinUtilErrorSink errorSink,
- void *errorSinkContext
+ MullvadLogSink logSink,
+ void *logSinkContext
);
diff --git a/windows/winutil/src/winutil/winutil.vcxproj b/windows/winutil/src/winutil/winutil.vcxproj
index 7d4e17dbff..3113553ce3 100644
--- a/windows/winutil/src/winutil/winutil.vcxproj
+++ b/windows/winutil/src/winutil/winutil.vcxproj
@@ -123,13 +123,13 @@
<ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpplatest</LanguageStandard>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <AdditionalIncludeDirectories>$(ProjectDir)../../../windows-libraries/src/</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>$(ProjectDir)../../../libshared/src/;$(ProjectDir)../../../windows-libraries/src/;$(ProjectDir)../../../</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>$(SolutionDir)bin\$(Platform)-$(Configuration)\</AdditionalLibraryDirectories>
- <AdditionalDependencies>libcommon.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>libshared.lib;libcommon.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>winutil.def</ModuleDefinitionFile>
</Link>
</ItemDefinitionGroup>
@@ -143,13 +143,13 @@
<ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpplatest</LanguageStandard>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
- <AdditionalIncludeDirectories>$(ProjectDir)../../../windows-libraries/src/</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>$(ProjectDir)../../../libshared/src/;$(ProjectDir)../../../windows-libraries/src/;$(ProjectDir)../../../</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>$(SolutionDir)bin\$(Platform)-$(Configuration)\</AdditionalLibraryDirectories>
- <AdditionalDependencies>libcommon.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>libshared.lib;libcommon.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>winutil.def</ModuleDefinitionFile>
</Link>
</ItemDefinitionGroup>
@@ -165,7 +165,7 @@
<ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpplatest</LanguageStandard>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <AdditionalIncludeDirectories>$(ProjectDir)../../../windows-libraries/src/</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>$(ProjectDir)../../../libshared/src/;$(ProjectDir)../../../windows-libraries/src/;$(ProjectDir)../../../</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
@@ -173,7 +173,7 @@
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>$(SolutionDir)bin\$(Platform)-$(Configuration)\</AdditionalLibraryDirectories>
- <AdditionalDependencies>libcommon.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>libshared.lib;libcommon.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>winutil.def</ModuleDefinitionFile>
</Link>
</ItemDefinitionGroup>
@@ -189,7 +189,7 @@
<ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpplatest</LanguageStandard>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
- <AdditionalIncludeDirectories>$(ProjectDir)../../../windows-libraries/src/</AdditionalIncludeDirectories>
+ <AdditionalIncludeDirectories>$(ProjectDir)../../../libshared/src/;$(ProjectDir)../../../windows-libraries/src/;$(ProjectDir)../../../</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
@@ -197,7 +197,7 @@
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>$(SolutionDir)bin\$(Platform)-$(Configuration)\</AdditionalLibraryDirectories>
- <AdditionalDependencies>libcommon.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
+ <AdditionalDependencies>libshared.lib;libcommon.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>winutil.def</ModuleDefinitionFile>
</Link>
</ItemDefinitionGroup>
diff --git a/windows/winutil/winutil.sln b/windows/winutil/winutil.sln
index 8109de4e94..79dc0dc851 100644
--- a/windows/winutil/winutil.sln
+++ b/windows/winutil/winutil.sln
@@ -6,10 +6,16 @@ MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winutil", "src\winutil\winutil.vcxproj", "{C075F50C-1A62-46D1-9494-02C8F48A9419}"
ProjectSection(ProjectDependencies) = postProject
{B52E2D10-A94A-4605-914A-2DCEF6A757EF} = {B52E2D10-A94A-4605-914A-2DCEF6A757EF}
+ {EE69EA4A-CF71-4B88-866B-957F60C4CE0D} = {EE69EA4A-CF71-4B88-866B-957F60C4CE0D}
EndProjectSection
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}") = "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
Debug|x64 = Debug|x64
@@ -34,6 +40,14 @@ Global
{B52E2D10-A94A-4605-914A-2DCEF6A757EF}.Release|x64.Build.0 = Release|x64
{B52E2D10-A94A-4605-914A-2DCEF6A757EF}.Release|x86.ActiveCfg = Release|Win32
{B52E2D10-A94A-4605-914A-2DCEF6A757EF}.Release|x86.Build.0 = Release|Win32
+ {EE69EA4A-CF71-4B88-866B-957F60C4CE0D}.Debug|x64.ActiveCfg = Debug|x64
+ {EE69EA4A-CF71-4B88-866B-957F60C4CE0D}.Debug|x64.Build.0 = Debug|x64
+ {EE69EA4A-CF71-4B88-866B-957F60C4CE0D}.Debug|x86.ActiveCfg = Debug|Win32
+ {EE69EA4A-CF71-4B88-866B-957F60C4CE0D}.Debug|x86.Build.0 = Debug|Win32
+ {EE69EA4A-CF71-4B88-866B-957F60C4CE0D}.Release|x64.ActiveCfg = Release|x64
+ {EE69EA4A-CF71-4B88-866B-957F60C4CE0D}.Release|x64.Build.0 = Release|x64
+ {EE69EA4A-CF71-4B88-866B-957F60C4CE0D}.Release|x86.ActiveCfg = Release|Win32
+ {EE69EA4A-CF71-4B88-866B-957F60C4CE0D}.Release|x86.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE