summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmake/os/Windows.cmake3
-rw-r--r--mysql-test/lib/My/SafeProcess/safe_kill_win.cc3
-rw-r--r--plugin/auth_gssapi/server_plugin.cc2
-rw-r--r--plugin/auth_gssapi/server_plugin.h2
-rw-r--r--plugin/auth_gssapi/sspi_server.cc4
-rw-r--r--plugin/win_auth_client/handshake.h2
-rw-r--r--storage/connect/CMakeLists.txt1
-rw-r--r--storage/connect/domdoc.cpp2
-rw-r--r--storage/innobase/os/os0file.cc7
-rw-r--r--storage/innobase/sync/sync0sync.cc6
-rw-r--r--storage/sphinx/CMakeLists.txt1
-rw-r--r--win/packaging/ca/CustomAction.cpp70
12 files changed, 61 insertions, 42 deletions
diff --git a/cmake/os/Windows.cmake b/cmake/os/Windows.cmake
index 851a42e7ad1..104c3899507 100644
--- a/cmake/os/Windows.cmake
+++ b/cmake/os/Windows.cmake
@@ -148,6 +148,9 @@ IF(MSVC)
#TODO: update the code and remove the disabled warnings
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /we4700 /we4311 /we4477 /we4302 /we4090")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /we4099 /we4700 /we4311 /we4477 /we4302 /we4090")
+ IF(MSVC_VERSION GREATER 1910)
+ SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /permissive-")
+ ENDIF()
ADD_DEFINITIONS(-D_CRT_NONSTDC_NO_WARNINGS)
IF(MYSQL_MAINTAINER_MODE MATCHES "ERR")
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /WX")
diff --git a/mysql-test/lib/My/SafeProcess/safe_kill_win.cc b/mysql-test/lib/My/SafeProcess/safe_kill_win.cc
index 6ca38ceee81..8cb805b1bbc 100644
--- a/mysql-test/lib/My/SafeProcess/safe_kill_win.cc
+++ b/mysql-test/lib/My/SafeProcess/safe_kill_win.cc
@@ -72,6 +72,7 @@ void dump_single_process(DWORD pid)
char path[MAX_PATH];
char working_dir[MAX_PATH];
char tmpname[MAX_PATH];
+ char *filename= 0;
process= OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, FALSE, pid);
if (!process)
@@ -88,7 +89,7 @@ void dump_single_process(DWORD pid)
goto exit;
}
- char *filename= strrchr(path, '\\');
+ filename= strrchr(path, '\\');
if (filename)
{
filename++;
diff --git a/plugin/auth_gssapi/server_plugin.cc b/plugin/auth_gssapi/server_plugin.cc
index b991c764f05..5db86cffbe4 100644
--- a/plugin/auth_gssapi/server_plugin.cc
+++ b/plugin/auth_gssapi/server_plugin.cc
@@ -56,7 +56,7 @@ static int first_packet_len;
*/
char *srv_principal_name;
char *srv_keytab_path;
-char *srv_mech_name=(char *)"";
+const char *srv_mech_name="";
unsigned long srv_mech;
/**
diff --git a/plugin/auth_gssapi/server_plugin.h b/plugin/auth_gssapi/server_plugin.h
index 1348835e653..6284a319d03 100644
--- a/plugin/auth_gssapi/server_plugin.h
+++ b/plugin/auth_gssapi/server_plugin.h
@@ -37,7 +37,7 @@ typedef enum
extern unsigned long srv_mech;
extern char *srv_principal_name;
-extern char *srv_mech_name;
+extern const char *srv_mech_name;
extern char *srv_keytab_path;
/*
Check, with GSSAPI/SSPI username of logged on user.
diff --git a/plugin/auth_gssapi/sspi_server.cc b/plugin/auth_gssapi/sspi_server.cc
index 140c6adf733..16f20b9b3b7 100644
--- a/plugin/auth_gssapi/sspi_server.cc
+++ b/plugin/auth_gssapi/sspi_server.cc
@@ -163,7 +163,7 @@ int auth_server(MYSQL_PLUGIN_VIO *vio, const char *user, size_t user_len, int co
}
sspi_ret= AcquireCredentialsHandle(
srv_principal_name,
- srv_mech_name,
+ (LPSTR)srv_mech_name,
SECPKG_CRED_INBOUND,
NULL,
NULL,
@@ -287,7 +287,7 @@ int plugin_init()
ret = AcquireCredentialsHandle(
srv_principal_name,
- srv_mech_name,
+ (LPSTR)srv_mech_name,
SECPKG_CRED_INBOUND,
NULL,
NULL,
diff --git a/plugin/win_auth_client/handshake.h b/plugin/win_auth_client/handshake.h
index bbad5ca36bc..66d492f79ab 100644
--- a/plugin/win_auth_client/handshake.h
+++ b/plugin/win_auth_client/handshake.h
@@ -100,7 +100,7 @@ public:
Handshake(const char *ssp, side_t side);
virtual ~Handshake();
- int Handshake::packet_processing_loop();
+ int packet_processing_loop();
bool virtual is_complete() const
{
diff --git a/storage/connect/CMakeLists.txt b/storage/connect/CMakeLists.txt
index 3185aa8ea4e..fb0c5d5f897 100644
--- a/storage/connect/CMakeLists.txt
+++ b/storage/connect/CMakeLists.txt
@@ -333,6 +333,7 @@ IF(MSVC)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4267")
ENDIF()
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4996")
+ string(REPLACE "/permissive-" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
ENDIF()
# Install some extra files that belong to connect engine
diff --git a/storage/connect/domdoc.cpp b/storage/connect/domdoc.cpp
index ba8eb829abd..4502530cf82 100644
--- a/storage/connect/domdoc.cpp
+++ b/storage/connect/domdoc.cpp
@@ -84,7 +84,7 @@ DOMDOC::DOMDOC(char *nsl, char *nsdf, char *enc, PFBLOCK fp)
: XMLDOCUMENT(nsl, nsdf, enc)
{
assert (!fp || fp->Type == TYPE_FB_XML);
- Docp = (fp) ? ((PXBLOCK)fp)->Docp : NULL;
+ Docp = (fp) ? ((PXBLOCK)fp)->Docp : (MSXML2::IXMLDOMDocumentPtr)NULL;
Nlist = NULL;
Hr = 0;
} // end of DOMDOC constructor
diff --git a/storage/innobase/os/os0file.cc b/storage/innobase/os/os0file.cc
index 3c0013e600a..b5437e88ea3 100644
--- a/storage/innobase/os/os0file.cc
+++ b/storage/innobase/os/os0file.cc
@@ -814,7 +814,8 @@ os_file_get_block_size(
#ifdef _WIN32
fblock_size = 0;
-
+ BOOL result = false;
+ size_t len = 0;
// Open volume for this file, find out it "physical bytes per sector"
HANDLE volume_handle = INVALID_HANDLE_VALUE;
@@ -825,7 +826,7 @@ os_file_get_block_size(
goto end;
}
- size_t len = strlen(volume);
+ len = strlen(volume);
if (volume[len - 1] == '\\') {
// Trim trailing backslash from volume name.
volume[len - 1] = 0;
@@ -849,7 +850,7 @@ os_file_get_block_size(
storage_query.PropertyId = StorageAccessAlignmentProperty;
storage_query.QueryType = PropertyStandardQuery;
- BOOL result = os_win32_device_io_control(volume_handle,
+ result = os_win32_device_io_control(volume_handle,
IOCTL_STORAGE_QUERY_PROPERTY,
&storage_query,
sizeof(storage_query),
diff --git a/storage/innobase/sync/sync0sync.cc b/storage/innobase/sync/sync0sync.cc
index e93f8a00758..9716d573a63 100644
--- a/storage/innobase/sync/sync0sync.cc
+++ b/storage/innobase/sync/sync0sync.cc
@@ -148,13 +148,13 @@ sync_print_wait_info(FILE* file)
" %.2f RW-excl, %.2f RW-sx\n",
(double) rw_lock_stats.rw_s_spin_round_count /
(rw_lock_stats.rw_s_spin_wait_count
- ? rw_lock_stats.rw_s_spin_wait_count : 1),
+ ? rw_lock_stats.rw_s_spin_wait_count : 1LL),
(double) rw_lock_stats.rw_x_spin_round_count /
(rw_lock_stats.rw_x_spin_wait_count
- ? rw_lock_stats.rw_x_spin_wait_count : 1),
+ ? rw_lock_stats.rw_x_spin_wait_count : 1LL),
(double) rw_lock_stats.rw_sx_spin_round_count /
(rw_lock_stats.rw_sx_spin_wait_count
- ? rw_lock_stats.rw_sx_spin_wait_count : 1));
+ ? rw_lock_stats.rw_sx_spin_wait_count : 1LL));
}
/**
diff --git a/storage/sphinx/CMakeLists.txt b/storage/sphinx/CMakeLists.txt
index 71130080e24..7cae7982e05 100644
--- a/storage/sphinx/CMakeLists.txt
+++ b/storage/sphinx/CMakeLists.txt
@@ -11,6 +11,7 @@ IF(MSVC)
ENDIF()
# Disable warning about deprecated functions, inet_aton
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4996")
+ STRING(REPLACE "/permissive-" "" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}" )
ENDIF()
IF(MSVC)
diff --git a/win/packaging/ca/CustomAction.cpp b/win/packaging/ca/CustomAction.cpp
index 9803b0b07a2..025c4da4592 100644
--- a/win/packaging/ca/CustomAction.cpp
+++ b/win/packaging/ca/CustomAction.cpp
@@ -60,13 +60,13 @@ extern "C" UINT __stdcall RemoveDataDirectory(MSIHANDLE hInstall)
{
HRESULT hr = S_OK;
UINT er = ERROR_SUCCESS;
+ wchar_t dir[MAX_PATH];
+ DWORD len = MAX_PATH;
hr = WcaInitialize(hInstall, __FUNCTION__);
ExitOnFailure(hr, "Failed to initialize");
WcaLog(LOGMSG_STANDARD, "Initialized.");
- wchar_t dir[MAX_PATH];
- DWORD len = MAX_PATH;
MsiGetPropertyW(hInstall, L"CustomActionData", dir, &len);
er= ExecRemoveDataDirectory(dir);
@@ -160,20 +160,21 @@ extern "C" UINT __stdcall CheckDirectoryEmpty(MSIHANDLE hInstall,
{
HRESULT hr = S_OK;
UINT er = ERROR_SUCCESS;
+ wchar_t buf[MAX_PATH];
+ DWORD len = MAX_PATH;
+ WIN32_FIND_DATAW data;
+ HANDLE h;
+ bool empty;
+
hr = WcaInitialize(hInstall, __FUNCTION__);
ExitOnFailure(hr, "Failed to initialize");
WcaLog(LOGMSG_STANDARD, "Initialized.");
-
- wchar_t buf[MAX_PATH];
- DWORD len = MAX_PATH;
MsiGetPropertyW(hInstall, PropertyName, buf, &len);
wcscat_s(buf, MAX_PATH, L"*.*");
WcaLog(LOGMSG_STANDARD, "Checking files in %S", buf);
- WIN32_FIND_DATAW data;
- HANDLE h;
- bool empty;
+
h= FindFirstFile(buf, &data);
if (h != INVALID_HANDLE_VALUE)
{
@@ -342,6 +343,12 @@ void CheckServiceConfig(
wchar_t * commandline= config->lpBinaryPathName;
int numargs;
wchar_t **argv= CommandLineToArgvW(commandline, &numargs);
+ wchar_t current_datadir_buf[MAX_PATH]={0};
+ wchar_t normalized_current_datadir[MAX_PATH+1];
+ wchar_t *current_datadir;
+ wchar_t *defaults_file;
+ bool is_my_service;
+
WcaLog(LOGMSG_VERBOSE, "CommandLine= %S", commandline);
if(!argv || !argv[0] || ! wcsstr(argv[0], L"mysqld"))
{
@@ -356,7 +363,7 @@ void CheckServiceConfig(
same_bindir = true;
}
- bool is_my_service = (_wcsicmp(my_servicename, other_servicename) == 0);
+ is_my_service = (_wcsicmp(my_servicename, other_servicename) == 0);
if(!is_my_service)
{
WcaLog(LOGMSG_STANDARD, "service does not match current service");
@@ -379,10 +386,8 @@ void CheckServiceConfig(
goto end;
}
- wchar_t current_datadir_buf[MAX_PATH]={0};
- wchar_t normalized_current_datadir[MAX_PATH+1];
- wchar_t *current_datadir= current_datadir_buf;
- wchar_t *defaults_file= argv[1]+16;
+ current_datadir= current_datadir_buf;
+ defaults_file= argv[1]+16;
defaults_file= strip_quotes(defaults_file);
WcaLog(LOGMSG_STANDARD, "parsed defaults file is %S", defaults_file);
@@ -453,6 +458,7 @@ extern "C" UINT CheckDBInUse(MSIHANDLE hInstall)
ULONG bufneed = 0x00;
ULONG num_services = 0x00;
LPENUM_SERVICE_STATUS_PROCESS info = NULL;
+ BOOL ok;
hr = WcaInitialize(hInstall, __FUNCTION__);
ExitOnFailure(hr, "Failed to initialize");
@@ -471,7 +477,7 @@ extern "C" UINT CheckDBInUse(MSIHANDLE hInstall)
ExitOnFailure(E_FAIL, "OpenSCManager failed");
}
- BOOL ok= EnumServicesStatusExW( scm,
+ ok = EnumServicesStatusExW( scm,
SC_ENUM_PROCESS_INFO,
SERVICE_WIN32,
SERVICE_STATE_ALL,
@@ -559,13 +565,16 @@ extern "C" UINT __stdcall CheckDatabaseProperties (MSIHANDLE hInstall)
const wchar_t *ErrorMsg=0;
HRESULT hr= S_OK;
UINT er= ERROR_SUCCESS;
-
+ DWORD ServiceNameLen = MAX_PATH;
+ DWORD QuickConfigLen = MAX_PATH;
+ DWORD PasswordLen= MAX_PATH;
+ DWORD SkipNetworkingLen= MAX_PATH;
hr = WcaInitialize(hInstall, __FUNCTION__);
ExitOnFailure(hr, "Failed to initialize");
WcaLog(LOGMSG_STANDARD, "Initialized.");
- DWORD ServiceNameLen = MAX_PATH;
+
MsiGetPropertyW (hInstall, L"SERVICENAME", ServiceName, &ServiceNameLen);
if(ServiceName[0])
{
@@ -594,13 +603,11 @@ extern "C" UINT __stdcall CheckDatabaseProperties (MSIHANDLE hInstall)
}
}
- DWORD PasswordLen= MAX_PATH;
MsiGetPropertyW (hInstall, L"PASSWORD", Password, &PasswordLen);
EscapeCommandLine(Password, EscapedPassword,
sizeof(EscapedPassword)/sizeof(EscapedPassword[0]));
MsiSetPropertyW(hInstall,L"ESCAPEDPASSWORD",EscapedPassword);
- DWORD SkipNetworkingLen= MAX_PATH;
MsiGetPropertyW(hInstall, L"SKIPNETWORKING", SkipNetworking,
&SkipNetworkingLen);
MsiGetPropertyW(hInstall, L"PORT", Port, &PortLen);
@@ -644,8 +651,6 @@ extern "C" UINT __stdcall CheckDatabaseProperties (MSIHANDLE hInstall)
}
}
-
- DWORD QuickConfigLen = MAX_PATH;
MsiGetPropertyW (hInstall, L"STDCONFIG", QuickConfig, &QuickConfigLen);
if(QuickConfig[0] !=0)
{
@@ -722,12 +727,12 @@ extern "C" UINT __stdcall PresetDatabaseProperties(MSIHANDLE hInstall)
UINT er = ERROR_SUCCESS;
HRESULT hr= S_OK;
MEMORYSTATUSEX memstatus;
+ DWORD BufferPoolsizeParamLen = MAX_PATH;
hr = WcaInitialize(hInstall, __FUNCTION__);
ExitOnFailure(hr, "Failed to initialize");
WcaLog(LOGMSG_STANDARD, "Initialized.");
/* Check if bufferpoolsize parameter was given on the command line*/
- DWORD BufferPoolsizeParamLen = MAX_PATH;
MsiGetPropertyW(hInstall, L"BUFFERPOOLSIZE", buff, &BufferPoolsizeParamLen);
if (BufferPoolsizeParamLen && buff[0])
@@ -817,11 +822,13 @@ extern "C" UINT __stdcall CreateDatabaseRollback(MSIHANDLE hInstall)
UINT er = ERROR_SUCCESS;
wchar_t* service= 0;
wchar_t* dir= 0;
+ wchar_t data[2*MAX_PATH];
+ DWORD len= MAX_PATH;
+
hr = WcaInitialize(hInstall, __FUNCTION__);
ExitOnFailure(hr, "Failed to initialize");
WcaLog(LOGMSG_STANDARD, "Initialized.");
- wchar_t data[2*MAX_PATH];
- DWORD len= MAX_PATH;
+
MsiGetPropertyW(hInstall, L"CustomActionData", data, &len);
/* Property is encoded as [SERVICENAME]\[DBLOCATION] */
@@ -871,6 +878,11 @@ extern "C" UINT __stdcall CheckServiceUpgrades(MSIHANDLE hInstall)
DWORD size =MAX_VERSION_PROPERTY_SIZE;
int installerMajorVersion, installerMinorVersion, installerPatchVersion;
bool upgradableServiceFound=false;
+ LPENUM_SERVICE_STATUS_PROCESSW info;
+ DWORD bufsize;
+ int index;
+ BOOL ok;
+ SC_HANDLE scm;
hr = WcaInitialize(hInstall, __FUNCTION__);
WcaLog(LOGMSG_STANDARD, "Initialized.");
@@ -895,7 +907,7 @@ extern "C" UINT __stdcall CheckServiceUpgrades(MSIHANDLE hInstall)
}
- SC_HANDLE scm = OpenSCManager(NULL, NULL,
+ scm = OpenSCManager(NULL, NULL,
SC_MANAGER_ENUMERATE_SERVICE | SC_MANAGER_CONNECT);
if (scm == NULL)
{
@@ -906,19 +918,19 @@ extern "C" UINT __stdcall CheckServiceUpgrades(MSIHANDLE hInstall)
static BYTE buf[64*1024];
static BYTE config_buffer[8*1024];
- DWORD bufsize= sizeof(buf);
+ bufsize= sizeof(buf);
DWORD bufneed;
DWORD num_services;
- BOOL ok= EnumServicesStatusExW(scm, SC_ENUM_PROCESS_INFO, SERVICE_WIN32,
+ ok= EnumServicesStatusExW(scm, SC_ENUM_PROCESS_INFO, SERVICE_WIN32,
SERVICE_STATE_ALL, buf, bufsize, &bufneed, &num_services, NULL, NULL);
if(!ok)
{
hr = HRESULT_FROM_WIN32(GetLastError());
ExitOnFailure(hr,"EnumServicesStatusEx failed");
}
- LPENUM_SERVICE_STATUS_PROCESSW info =
+ info =
(LPENUM_SERVICE_STATUS_PROCESSW)buf;
- int index=-1;
+ index=-1;
for (ULONG i=0; i < num_services; i++)
{
SC_HANDLE service= OpenServiceW(scm, info[i].lpServiceName,
@@ -928,7 +940,7 @@ extern "C" UINT __stdcall CheckServiceUpgrades(MSIHANDLE hInstall)
QUERY_SERVICE_CONFIGW *config=
(QUERY_SERVICE_CONFIGW*)(void *)config_buffer;
DWORD needed;
- BOOL ok= QueryServiceConfigW(service, config,sizeof(config_buffer),
+ ok= QueryServiceConfigW(service, config,sizeof(config_buffer),
&needed) && (config->dwStartType != SERVICE_DISABLED);
CloseServiceHandle(service);
if (ok)