[prev in list] [next in list] [prev in thread] [next in thread]
List: win-pv-devel
Subject: [PATCH 3/6] Delete CoInstaller code
From: Owen Smith <owen.smith () cloud ! com>
Date: 2023-08-31 7:29:18
Message-ID: 20230831072921.1258-4-owen.smith () cloud ! com
[Download RAW message or body]
With the CoInstaller removed from the INF file, delete the CoInstaller
source code and projects.
Signed-off-by: Owen Smith <owen.smith@cloud.com>
---
src/coinst/coinst.c | 2136 -----------------
src/coinst/xenbus_coinst.def | 38 -
src/coinst/xenbus_coinst.rc | 57 -
vs2015/package/package.vcxproj | 3 -
vs2015/xenbus.sln | 22 -
vs2015/xenbus_coinst/xenbus_coinst.vcxproj | 64 -
.../xenbus_coinst/xenbus_coinst.vcxproj.user | 8 -
vs2017/package/package.vcxproj | 3 -
vs2017/xenbus.sln | 22 -
vs2017/xenbus_coinst/xenbus_coinst.vcxproj | 64 -
.../xenbus_coinst/xenbus_coinst.vcxproj.user | 8 -
vs2019/package/package.vcxproj | 3 -
vs2019/xenbus.sln | 22 -
vs2019/xenbus_coinst/xenbus_coinst.vcxproj | 70 -
.../xenbus_coinst/xenbus_coinst.vcxproj.user | 8 -
vs2022/package/package.vcxproj | 3 -
vs2022/xenbus.sln | 22 -
vs2022/xenbus_coinst/xenbus_coinst.vcxproj | 70 -
.../xenbus_coinst/xenbus_coinst.vcxproj.user | 8 -
19 files changed, 2631 deletions(-)
delete mode 100644 src/coinst/coinst.c
delete mode 100644 src/coinst/xenbus_coinst.def
delete mode 100644 src/coinst/xenbus_coinst.rc
delete mode 100644 vs2015/xenbus_coinst/xenbus_coinst.vcxproj
delete mode 100644 vs2015/xenbus_coinst/xenbus_coinst.vcxproj.user
delete mode 100644 vs2017/xenbus_coinst/xenbus_coinst.vcxproj
delete mode 100644 vs2017/xenbus_coinst/xenbus_coinst.vcxproj.user
delete mode 100644 vs2019/xenbus_coinst/xenbus_coinst.vcxproj
delete mode 100644 vs2019/xenbus_coinst/xenbus_coinst.vcxproj.user
delete mode 100644 vs2022/xenbus_coinst/xenbus_coinst.vcxproj
delete mode 100644 vs2022/xenbus_coinst/xenbus_coinst.vcxproj.user
diff --git a/src/coinst/coinst.c b/src/coinst/coinst.c
deleted file mode 100644
index caa1102..0000000
--- a/src/coinst/coinst.c
+++ /dev/null
@@ -1,2136 +0,0 @@
-/* Copyright (c) Xen Project.
- * Copyright (c) Cloud Software Group, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms,
- * with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * * Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the
- * following disclaimer.
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
- * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#define INITGUID
-
-#include <windows.h>
-#include <setupapi.h>
-#include <devguid.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <strsafe.h>
-#include <malloc.h>
-#include <assert.h>
-
-#include <version.h>
-#include <revision.h>
-
-#define stringify_literal(_text) #_text
-#define stringify(_text) stringify_literal(_text)
-#define __MODULE__ stringify(PROJECT)
-
-__user_code;
-
-#define MAXIMUM_BUFFER_SIZE 1024
-
-#define SERVICES_KEY "SYSTEM\\CurrentControlSet\\Services"
-
-#define SERVICE_KEY(_Driver) \
- SERVICES_KEY ## "\\" ## #_Driver
-
-#define PARAMETERS_KEY(_Driver) \
- SERVICE_KEY(_Driver) ## "\\Parameters"
-
-#define UNPLUG_KEY \
- SERVICE_KEY(XEN) ## "\\Unplug"
-
-#define CONTROL_KEY "SYSTEM\\CurrentControlSet\\Control"
-
-#define CLASS_KEY \
- CONTROL_KEY ## "\\Class"
-
-#define ENUM_KEY "SYSTEM\\CurrentControlSet\\Enum"
-
-#define MONITOR_NAME "XENBUS_MONITOR"
-
-static VOID
-#pragma prefast(suppress:6262) // Function uses '1036' bytes of stack: exceeds \
/analyze:stacksize'1024'
-__Log(
- IN const CHAR *Format,
- IN ...
- )
-{
- TCHAR Buffer[MAXIMUM_BUFFER_SIZE];
- va_list Arguments;
- size_t Length;
- SP_LOG_TOKEN LogToken;
- DWORD Category;
- DWORD Flags;
- HRESULT Result;
-
- va_start(Arguments, Format);
- Result = StringCchVPrintf(Buffer, MAXIMUM_BUFFER_SIZE, Format, Arguments);
- va_end(Arguments);
-
- if (Result != S_OK && Result != STRSAFE_E_INSUFFICIENT_BUFFER)
- return;
-
- Result = StringCchLength(Buffer, MAXIMUM_BUFFER_SIZE, &Length);
- if (Result != S_OK)
- return;
-
- LogToken = SetupGetThreadLogToken();
- Category = TXTLOG_VENDOR;
- Flags = TXTLOG_WARNING;
-
- SetupWriteTextLog(LogToken, Category, Flags, Buffer);
- Length = __min(MAXIMUM_BUFFER_SIZE - 1, Length + 2);
-
- __analysis_assume(Length < MAXIMUM_BUFFER_SIZE);
- __analysis_assume(Length >= 2);
- Buffer[Length] = '\0';
- Buffer[Length - 1] = '\n';
- Buffer[Length - 2] = '\r';
-
- OutputDebugString(Buffer);
-}
-
-#define Log(_Format, ...) \
- __Log(__MODULE__ "|" __FUNCTION__ ": " _Format, __VA_ARGS__)
-
-static PTCHAR
-GetErrorMessage(
- IN DWORD Error
- )
-{
- PTCHAR Message;
- ULONG Index;
-
- if (!FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |
- FORMAT_MESSAGE_FROM_SYSTEM |
- FORMAT_MESSAGE_IGNORE_INSERTS,
- NULL,
- Error,
- MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
- (LPTSTR)&Message,
- 0,
- NULL))
- return NULL;
-
- for (Index = 0; Message[Index] != '\0'; Index++) {
- if (Message[Index] == '\r' || Message[Index] == '\n') {
- Message[Index] = '\0';
- break;
- }
- }
-
- return Message;
-}
-
-static FORCEINLINE const CHAR *
-__FunctionName(
- IN DI_FUNCTION Function
- )
-{
-#define _NAME(_Function) \
- case DIF_ ## _Function: \
- return #_Function;
-
- switch (Function) {
- _NAME(INSTALLDEVICE);
- _NAME(REMOVE);
- _NAME(SELECTDEVICE);
- _NAME(ASSIGNRESOURCES);
- _NAME(PROPERTIES);
- _NAME(FIRSTTIMESETUP);
- _NAME(FOUNDDEVICE);
- _NAME(SELECTCLASSDRIVERS);
- _NAME(VALIDATECLASSDRIVERS);
- _NAME(INSTALLCLASSDRIVERS);
- _NAME(CALCDISKSPACE);
- _NAME(DESTROYPRIVATEDATA);
- _NAME(VALIDATEDRIVER);
- _NAME(MOVEDEVICE);
- _NAME(DETECT);
- _NAME(INSTALLWIZARD);
- _NAME(DESTROYWIZARDDATA);
- _NAME(PROPERTYCHANGE);
- _NAME(ENABLECLASS);
- _NAME(DETECTVERIFY);
- _NAME(INSTALLDEVICEFILES);
- _NAME(ALLOW_INSTALL);
- _NAME(SELECTBESTCOMPATDRV);
- _NAME(REGISTERDEVICE);
- _NAME(NEWDEVICEWIZARD_PRESELECT);
- _NAME(NEWDEVICEWIZARD_SELECT);
- _NAME(NEWDEVICEWIZARD_PREANALYZE);
- _NAME(NEWDEVICEWIZARD_POSTANALYZE);
- _NAME(NEWDEVICEWIZARD_FINISHINSTALL);
- _NAME(INSTALLINTERFACES);
- _NAME(DETECTCANCEL);
- _NAME(REGISTER_COINSTALLERS);
- _NAME(ADDPROPERTYPAGE_ADVANCED);
- _NAME(ADDPROPERTYPAGE_BASIC);
- _NAME(TROUBLESHOOTER);
- _NAME(POWERMESSAGEWAKE);
- default:
- break;
- }
-
- return "UNKNOWN";
-
-#undef _NAME
-}
-
-static BOOLEAN
-AllowUpdate(
- IN PTCHAR DriverName,
- OUT PBOOLEAN Allow
- )
-{
- TCHAR ServiceKeyName[MAX_PATH];
- HKEY ServiceKey;
- HRESULT Result;
- HRESULT Error;
- DWORD ValueLength;
- DWORD Value;
- DWORD Type;
-
- Log("====> (%s)", DriverName);
-
- Result = StringCbPrintf(ServiceKeyName,
- MAX_PATH,
- SERVICES_KEY "\\%s",
- DriverName);
- assert(SUCCEEDED(Result));
-
- Error = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
- ServiceKeyName,
- 0,
- KEY_READ,
- &ServiceKey);
- if (Error != ERROR_SUCCESS) {
- if (Error == ERROR_FILE_NOT_FOUND) {
- Value = 1;
- goto done;
- }
-
- SetLastError(Error);
- goto fail1;
- }
-
- ValueLength = sizeof (Value);
-
- Error = RegQueryValueEx(ServiceKey,
- "AllowUpdate",
- NULL,
- &Type,
- (LPBYTE)&Value,
- &ValueLength);
- if (Error != ERROR_SUCCESS) {
- if (Error == ERROR_FILE_NOT_FOUND) {
- Type = REG_DWORD;
- Value = 1;
- } else {
- SetLastError(Error);
- goto fail2;
- }
- }
-
- if (Type != REG_DWORD) {
- SetLastError(ERROR_BAD_FORMAT);
- goto fail3;
- }
-
- RegCloseKey(ServiceKey);
-
-done:
- if (Value == 0) {
- Log("DISALLOWED");
- *Allow = FALSE;
- }
-
- Log("<====");
-
- return TRUE;
-
-fail3:
- Log("fail3");
-
-fail2:
- Log("fail2");
-
- RegCloseKey(ServiceKey);
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-AllowInstall(
- OUT PBOOLEAN Allow
- )
-{
- BOOLEAN Success;
- HRESULT Error;
-
- Log("====>");
-
- *Allow = TRUE;
-
- Success = AllowUpdate("XEN", Allow);
- if (!Success)
- goto fail1;
-
- Success = AllowUpdate("XENBUS", Allow);
- if (!Success)
- goto fail2;
-
- Success = AllowUpdate("XENFILT", Allow);
- if (!Success)
- goto fail3;
-
- Log("<====");
-
- return TRUE;
-
-fail3:
- Log("fail3");
-
-fail2:
- Log("fail2");
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-OpenEnumKey(
- OUT PHKEY EnumKey
- )
-{
- HRESULT Error;
-
- Error = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
- ENUM_KEY,
- 0,
- KEY_READ,
- EnumKey);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail1;
- }
-
- return TRUE;
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-OpenBusKey(
- IN PTCHAR BusKeyName,
- OUT PHKEY BusKey
- )
-{
- BOOLEAN Success;
- HKEY EnumKey;
- HRESULT Error;
-
- Success = OpenEnumKey(&EnumKey);
- if (!Success)
- goto fail1;
-
- Error = RegOpenKeyEx(EnumKey,
- BusKeyName,
- 0,
- KEY_READ,
- BusKey);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail2;
- }
-
- RegCloseKey(EnumKey);
-
- return TRUE;
-
-fail2:
- Log("fail2");
-
- RegCloseKey(EnumKey);
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-GetDeviceKeyName(
- IN PTCHAR BusKeyName,
- IN PTCHAR DeviceKeyPrefix,
- OUT PTCHAR *DeviceKeyName
- )
-{
- BOOLEAN Success;
- HKEY BusKey;
- HRESULT Error;
- DWORD SubKeys;
- DWORD MaxSubKeyLength;
- DWORD SubKeyLength;
- PTCHAR SubKeyName;
- DWORD Index;
-
- Success = OpenBusKey(BusKeyName, &BusKey);
- if (!Success)
- goto fail1;
-
- Error = RegQueryInfoKey(BusKey,
- NULL,
- NULL,
- NULL,
- &SubKeys,
- &MaxSubKeyLength,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail2;
- }
-
- SubKeyLength = MaxSubKeyLength + sizeof (TCHAR);
-
- SubKeyName = malloc(SubKeyLength);
- if (SubKeyName == NULL)
- goto fail3;
-
- for (Index = 0; Index < SubKeys; Index++) {
- SubKeyLength = MaxSubKeyLength + sizeof (TCHAR);
- memset(SubKeyName, 0, SubKeyLength);
-
- Error = RegEnumKeyEx(BusKey,
- Index,
- (LPTSTR)SubKeyName,
- &SubKeyLength,
- NULL,
- NULL,
- NULL,
- NULL);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail4;
- }
-
- if (strncmp(SubKeyName, DeviceKeyPrefix, strlen(DeviceKeyPrefix)) == 0)
- goto found;
- }
-
- free(SubKeyName);
- SubKeyName = NULL;
-
-found:
- RegCloseKey(BusKey);
-
- Log("%s", (SubKeyName != NULL) ? SubKeyName : "none found");
-
- *DeviceKeyName = SubKeyName;
- return TRUE;
-
-fail4:
- Log("fail4");
-
- free(SubKeyName);
-
-fail3:
- Log("fail3");
-
-fail2:
- Log("fail2");
-
- RegCloseKey(BusKey);
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-#define XEN_PLATFORM_PCI_DEVICE_STR "VEN_5853&DEV_0001"
-#define XENSERVER_PLATFORM_PCI_DEVICE_STR "VEN_5853&DEV_0002"
-
-static BOOLEAN
-OpenDeviceKey(
- IN PTCHAR BusKeyName,
- IN PTCHAR DeviceKeyName,
- OUT PHKEY DeviceKey
- )
-{
- BOOLEAN Success;
- HKEY BusKey;
- HRESULT Error;
-
- Success = OpenBusKey(BusKeyName, &BusKey);
- if (!Success)
- goto fail1;
-
- Error = RegOpenKeyEx(BusKey,
- DeviceKeyName,
- 0,
- KEY_READ,
- DeviceKey);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail2;
- }
-
- RegCloseKey(BusKey);
-
- return TRUE;
-
-fail2:
- Log("fail2");
-
- RegCloseKey(BusKey);
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-GetDriverKeyName(
- IN HKEY DeviceKey,
- OUT PTCHAR *Name,
- OUT DWORD *ConfigFlags
- )
-{
- HRESULT Error;
- DWORD SubKeys;
- DWORD MaxSubKeyLength;
- DWORD SubKeyLength;
- PTCHAR SubKeyName;
- DWORD Index;
- HKEY SubKey;
- PTCHAR DriverKeyName;
- DWORD Flags;
-
- Error = RegQueryInfoKey(DeviceKey,
- NULL,
- NULL,
- NULL,
- &SubKeys,
- &MaxSubKeyLength,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail1;
- }
-
- SubKeyLength = MaxSubKeyLength + sizeof (TCHAR);
-
- SubKeyName = malloc(SubKeyLength);
- if (SubKeyName == NULL)
- goto fail2;
-
- SubKey = NULL;
- DriverKeyName = NULL;
- Flags = 0;
-
- for (Index = 0; Index < SubKeys; Index++) {
- DWORD MaxValueLength;
- DWORD ConfigFlagsLength;
- DWORD DriverKeyNameLength;
- DWORD Type;
-
- SubKeyLength = MaxSubKeyLength + sizeof (TCHAR);
- memset(SubKeyName, 0, SubKeyLength);
-
- Error = RegEnumKeyEx(DeviceKey,
- Index,
- (LPTSTR)SubKeyName,
- &SubKeyLength,
- NULL,
- NULL,
- NULL,
- NULL);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail3;
- }
-
- Error = RegOpenKeyEx(DeviceKey,
- SubKeyName,
- 0,
- KEY_READ,
- &SubKey);
- if (Error != ERROR_SUCCESS) {
- SubKey = NULL;
- continue;
- }
-
- Error = RegQueryInfoKey(SubKey,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- &MaxValueLength,
- NULL,
- NULL);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail4;
- }
-
- ConfigFlagsLength = (DWORD)sizeof(DWORD);
-
- Error = RegQueryValueEx(SubKey,
- "ConfigFlags",
- NULL,
- &Type,
- (LPBYTE)&Flags,
- &ConfigFlagsLength);
- if (Error != ERROR_SUCCESS ||
- Type != REG_DWORD)
- Flags = 0;
-
- DriverKeyNameLength = MaxValueLength + sizeof (TCHAR);
-
- DriverKeyName = calloc(1, DriverKeyNameLength);
- if (DriverKeyName == NULL)
- goto fail5;
-
- Error = RegQueryValueEx(SubKey,
- "Driver",
- NULL,
- &Type,
- (LPBYTE)DriverKeyName,
- &DriverKeyNameLength);
- if (Error == ERROR_SUCCESS &&
- Type == REG_SZ)
- break;
-
- free(DriverKeyName);
- DriverKeyName = NULL;
- Flags = 0;
-
- RegCloseKey(SubKey);
- SubKey = NULL;
- }
-
- Log("%s", (DriverKeyName != NULL) ? DriverKeyName : "none found");
-
- if (SubKey != NULL)
- RegCloseKey(SubKey);
-
- free(SubKeyName);
-
- *Name = DriverKeyName;
- if (ConfigFlags)
- *ConfigFlags = Flags;
- return TRUE;
-
-fail5:
- Log("fail5");
-
-fail4:
- Log("fail4");
-
- if (SubKey != NULL)
- RegCloseKey(SubKey);
-
-fail3:
- Log("fail3");
-
- free(SubKeyName);
-
-fail2:
- Log("fail2");
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-OpenClassKey(
- OUT PHKEY ClassKey
- )
-{
- HRESULT Error;
-
- Error = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
- CLASS_KEY,
- 0,
- KEY_READ,
- ClassKey);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail1;
- }
-
- return TRUE;
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-OpenDriverKey(
- IN PTCHAR DriverKeyName,
- OUT PHKEY DriverKey
- )
-{
- BOOLEAN Success;
- HKEY ClassKey;
- HRESULT Error;
-
- Success = OpenClassKey(&ClassKey);
- if (!Success)
- goto fail1;
-
- Error = RegOpenKeyEx(ClassKey,
- DriverKeyName,
- 0,
- KEY_READ,
- DriverKey);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail2;
- }
-
- RegCloseKey(ClassKey);
-
- return TRUE;
-
-fail2:
- Log("fail2");
-
- RegCloseKey(ClassKey);
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-MatchExistingDriver(
- VOID
- )
-{
- BOOLEAN Success;
- PTCHAR DeviceKeyName = NULL;
- HKEY DeviceKey = NULL;
- PTCHAR DriverKeyName = NULL;
- HKEY DriverKey = NULL;
- HRESULT Error;
- DWORD MaxValueLength;
- DWORD DriverDescLength;
- PTCHAR DriverDesc = NULL;
- DWORD ProductNameLength;
- DWORD Type;
-
- Log("====>");
-
- // Look for a legacy platform device
- Success = GetDeviceKeyName("PCI",
- XEN_PLATFORM_PCI_DEVICE_STR,
- &DeviceKeyName);
- if (!Success)
- goto fail1;
-
- if (DeviceKeyName != NULL)
- goto found;
-
- Success = GetDeviceKeyName("PCI",
- XENSERVER_PLATFORM_PCI_DEVICE_STR,
- &DeviceKeyName);
- if (!Success)
- goto fail2;
-
- if (DeviceKeyName != NULL)
- goto found;
-
- // No legacy platform device
- goto done;
-
-found:
- Success = OpenDeviceKey("PCI", DeviceKeyName, &DeviceKey);
- if (!Success)
- goto fail3;
-
- // Check for a bound driver
- Success = GetDriverKeyName(DeviceKey, &DriverKeyName, NULL);
- if (!Success)
- goto fail4;
-
- if (DriverKeyName == NULL)
- goto done;
-
- Success = OpenDriverKey(DriverKeyName, &DriverKey);
- if (!Success)
- goto done;
-
- Error = RegQueryInfoKey(DriverKey,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- &MaxValueLength,
- NULL,
- NULL);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail5;
- }
-
- DriverDescLength = MaxValueLength + sizeof (TCHAR);
-
- DriverDesc = calloc(1, DriverDescLength);
- if (DriverDesc == NULL)
- goto fail6;
-
- Error = RegQueryValueEx(DriverKey,
- "DriverDesc",
- NULL,
- &Type,
- (LPBYTE)DriverDesc,
- &DriverDescLength);
- if (Error != ERROR_SUCCESS) {
- if (Error == ERROR_FILE_NOT_FOUND)
- goto done;
-
- SetLastError(Error);
- goto fail7;
- }
-
- if (Type != REG_SZ) {
- SetLastError(ERROR_BAD_FORMAT);
- goto fail8;
- }
-
- ProductNameLength = (DWORD)strlen(PRODUCT_NAME_STR);
-
- if (strncmp(DriverDesc,
- PRODUCT_NAME_STR,
- ProductNameLength) != 0) {
- SetLastError(ERROR_INSTALL_FAILURE);
- goto fail9;
- }
-
- if (strcmp(DriverDesc + ProductNameLength,
- " PV Bus") != 0) {
- SetLastError(ERROR_INSTALL_FAILURE);
- goto fail10;
- }
-
-done:
- if (DriverDesc != NULL) {
- free(DriverDesc);
- RegCloseKey(DriverKey);
- }
-
- if (DriverKeyName != NULL) {
- free(DriverKeyName);
- RegCloseKey(DeviceKey);
- }
-
- if (DeviceKeyName != NULL)
- free(DeviceKeyName);
-
- Log("<====");
-
- return TRUE;
-
-fail10:
- Log("fail10");
-
-fail9:
- Log("fail9");
-
-fail8:
- Log("fail8");
-
-fail7:
- Log("fail7");
-
- free(DriverDesc);
-
-fail6:
- Log("fail6");
-
-fail5:
- Log("fail5");
-
- RegCloseKey(DriverKey);
-
- free(DriverKeyName);
-
-fail4:
- Log("fail4");
-
- RegCloseKey(DeviceKey);
-
-fail3:
- Log("fail3");
-
- free(DeviceKeyName);
-
-fail2:
- Log("fail2");
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-#define DEFINE_REVISION(_N, _S, _SI, _E, _D, _ST, _R, _C, _G, _U, _CO, _EM) \
- (_N)
-
-static DWORD DeviceRevision[] = {
- DEFINE_REVISION_TABLE
-};
-
-#undef DEFINE_REVISION
-
-static BOOLEAN
-SupportDeviceID(
- IN PTCHAR DeviceID,
- OUT PBOOLEAN NewBinding
- )
-{
- unsigned int Revision;
- int Count;
- DWORD Index;
- HRESULT Error;
-
- DeviceID = strrchr(DeviceID, '&');
- assert(DeviceID != NULL);
- DeviceID++;
-
- Count = sscanf_s(DeviceID,
- "REV_%8x",
- &Revision);
- if (Count != 1) {
- SetLastError(ERROR_BAD_FORMAT);
- goto fail1;
- }
-
- for (Index = 0; Index < ARRAYSIZE(DeviceRevision); Index++) {
- if (Revision == DeviceRevision[Index])
- goto found;
- }
-
- SetLastError(ERROR_FILE_NOT_FOUND);
- goto fail2;
-
-found:
- // If we don't match the latest revision then it means the driver
- // binding will change.
- if (Index < ARRAYSIZE(DeviceRevision) - 1)
- *NewBinding = TRUE;
-
- Log("%x", Revision);
-
- return TRUE;
-
-fail2:
- Log("fail2");
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-GetMatchingDeviceID(
- IN HKEY DriverKey,
- OUT PTCHAR *MatchingDeviceID
- )
-{
- HRESULT Error;
- DWORD MaxValueLength;
- DWORD MatchingDeviceIDLength;
- DWORD Type;
- DWORD Index;
-
- Error = RegQueryInfoKey(DriverKey,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- &MaxValueLength,
- NULL,
- NULL);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail1;
- }
-
- MatchingDeviceIDLength = MaxValueLength + sizeof (TCHAR);
-
- *MatchingDeviceID = calloc(1, MatchingDeviceIDLength);
- if (*MatchingDeviceID == NULL)
- goto fail2;
-
- Error = RegQueryValueEx(DriverKey,
- "MatchingDeviceId",
- NULL,
- &Type,
- (LPBYTE)*MatchingDeviceID,
- &MatchingDeviceIDLength);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail3;
- }
-
- if (Type != REG_SZ) {
- SetLastError(ERROR_BAD_FORMAT);
- goto fail4;
- }
-
- for (Index = 0; Index < strlen(*MatchingDeviceID); Index++)
- (*MatchingDeviceID)[Index] = (CHAR)toupper((*MatchingDeviceID)[Index]);
-
- Log("%s", *MatchingDeviceID);
-
- return TRUE;
-
-fail4:
- Log("fail4");
-
-fail3:
- Log("fail3");
-
- free(*MatchingDeviceID);
-
-fail2:
- Log("fail2");
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-GetDeviceInstanceID(
- IN HDEVINFO DeviceInfoSet,
- IN PSP_DEVINFO_DATA DeviceInfoData,
- OUT PTCHAR *DeviceID,
- OUT PTCHAR *InstanceID
- )
-{
- DWORD DeviceInstanceIDLength;
- PTCHAR DeviceInstanceID;
- DWORD Index;
- PTCHAR Prefix;
- DWORD InstanceIDLength;
- HRESULT Result;
- HRESULT Error;
-
- if (!SetupDiGetDeviceInstanceId(DeviceInfoSet,
- DeviceInfoData,
- NULL,
- 0,
- &DeviceInstanceIDLength)) {
- if (GetLastError() != ERROR_INSUFFICIENT_BUFFER)
- goto fail1;
- }
-
- DeviceInstanceIDLength += sizeof (TCHAR);
-
- DeviceInstanceID = calloc(1, DeviceInstanceIDLength);
- if (DeviceInstanceID == NULL)
- goto fail2;
-
- if (!SetupDiGetDeviceInstanceId(DeviceInfoSet,
- DeviceInfoData,
- DeviceInstanceID,
- DeviceInstanceIDLength,
- NULL))
- goto fail3;
-
- for (Index = 0; Index < strlen(DeviceInstanceID); Index++)
- DeviceInstanceID[Index] = (CHAR)toupper(DeviceInstanceID[Index]);
-
- *DeviceID = DeviceInstanceID;
-
- Prefix = strrchr(DeviceInstanceID, '\\');
- assert(Prefix != NULL);
- *Prefix++ = '\0';
-
- DeviceInstanceID = strrchr(Prefix, '&');
- if (DeviceInstanceID != NULL) {
- *DeviceInstanceID++ = '\0';
- } else {
- DeviceInstanceID = Prefix;
- Prefix = NULL;
- }
-
- if (Prefix != NULL)
- Log("Parent Prefix = %s", Prefix);
-
- InstanceIDLength = (ULONG)((strlen(DeviceInstanceID) +
- 1) * sizeof (TCHAR));
-
- *InstanceID = calloc(1, InstanceIDLength);
- if (*InstanceID == NULL)
- goto fail4;
-
- Result = StringCbPrintf(*InstanceID,
- InstanceIDLength,
- "%s",
- DeviceInstanceID);
- assert(SUCCEEDED(Result));
-
- Log("DeviceID = %s", *DeviceID);
- Log("InstanceID = %s", *InstanceID);
-
- return TRUE;
-
-fail4:
- Log("fail4");
-
- DeviceInstanceID = *DeviceID;
- *DeviceID = NULL;
-
-fail3:
- Log("fail3");
-
- free(DeviceInstanceID);
-
-fail2:
- Log("fail2");
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-GetActiveDeviceInstanceID(
- OUT PTCHAR *DeviceID,
- OUT PTCHAR *InstanceID
- )
-{
- HKEY ParametersKey;
- DWORD MaxValueLength;
- DWORD DeviceIDLength;
- DWORD InstanceIDLength;
- DWORD Type;
- HRESULT Error;
-
- Error = RegCreateKeyEx(HKEY_LOCAL_MACHINE,
- PARAMETERS_KEY(XENFILT),
- 0,
- NULL,
- REG_OPTION_NON_VOLATILE,
- KEY_ALL_ACCESS,
- NULL,
- &ParametersKey,
- NULL);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail1;
- }
-
- Error = RegQueryInfoKey(ParametersKey,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- &MaxValueLength,
- NULL,
- NULL);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail2;
- }
-
- DeviceIDLength = MaxValueLength + sizeof (TCHAR);
-
- *DeviceID = calloc(1, DeviceIDLength);
- if (*DeviceID == NULL)
- goto fail3;
-
- Error = RegQueryValueEx(ParametersKey,
- "ActiveDeviceID",
- NULL,
- &Type,
- (LPBYTE)*DeviceID,
- &DeviceIDLength);
- if (Error != ERROR_SUCCESS || Type != REG_SZ) {
- free(*DeviceID);
- *DeviceID = NULL;
- }
-
- InstanceIDLength = MaxValueLength + sizeof (TCHAR);
-
- *InstanceID = calloc(1, InstanceIDLength);
- if (*InstanceID == NULL)
- goto fail4;
-
- Error = RegQueryValueEx(ParametersKey,
- "ActiveInstanceID",
- NULL,
- &Type,
- (LPBYTE)*InstanceID,
- &InstanceIDLength);
- if (Error != ERROR_SUCCESS || Type != REG_SZ) {
- free(*InstanceID);
- *InstanceID = NULL;
- }
-
- Log("DeviceID = %s", (*DeviceID != NULL) ? *DeviceID : "NOT SET");
- Log("InstanceID = %s", (*InstanceID != NULL) ? *InstanceID : "NOT SET");
-
- RegCloseKey(ParametersKey);
-
- return TRUE;
-
-fail4:
- Log("fail4");
-
- if (*DeviceID != NULL) {
- free(*DeviceID);
- *DeviceID = NULL;
- }
-
-fail3:
- Log("fail3");
-
-fail2:
- Log("fail2");
-
- RegCloseKey(ParametersKey);
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-IsActiveDevice(
- IN HDEVINFO DeviceInfoSet,
- IN PSP_DEVINFO_DATA DeviceInfoData,
- OUT PBOOLEAN ActiveDevice,
- OUT PBOOLEAN VendorIsActive
- )
-{
- PTCHAR ActiveDeviceID;
- PTCHAR ActiveInstanceID;
- PTCHAR DeviceID;
- PTCHAR InstanceID;
- HRESULT Error;
- BOOLEAN Success;
-
- Log("====>");
-
- Success = GetActiveDeviceInstanceID(&ActiveDeviceID, &ActiveInstanceID);
- if (!Success)
- goto fail1;
-
- if (ActiveDeviceID == NULL)
- goto done;
-
- assert(ActiveInstanceID != NULL);
-
- Success = GetDeviceInstanceID(DeviceInfoSet, DeviceInfoData,
- &DeviceID, &InstanceID);
- if (!Success)
- goto fail2;
-
- *ActiveDevice = (_stricmp(ActiveDeviceID, DeviceID) == 0 &&
- _stricmp(ActiveInstanceID, InstanceID) == 0) ?
- TRUE :
- FALSE;
-
-#ifdef VENDOR_DEVICE_ID_STR
-
-#define DRIVER_VENDOR_DEVICE_ID "PCI\\VEN_5853&DEV_" ## VENDOR_DEVICE_ID_STR ## \
"&SUBSYS_C0005853&REV_01"
-
- *VendorIsActive = (_stricmp(ActiveDeviceID, DRIVER_VENDOR_DEVICE_ID) == 0) ?
- TRUE :
- FALSE;
-
-#undef DRIVER_VENDOR_DEVICE_ID
-
-#else
- *VendorIsActive = FALSE;
-#endif
-
- free(DeviceID);
- free(InstanceID);
-
- free(ActiveDeviceID);
- free(ActiveInstanceID);
-
-done:
- Log("<====");
-
- return TRUE;
-
-fail2:
- Log("fail2");
-
- free(ActiveDeviceID);
- free(ActiveInstanceID);
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-SupportChildDrivers(
- OUT PBOOLEAN NewBinding
- )
-{
- BOOLEAN Success;
- HKEY XenbusKey;
- HRESULT Error;
- DWORD SubKeys;
- DWORD MaxSubKeyLength;
- DWORD SubKeyLength;
- PTCHAR SubKeyName;
- HKEY DeviceKey;
- PTCHAR DriverKeyName;
- DWORD ConfigFlags;
- HKEY DriverKey;
- PTCHAR MatchingDeviceID;
- DWORD Index;
-
- Log("====>");
-
- Success = OpenBusKey("XENBUS", &XenbusKey);
- if (!Success) {
- // If there is no key then this must be a fresh installation
- if (GetLastError() == ERROR_FILE_NOT_FOUND)
- goto done;
-
- goto fail1;
- }
-
- Error = RegQueryInfoKey(XenbusKey,
- NULL,
- NULL,
- NULL,
- &SubKeys,
- &MaxSubKeyLength,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL,
- NULL);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail2;
- }
-
- SubKeyLength = MaxSubKeyLength + sizeof (TCHAR);
-
- SubKeyName = malloc(SubKeyLength);
- if (SubKeyName == NULL)
- goto fail3;
-
- for (Index = 0; Index < SubKeys; Index++) {
- SubKeyLength = MaxSubKeyLength + sizeof (TCHAR);
- memset(SubKeyName, 0, SubKeyLength);
-
- Error = RegEnumKeyEx(XenbusKey,
- Index,
- (LPTSTR)SubKeyName,
- &SubKeyLength,
- NULL,
- NULL,
- NULL,
- NULL);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail4;
- }
-
- Success = OpenDeviceKey("XENBUS", SubKeyName, &DeviceKey);
- if (!Success)
- goto fail5;
-
- Success = GetDriverKeyName(DeviceKey, &DriverKeyName, &ConfigFlags);
- if (!Success)
- goto fail6;
-
- if (DriverKeyName == NULL)
- goto loop1;
-
- if (ConfigFlags & 0x20)
- goto loop2;
-
- Success = OpenDriverKey(DriverKeyName, &DriverKey);
- if (!Success)
- goto loop3;
-
- Success = GetMatchingDeviceID(DriverKey, &MatchingDeviceID);
- if (!Success)
- goto loop4;
-
- Success = SupportDeviceID(MatchingDeviceID, NewBinding);
- if (!Success)
- goto fail7;
-
- free(MatchingDeviceID);
-
- loop4:
- RegCloseKey(DriverKey);
-
- loop3:
-
- loop2:
- free(DriverKeyName);
-
- loop1:
- RegCloseKey(DeviceKey);
- }
-
- free(SubKeyName);
-
- RegCloseKey(XenbusKey);
-
-done:
- Log("<====");
-
- return TRUE;
-
-fail7:
- Log("fail7");
-
- free(MatchingDeviceID);
-
- RegCloseKey(DriverKey);
-
- free(DriverKeyName);
-
-fail6:
- Log("fail6");
-
- RegCloseKey(DeviceKey);
-
-fail5:
- Log("fail5");
-
-fail4:
- Log("fail4");
-
- free(SubKeyName);
-
-fail3:
- Log("fail3");
-
-fail2:
- Log("fail2");
-
- RegCloseKey(XenbusKey);
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOLEAN
-ClearUnplugRequest(
- IN PTCHAR ClassName
- )
-{
- HKEY UnplugKey;
- HRESULT Error;
-
- Log("====> (%s)", ClassName);
-
- Error = RegOpenKeyEx(HKEY_LOCAL_MACHINE,
- UNPLUG_KEY,
- 0,
- KEY_ALL_ACCESS,
- &UnplugKey);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail1;
- }
-
- Error = RegDeleteValue(UnplugKey, ClassName);
- if (Error != ERROR_SUCCESS) {
- SetLastError(Error);
- goto fail2;
- }
-
- RegCloseKey(UnplugKey);
-
- Log("<====");
-
- return TRUE;
-
-fail2:
- Log("fail2");
-
- RegCloseKey(UnplugKey);
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static BOOL
-MonitorDelete(
- VOID
- )
-{
- SC_HANDLE SCManager;
- SC_HANDLE Service;
- BOOL Success;
- SERVICE_STATUS Status;
- HRESULT Error;
-
- Log("====>");
-
- SCManager = OpenSCManager(NULL,
- NULL,
- SC_MANAGER_ALL_ACCESS);
-
- if (SCManager == NULL)
- goto fail1;
-
- Service = OpenService(SCManager,
- MONITOR_NAME,
- SERVICE_ALL_ACCESS);
-
- if (Service == NULL)
- goto fail2;
-
- Success = ControlService(Service,
- SERVICE_CONTROL_STOP,
- &Status);
-
- if (!Success &&
- GetLastError() != ERROR_SERVICE_NOT_ACTIVE)
- goto fail3;
-
- Success = DeleteService(Service);
-
- if (!Success)
- goto fail4;
-
- CloseServiceHandle(Service);
- CloseServiceHandle(SCManager);
-
- Log("<====");
-
- return TRUE;
-
-fail4:
- Log("fail4");
-
-fail3:
- Log("fail3");
-
- CloseServiceHandle(Service);
-
-fail2:
- Log("fail2");
-
- CloseServiceHandle(SCManager);
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return FALSE;
-}
-
-static HRESULT
-DifInstallPreProcess(
- IN HDEVINFO DeviceInfoSet,
- IN PSP_DEVINFO_DATA DeviceInfoData,
- IN PCOINSTALLER_CONTEXT_DATA Context
- )
-{
- BOOLEAN Success;
- HRESULT Error;
- BOOLEAN Allow;
- BOOLEAN NewBinding;
-
- UNREFERENCED_PARAMETER(DeviceInfoSet);
- UNREFERENCED_PARAMETER(DeviceInfoData);
-
- Log("====>");
-
- Success = AllowInstall(&Allow);
- if (!Success)
- goto fail1;
-
- if (!Allow) {
- SetLastError(ERROR_ACCESS_DENIED);
- goto fail2;
- }
-
- Success = MatchExistingDriver();
- if (!Success)
- goto fail3;
-
- NewBinding = FALSE;
-
- Success = SupportChildDrivers(&NewBinding);
- if (!Success)
- goto fail4;
-
- Context->PrivateData = (PVOID)(ULONG_PTR)NewBinding;
-
- Log("<====");
-
- return NO_ERROR;
-
-fail4:
- Log("fail4");
-
-fail3:
- Log("fail3");
-
-fail2:
- Log("fail2");
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return Error;
-}
-
-static HRESULT
-DifInstallPostProcess(
- IN HDEVINFO DeviceInfoSet,
- IN PSP_DEVINFO_DATA DeviceInfoData,
- IN PCOINSTALLER_CONTEXT_DATA Context
- )
-{
- BOOLEAN NewBinding;
- BOOLEAN Active;
- BOOLEAN VendorIsActive;
-
- Log("====>");
-
- NewBinding = (BOOLEAN)(ULONG_PTR)Context->PrivateData;
-
- Active = TRUE;
-
- (VOID) IsActiveDevice(DeviceInfoSet,
- DeviceInfoData,
- &Active,
- &VendorIsActive);
-
- Log("Active = %s", Active ? "TRUE" : "FALSE");
- Log("NewBinding = %s", NewBinding ? "TRUE" : "FALSE");
-
- if ((Active && NewBinding) || !VendorIsActive) {
- (VOID) ClearUnplugRequest("DISKS");
- (VOID) ClearUnplugRequest("NICS");
- }
-
- Log("<====");
-
- return NO_ERROR;
-}
-
-static HRESULT
-DifInstall(
- IN HDEVINFO DeviceInfoSet,
- IN PSP_DEVINFO_DATA DeviceInfoData,
- IN PCOINSTALLER_CONTEXT_DATA Context
- )
-{
- SP_DEVINSTALL_PARAMS DeviceInstallParams;
- HRESULT Error;
-
- DeviceInstallParams.cbSize = sizeof (DeviceInstallParams);
-
- if (!SetupDiGetDeviceInstallParams(DeviceInfoSet,
- DeviceInfoData,
- &DeviceInstallParams))
- goto fail1;
-
- Log("Flags = %08x", DeviceInstallParams.Flags);
-
- if (!Context->PostProcessing) {
- Error = DifInstallPreProcess(DeviceInfoSet, DeviceInfoData, Context);
-
- if (Error == NO_ERROR)
- Error = ERROR_DI_POSTPROCESSING_REQUIRED;
- } else {
- Error = Context->InstallResult;
-
- if (Error == NO_ERROR) {
- (VOID) DifInstallPostProcess(DeviceInfoSet, DeviceInfoData, Context);
- } else {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("NOT RUNNING (DifInstallPreProcess Error: %s)", Message);
- LocalFree(Message);
- }
-
- Error = NO_ERROR;
- }
-
- return Error;
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return Error;
-}
-
-static HRESULT
-DifRemovePreProcess(
- IN HDEVINFO DeviceInfoSet,
- IN PSP_DEVINFO_DATA DeviceInfoData,
- IN PCOINSTALLER_CONTEXT_DATA Context
- )
-{
- UNREFERENCED_PARAMETER(DeviceInfoSet);
- UNREFERENCED_PARAMETER(DeviceInfoData);
- UNREFERENCED_PARAMETER(Context);
-
- Log("====>");
-
- (VOID) MonitorDelete();
-
- Log("<====");
-
- return NO_ERROR;
-}
-
-static HRESULT
-DifRemovePostProcess(
- IN HDEVINFO DeviceInfoSet,
- IN PSP_DEVINFO_DATA DeviceInfoData,
- IN PCOINSTALLER_CONTEXT_DATA Context
- )
-{
- UNREFERENCED_PARAMETER(DeviceInfoSet);
- UNREFERENCED_PARAMETER(DeviceInfoData);
- UNREFERENCED_PARAMETER(Context);
-
- Log("<===>");
-
- return NO_ERROR;
-}
-
-static HRESULT
-DifRemove(
- IN HDEVINFO DeviceInfoSet,
- IN PSP_DEVINFO_DATA DeviceInfoData,
- IN PCOINSTALLER_CONTEXT_DATA Context
- )
-{
- SP_DEVINSTALL_PARAMS DeviceInstallParams;
- HRESULT Error;
-
- DeviceInstallParams.cbSize = sizeof (DeviceInstallParams);
-
- if (!SetupDiGetDeviceInstallParams(DeviceInfoSet,
- DeviceInfoData,
- &DeviceInstallParams))
- goto fail1;
-
- Log("Flags = %08x", DeviceInstallParams.Flags);
-
- if (!Context->PostProcessing) {
- Error = DifRemovePreProcess(DeviceInfoSet, DeviceInfoData, Context);
-
- if (Error == NO_ERROR)
- Error = ERROR_DI_POSTPROCESSING_REQUIRED;
- } else {
- Error = Context->InstallResult;
-
- if (Error == NO_ERROR) {
- (VOID) DifRemovePostProcess(DeviceInfoSet, DeviceInfoData, Context);
- } else {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("NOT RUNNING (DifRemovePreProcess Error: %s)", Message);
- LocalFree(Message);
- }
-
- Error = NO_ERROR;
- }
-
- return Error;
-
-fail1:
- Error = GetLastError();
-
- {
- PTCHAR Message;
-
- Message = GetErrorMessage(Error);
- Log("fail1 (%s)", Message);
- LocalFree(Message);
- }
-
- return Error;
-}
-
-DWORD CALLBACK
-Entry(
- IN DI_FUNCTION Function,
- IN HDEVINFO DeviceInfoSet,
- IN PSP_DEVINFO_DATA DeviceInfoData,
- IN PCOINSTALLER_CONTEXT_DATA Context
- )
-{
- HRESULT Error;
- SP_DRVINFO_DATA DriverInfoData;
- BOOLEAN DriverInfoAvailable;
- BOOLEAN IsNullDriver;
-
- Log("%s (%s) ===>",
- MAJOR_VERSION_STR "." MINOR_VERSION_STR "." MICRO_VERSION_STR "." \
BUILD_NUMBER_STR,
- DAY_STR "/" MONTH_STR "/" YEAR_STR);
-
- if (!Context->PostProcessing) {
- Log("%s PreProcessing",
- __FunctionName(Function));
- } else {
- Log("%s PostProcessing (%08x)",
- __FunctionName(Function),
- Context->InstallResult);
- }
-
- DriverInfoData.cbSize = sizeof(DriverInfoData);
- DriverInfoAvailable = SetupDiGetSelectedDriver(DeviceInfoSet,
- DeviceInfoData,
- &DriverInfoData) ?
- TRUE :
- FALSE;
- IsNullDriver = !(DriverInfoAvailable &&
- (DriverInfoData.DriverType == SPDIT_CLASSDRIVER ||
- DriverInfoData.DriverType == SPDIT_COMPATDRIVER));
-
- switch (Function) {
- case DIF_SELECTBESTCOMPATDRV: {
- //
- // If the NULL driver will be installed, treat this as we would a
- // DIF_REMOVE to work around the fact that Windows 10 2004 doesn't
- // call DIF_INSTALLDEVICE on uninstall.
- // An InstallResult value of ERROR_NO_COMPAT_DRIVERS simply means
- // that the NULL driver was selected, and so should not be treated
- // as an error.
- //
- if (Context->PostProcessing &&
- Context->InstallResult == ERROR_NO_COMPAT_DRIVERS)
- Context->InstallResult = NO_ERROR;
-
- Error = (IsNullDriver) ?
- DifRemove(DeviceInfoSet, DeviceInfoData, Context) :
- NO_ERROR;
- break;
- }
- case DIF_INSTALLDEVICE: {
- Error = (IsNullDriver) ?
- NO_ERROR :
- DifInstall(DeviceInfoSet, DeviceInfoData, Context);
- break;
- }
- case DIF_REMOVE:
- Error = DifRemove(DeviceInfoSet, DeviceInfoData, Context);
- break;
- default:
- if (!Context->PostProcessing) {
- Error = NO_ERROR;
- } else {
- Error = Context->InstallResult;
- }
-
- break;
- }
-
- Log("%s (%s) <===",
- MAJOR_VERSION_STR "." MINOR_VERSION_STR "." MICRO_VERSION_STR "." \
BUILD_NUMBER_STR,
- DAY_STR "/" MONTH_STR "/" YEAR_STR);
-
- return (DWORD)Error;
-}
-
-DWORD CALLBACK
-Version(
- IN HWND Window,
- IN HINSTANCE Module,
- IN PTCHAR Buffer,
- IN INT Reserved
- )
-{
- UNREFERENCED_PARAMETER(Window);
- UNREFERENCED_PARAMETER(Module);
- UNREFERENCED_PARAMETER(Buffer);
- UNREFERENCED_PARAMETER(Reserved);
-
- Log("%s (%s)",
- MAJOR_VERSION_STR "." MINOR_VERSION_STR "." MICRO_VERSION_STR "." \
BUILD_NUMBER_STR,
- DAY_STR "/" MONTH_STR "/" YEAR_STR);
-
- return NO_ERROR;
-}
-
-static FORCEINLINE const CHAR *
-__ReasonName(
- IN DWORD Reason
- )
-{
-#define _NAME(_Reason) \
- case DLL_ ## _Reason: \
- return #_Reason;
-
- switch (Reason) {
- _NAME(PROCESS_ATTACH);
- _NAME(PROCESS_DETACH);
- _NAME(THREAD_ATTACH);
- _NAME(THREAD_DETACH);
- default:
- break;
- }
-
- return "UNKNOWN";
-
-#undef _NAME
-}
-
-BOOL WINAPI
-DllMain(
- IN HINSTANCE Module,
- IN DWORD Reason,
- IN PVOID Reserved
- )
-{
- UNREFERENCED_PARAMETER(Module);
- UNREFERENCED_PARAMETER(Reserved);
-
- Log("%s (%s): %s",
- MAJOR_VERSION_STR "." MINOR_VERSION_STR "." MICRO_VERSION_STR "." \
BUILD_NUMBER_STR,
- DAY_STR "/" MONTH_STR "/" YEAR_STR,
- __ReasonName(Reason));
-
- return TRUE;
-}
diff --git a/src/coinst/xenbus_coinst.def b/src/coinst/xenbus_coinst.def
deleted file mode 100644
index 71d8f65..0000000
--- a/src/coinst/xenbus_coinst.def
+++ /dev/null
@@ -1,38 +0,0 @@
-; Copyright (c) Xen Project.
-; Copyright (c) Cloud Software Group, Inc.
-; All rights reserved.
-;
-; Redistribution and use in source and binary forms,
-; with or without modification, are permitted provided
-; that the following conditions are met:
-;
-; * Redistributions of source code must retain the above
-; copyright notice, this list of conditions and the
-; following disclaimer.
-; * Redistributions in binary form must reproduce the above
-; copyright notice, this list of conditions and the
-; following disclaimer in the documentation and/or other
-; materials provided with the distribution.
-;
-; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
-; CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
-; INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-; MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-; DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
-; CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-; SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-; BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-; SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
-; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
-; WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-; OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-; SUCH DAMAGE.
-
-LIBRARY XENBUS_COINST
-
-EXPORTS
- Entry
- Version
-
- DllMain PRIVATE
diff --git a/src/coinst/xenbus_coinst.rc b/src/coinst/xenbus_coinst.rc
deleted file mode 100644
index 4d46edc..0000000
--- a/src/coinst/xenbus_coinst.rc
+++ /dev/null
@@ -1,57 +0,0 @@
-/* Copyright (c) Xen Project.
- * Copyright (c) Cloud Software Group, Inc.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms,
- * with or without modification, are permitted provided
- * that the following conditions are met:
- *
- * * Redistributions of source code must retain the above
- * copyright notice, this list of conditions and the
- * following disclaimer.
- * * Redistributions in binary form must reproduce the above
- * copyright notice, this list of conditions and the
- * following disclaimer in the documentation and/or other
- * materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
- * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
- * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
- * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
- * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include <windows.h>
-#include <ntverp.h>
-
-
-#undef VER_COMPANYNAME_STR
-#undef VER_PRODUCTNAME_STR
-#undef VER_PRODUCTVERSION
-#undef VER_PRODUCTVERSION_STR
-
-#include <version.h>
-
-#define VER_COMPANYNAME_STR VENDOR_NAME_STR
-#define VER_LEGALCOPYRIGHT_STR COPYRIGHT_STR
-
-#define VER_PRODUCTNAME_STR "XENBUS_COINST"
-#define VER_PRODUCTVERSION \
MAJOR_VERSION,MINOR_VERSION,MICRO_VERSION,BUILD_NUMBER
-#define VER_PRODUCTVERSION_STR MAJOR_VERSION_STR "." MINOR_VERSION_STR "." \
MICRO_VERSION_STR "." BUILD_NUMBER_STR
-
-#define VER_INTERNALNAME_STR "XENBUS_COINST.DLL"
-#define VER_FILEDESCRIPTION_STR "XENBUS_COINST"
-
-#define VER_FILETYPE VFT_DRV
-#define VER_FILESUBTYPE VFT2_DRV_SYSTEM
-
-#include <common.ver>
diff --git a/vs2015/package/package.vcxproj b/vs2015/package/package.vcxproj
index 2518c3f..e536109 100644
--- a/vs2015/package/package.vcxproj
+++ b/vs2015/package/package.vcxproj
@@ -42,9 +42,6 @@
<ProjectReference Include="..\xenfilt\xenfilt.vcxproj">
<Project>{d7411b2c-2c43-434d-9f56-e10a3d2f5bad}</Project>
</ProjectReference>
- <ProjectReference Include="..\xenbus_coinst\xenbus_coinst.vcxproj">
- <Project>{4bf41378-c01b-4002-8581-563c5f703362}</Project>
- </ProjectReference>
<ProjectReference Include="..\xenbus\xenbus.vcxproj">
<Project>{14c16c29-77c9-475b-a618-1b01e67cf985}</Project>
</ProjectReference>
diff --git a/vs2015/xenbus.sln b/vs2015/xenbus.sln
index ecb3540..552d43d 100644
--- a/vs2015/xenbus.sln
+++ b/vs2015/xenbus.sln
@@ -4,11 +4,6 @@ VisualStudioVersion = 14.0.25420.1
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "version", \
"version\version.vcxproj", "{65FA97EA-A569-4FC1-BFE7-D68E109143F7}" EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xenbus_coinst", \
"xenbus_coinst\xenbus_coinst.vcxproj", \
"{4BF41378-C01B-4002-8581-563C5F703362}"
- ProjectSection(ProjectDependencies) = postProject
- {65FA97EA-A569-4FC1-BFE7-D68E109143F7} = {65FA97EA-A569-4FC1-BFE7-D68E109143F7}
- EndProjectSection
-EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xenbus_monitor", \
"xenbus_monitor\xenbus_monitor.vcxproj", "{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}" \
ProjectSection(ProjectDependencies) = postProject \
{65FA97EA-A569-4FC1-BFE7-D68E109143F7} = {65FA97EA-A569-4FC1-BFE7-D68E109143F7} @@ \
-35,7 +30,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "package", \
"package\package. ProjectSection(ProjectDependencies) = postProject
{65FA97EA-A569-4FC1-BFE7-D68E109143F7} = {65FA97EA-A569-4FC1-BFE7-D68E109143F7}
{14C16C29-77C9-475B-A618-1B01E67CF985} = {14C16C29-77C9-475B-A618-1B01E67CF985}
- {4BF41378-C01B-4002-8581-563C5F703362} = {4BF41378-C01B-4002-8581-563C5F703362}
{9C6A5D48-A331-4B1F-A004-7BB67BA5BE1C} = {9C6A5D48-A331-4B1F-A004-7BB67BA5BE1C}
{D7411B2C-2C43-434D-9F56-E10A3D2F5BAD} = {D7411B2C-2C43-434D-9F56-E10A3D2F5BAD}
{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B} = {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}
@@ -69,22 +63,6 @@ Global
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10 Release|Win32.Build.0 = Windows \
10 Release|Win32 {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10 \
Release|x64.ActiveCfg = Windows 10 Release|x64 \
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 10 Release|x64.Build.0 = Windows 10 \
Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|Win32.ActiveCfg = Windows 8 \
Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|Win32.Build.0 = Windows 8 \
Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|x64.ActiveCfg = Windows 8 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|x64.Build.0 = Windows 8 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|Win32.ActiveCfg = Windows \
8 Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|Win32.Build.0 = Windows 8 \
Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|x64.ActiveCfg = Windows 8 \
Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|x64.Build.0 = Windows 8 \
Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|Win32.ActiveCfg = Windows \
10 Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|Win32.Build.0 = Windows 10 \
Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|x64.ActiveCfg = Windows 10 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|x64.Build.0 = Windows 10 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|Win32.ActiveCfg = \
Windows 10 Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|Win32.Build.0 = Windows \
10 Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|x64.ActiveCfg = Windows \
10 Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|x64.Build.0 = Windows 10 \
Release|x64 {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Debug|Win32.ActiveCfg = \
Windows 8 Debug|Win32 {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 \
Debug|Win32.Build.0 = Windows 8 Debug|Win32 \
{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 8 Debug|x64.ActiveCfg = Windows 8 \
Debug|x64
diff --git a/vs2015/xenbus_coinst/xenbus_coinst.vcxproj \
b/vs2015/xenbus_coinst/xenbus_coinst.vcxproj deleted file mode 100644
index 1d51f96..0000000
--- a/vs2015/xenbus_coinst/xenbus_coinst.vcxproj
+++ /dev/null
@@ -1,64 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="14.0" \
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <Import Project="..\configs.props" />
- <PropertyGroup Label="PropertySheets">
- <DriverType>WDM</DriverType>
- <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset>
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Label="Globals">
- <ProjectGuid>{4BF41378-C01B-4002-8581-563C5F703362}</ProjectGuid>
- </PropertyGroup>
- <Import Project="..\targets.props" />
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <PropertyGroup>
- <RunCodeAnalysis>true</RunCodeAnalysis>
- <EnableInf2cat>false</EnableInf2cat>
- </PropertyGroup>
- <ItemDefinitionGroup>
- <ClCompile>
- <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>PROJECT=$(ProjectName);%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <WarningLevel>EnableAllWarnings</WarningLevel>
- <DisableSpecificWarnings>4127;4711;4548;4820;4668;4255;6001;6054;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings>
- <MultiProcessorCompilation>true</MultiProcessorCompilation>
- <EnablePREfast>true</EnablePREfast>
- <RuntimeLibrary \
Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary>
- <RuntimeLibrary \
Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary>
- </ClCompile>
- <Link>
- <ModuleDefinitionFile>../../src/coinst/xenbus_coinst.def</ModuleDefinitionFile>
- <AdditionalDependencies>setupapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <EnableCOMDATFolding>false</EnableCOMDATFolding>
- </Link>
- <ResourceCompile>
- <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
- <ClCompile>
- <PreprocessorDefinitions>__i386__;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- </ClCompile>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Platform)'=='x64'">
- <ClCompile>
- <PreprocessorDefinitions>__x86_64__;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- </ClCompile>
- </ItemDefinitionGroup>
- <ItemGroup>
- <FilesToPackage Include="$(TargetPath)" />
- <FilesToPackage Include="$(OutDir)$(TargetName).pdb" />
- <FilesToPackage Include="@(Inf->'%(CopyOutput)')" Condition="'@(Inf)'!=''" />
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="..\..\src\coinst\coinst.c" />
- </ItemGroup>
- <ItemGroup>
- <None Include="..\..\src\coinst\xenbus_coinst.def" />
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="..\..\src\coinst\xenbus_coinst.rc" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
-</Project>
diff --git a/vs2015/xenbus_coinst/xenbus_coinst.vcxproj.user \
b/vs2015/xenbus_coinst/xenbus_coinst.vcxproj.user deleted file mode 100644
index db41a92..0000000
--- a/vs2015/xenbus_coinst/xenbus_coinst.vcxproj.user
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="14.0" \
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <PropertyGroup>
- <SignMode>TestSign</SignMode>
- <TestCertificate>..\..\src\xenbus.pfx</TestCertificate>
- <TimeStampServer>http://timestamp.verisign.com/scripts/timstamp.dll</TimeStampServer>
- </PropertyGroup>
-</Project>
diff --git a/vs2017/package/package.vcxproj b/vs2017/package/package.vcxproj
index 2a83c90..5edf0a7 100644
--- a/vs2017/package/package.vcxproj
+++ b/vs2017/package/package.vcxproj
@@ -42,9 +42,6 @@
<ProjectReference Include="..\xenfilt\xenfilt.vcxproj">
<Project>{d7411b2c-2c43-434d-9f56-e10a3d2f5bad}</Project>
</ProjectReference>
- <ProjectReference Include="..\xenbus_coinst\xenbus_coinst.vcxproj">
- <Project>{4bf41378-c01b-4002-8581-563c5f703362}</Project>
- </ProjectReference>
<ProjectReference Include="..\xenbus\xenbus.vcxproj">
<Project>{14c16c29-77c9-475b-a618-1b01e67cf985}</Project>
</ProjectReference>
diff --git a/vs2017/xenbus.sln b/vs2017/xenbus.sln
index fc85d47..19fa290 100644
--- a/vs2017/xenbus.sln
+++ b/vs2017/xenbus.sln
@@ -4,11 +4,6 @@ VisualStudioVersion = 15.0.27703.2042
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "version", \
"version\version.vcxproj", "{65FA97EA-A569-4FC1-BFE7-D68E109143F7}" EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xenbus_coinst", \
"xenbus_coinst\xenbus_coinst.vcxproj", \
"{4BF41378-C01B-4002-8581-563C5F703362}"
- ProjectSection(ProjectDependencies) = postProject
- {65FA97EA-A569-4FC1-BFE7-D68E109143F7} = {65FA97EA-A569-4FC1-BFE7-D68E109143F7}
- EndProjectSection
-EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xenbus_monitor", \
"xenbus_monitor\xenbus_monitor.vcxproj", "{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}" \
ProjectSection(ProjectDependencies) = postProject \
{65FA97EA-A569-4FC1-BFE7-D68E109143F7} = {65FA97EA-A569-4FC1-BFE7-D68E109143F7} @@ \
-35,7 +30,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "package", \
"package\package. ProjectSection(ProjectDependencies) = postProject
{65FA97EA-A569-4FC1-BFE7-D68E109143F7} = {65FA97EA-A569-4FC1-BFE7-D68E109143F7}
{14C16C29-77C9-475B-A618-1B01E67CF985} = {14C16C29-77C9-475B-A618-1B01E67CF985}
- {4BF41378-C01B-4002-8581-563C5F703362} = {4BF41378-C01B-4002-8581-563C5F703362}
{9C6A5D48-A331-4B1F-A004-7BB67BA5BE1C} = {9C6A5D48-A331-4B1F-A004-7BB67BA5BE1C}
{D7411B2C-2C43-434D-9F56-E10A3D2F5BAD} = {D7411B2C-2C43-434D-9F56-E10A3D2F5BAD}
{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B} = {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}
@@ -69,22 +63,6 @@ Global
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8 Release|Win32.Build.0 = Windows 8 \
Release|Win32 {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8 Release|x64.ActiveCfg \
= Windows 8 Release|x64 {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8 \
Release|x64.Build.0 = Windows 8 Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|Win32.ActiveCfg = Windows \
10 Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|Win32.Build.0 = Windows 10 \
Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|x64.ActiveCfg = Windows 10 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|x64.Build.0 = Windows 10 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|Win32.ActiveCfg = \
Windows 10 Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|Win32.Build.0 = Windows \
10 Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|x64.ActiveCfg = Windows \
10 Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|x64.Build.0 = Windows 10 \
Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|Win32.ActiveCfg = Windows 8 \
Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|Win32.Build.0 = Windows 8 \
Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|x64.ActiveCfg = Windows 8 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|x64.Build.0 = Windows 8 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|Win32.ActiveCfg = Windows \
8 Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|Win32.Build.0 = Windows 8 \
Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|x64.ActiveCfg = Windows 8 \
Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|x64.Build.0 = Windows 8 \
Release|x64 {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Debug|Win32.ActiveCfg \
= Windows 10 Debug|Win32 {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 \
Debug|Win32.Build.0 = Windows 10 Debug|Win32 \
{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Debug|x64.ActiveCfg = Windows 10 \
Debug|x64
diff --git a/vs2017/xenbus_coinst/xenbus_coinst.vcxproj \
b/vs2017/xenbus_coinst/xenbus_coinst.vcxproj deleted file mode 100644
index 7eeb228..0000000
--- a/vs2017/xenbus_coinst/xenbus_coinst.vcxproj
+++ /dev/null
@@ -1,64 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="14.0" \
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <Import Project="..\configs.props" />
- <PropertyGroup Label="PropertySheets">
- <DriverType>WDM</DriverType>
- <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset>
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Label="Globals">
- <ProjectGuid>{4BF41378-C01B-4002-8581-563C5F703362}</ProjectGuid>
- </PropertyGroup>
- <Import Project="..\targets.props" />
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <PropertyGroup>
- <RunCodeAnalysis>true</RunCodeAnalysis>
- <EnableInf2cat>false</EnableInf2cat>
- </PropertyGroup>
- <ItemDefinitionGroup>
- <ClCompile>
- <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>PROJECT=$(ProjectName);%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <WarningLevel>EnableAllWarnings</WarningLevel>
- <DisableSpecificWarnings>4127;4711;4548;4820;4668;4255;5045;6001;6054;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings>
- <MultiProcessorCompilation>true</MultiProcessorCompilation>
- <EnablePREfast>true</EnablePREfast>
- <RuntimeLibrary \
Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary>
- <RuntimeLibrary \
Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary>
- </ClCompile>
- <Link>
- <ModuleDefinitionFile>../../src/coinst/xenbus_coinst.def</ModuleDefinitionFile>
- <AdditionalDependencies>setupapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <EnableCOMDATFolding>false</EnableCOMDATFolding>
- </Link>
- <ResourceCompile>
- <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
- <ClCompile>
- <PreprocessorDefinitions>__i386__;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- </ClCompile>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Platform)'=='x64'">
- <ClCompile>
- <PreprocessorDefinitions>__x86_64__;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- </ClCompile>
- </ItemDefinitionGroup>
- <ItemGroup>
- <FilesToPackage Include="$(TargetPath)" />
- <FilesToPackage Include="$(OutDir)$(TargetName).pdb" />
- <FilesToPackage Include="@(Inf->'%(CopyOutput)')" Condition="'@(Inf)'!=''" />
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="..\..\src\coinst\coinst.c" />
- </ItemGroup>
- <ItemGroup>
- <None Include="..\..\src\coinst\xenbus_coinst.def" />
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="..\..\src\coinst\xenbus_coinst.rc" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
-</Project>
diff --git a/vs2017/xenbus_coinst/xenbus_coinst.vcxproj.user \
b/vs2017/xenbus_coinst/xenbus_coinst.vcxproj.user deleted file mode 100644
index db41a92..0000000
--- a/vs2017/xenbus_coinst/xenbus_coinst.vcxproj.user
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="14.0" \
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <PropertyGroup>
- <SignMode>TestSign</SignMode>
- <TestCertificate>..\..\src\xenbus.pfx</TestCertificate>
- <TimeStampServer>http://timestamp.verisign.com/scripts/timstamp.dll</TimeStampServer>
- </PropertyGroup>
-</Project>
diff --git a/vs2019/package/package.vcxproj b/vs2019/package/package.vcxproj
index 4d03e23..839c047 100644
--- a/vs2019/package/package.vcxproj
+++ b/vs2019/package/package.vcxproj
@@ -47,9 +47,6 @@
<ProjectReference Include="..\xenfilt\xenfilt.vcxproj">
<Project>{d7411b2c-2c43-434d-9f56-e10a3d2f5bad}</Project>
</ProjectReference>
- <ProjectReference Include="..\xenbus_coinst\xenbus_coinst.vcxproj">
- <Project>{4bf41378-c01b-4002-8581-563c5f703362}</Project>
- </ProjectReference>
<ProjectReference Include="..\xenbus\xenbus.vcxproj">
<Project>{14c16c29-77c9-475b-a618-1b01e67cf985}</Project>
</ProjectReference>
diff --git a/vs2019/xenbus.sln b/vs2019/xenbus.sln
index 4ced8db..65867c9 100644
--- a/vs2019/xenbus.sln
+++ b/vs2019/xenbus.sln
@@ -4,11 +4,6 @@ VisualStudioVersion = 16.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "version", \
"version\version.vcxproj", "{65FA97EA-A569-4FC1-BFE7-D68E109143F7}" EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xenbus_coinst", \
"xenbus_coinst\xenbus_coinst.vcxproj", \
"{4BF41378-C01B-4002-8581-563C5F703362}"
- ProjectSection(ProjectDependencies) = postProject
- {65FA97EA-A569-4FC1-BFE7-D68E109143F7} = {65FA97EA-A569-4FC1-BFE7-D68E109143F7}
- EndProjectSection
-EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xenbus_monitor", \
"xenbus_monitor\xenbus_monitor.vcxproj", "{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}" \
ProjectSection(ProjectDependencies) = postProject \
{65FA97EA-A569-4FC1-BFE7-D68E109143F7} = {65FA97EA-A569-4FC1-BFE7-D68E109143F7} @@ \
-35,7 +30,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "package", \
"package\package. ProjectSection(ProjectDependencies) = postProject
{65FA97EA-A569-4FC1-BFE7-D68E109143F7} = {65FA97EA-A569-4FC1-BFE7-D68E109143F7}
{14C16C29-77C9-475B-A618-1B01E67CF985} = {14C16C29-77C9-475B-A618-1B01E67CF985}
- {4BF41378-C01B-4002-8581-563C5F703362} = {4BF41378-C01B-4002-8581-563C5F703362}
{9C6A5D48-A331-4B1F-A004-7BB67BA5BE1C} = {9C6A5D48-A331-4B1F-A004-7BB67BA5BE1C}
{D7411B2C-2C43-434D-9F56-E10A3D2F5BAD} = {D7411B2C-2C43-434D-9F56-E10A3D2F5BAD}
{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B} = {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}
@@ -69,22 +63,6 @@ Global
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8 Release|Win32.Build.0 = Windows 8 \
Release|Win32 {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8 Release|x64.ActiveCfg \
= Windows 8 Release|x64 {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8 \
Release|x64.Build.0 = Windows 8 Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|Win32.ActiveCfg = Windows \
10 Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|Win32.Build.0 = Windows 10 \
Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|x64.ActiveCfg = Windows 10 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|x64.Build.0 = Windows 10 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|Win32.ActiveCfg = \
Windows 10 Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|Win32.Build.0 = Windows \
10 Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|x64.ActiveCfg = Windows \
10 Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|x64.Build.0 = Windows 10 \
Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|Win32.ActiveCfg = Windows 8 \
Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|Win32.Build.0 = Windows 8 \
Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|x64.ActiveCfg = Windows 8 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|x64.Build.0 = Windows 8 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|Win32.ActiveCfg = Windows \
8 Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|Win32.Build.0 = Windows 8 \
Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|x64.ActiveCfg = Windows 8 \
Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|x64.Build.0 = Windows 8 \
Release|x64 {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Debug|Win32.ActiveCfg \
= Windows 10 Debug|Win32 {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 \
Debug|Win32.Build.0 = Windows 10 Debug|Win32 \
{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Debug|x64.ActiveCfg = Windows 10 \
Debug|x64
diff --git a/vs2019/xenbus_coinst/xenbus_coinst.vcxproj \
b/vs2019/xenbus_coinst/xenbus_coinst.vcxproj deleted file mode 100644
index c4e47d0..0000000
--- a/vs2019/xenbus_coinst/xenbus_coinst.vcxproj
+++ /dev/null
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="14.0" \
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <Import Project="..\configs.props" />
- <PropertyGroup Label="PropertySheets">
- <DriverType>WDM</DriverType>
- <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset>
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Label="Globals">
- <ProjectGuid>{4BF41378-C01B-4002-8581-563C5F703362}</ProjectGuid>
- </PropertyGroup>
- <Import Project="..\targets.props" />
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <PropertyGroup>
- <RunCodeAnalysis>true</RunCodeAnalysis>
- <EnableInf2cat>false</EnableInf2cat>
- </PropertyGroup>
- <ItemDefinitionGroup>
- <ClCompile>
- <AdditionalOptions>/ZH:SHA_256 %(AdditionalOptions)</AdditionalOptions>
- <SDLCheck>true</SDLCheck>
- <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>PROJECT=$(ProjectName);%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <WarningLevel>EnableAllWarnings</WarningLevel>
- <DisableSpecificWarnings>4127;4711;4548;4820;4668;4255;5045;6001;6054;26052;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings>
- <MultiProcessorCompilation>true</MultiProcessorCompilation>
- <EnablePREfast>true</EnablePREfast>
- <RuntimeLibrary \
Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary>
- <RuntimeLibrary \
Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary>
- </ClCompile>
- <Link>
- <ModuleDefinitionFile>../../src/coinst/xenbus_coinst.def</ModuleDefinitionFile>
- <AdditionalDependencies>setupapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <EnableCOMDATFolding>false</EnableCOMDATFolding>
- <CETCompat>true</CETCompat>
- </Link>
- <ResourceCompile>
- <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <DriverSign>
- <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
- </DriverSign>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
- <ClCompile>
- <PreprocessorDefinitions>__i386__;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- </ClCompile>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Platform)'=='x64'">
- <ClCompile>
- <PreprocessorDefinitions>__x86_64__;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- </ClCompile>
- </ItemDefinitionGroup>
- <ItemGroup>
- <FilesToPackage Include="$(TargetPath)" />
- <FilesToPackage Include="$(OutDir)$(TargetName).pdb" />
- <FilesToPackage Include="@(Inf->'%(CopyOutput)')" Condition="'@(Inf)'!=''" />
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="..\..\src\coinst\coinst.c" />
- </ItemGroup>
- <ItemGroup>
- <None Include="..\..\src\coinst\xenbus_coinst.def" />
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="..\..\src\coinst\xenbus_coinst.rc" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
-</Project>
diff --git a/vs2019/xenbus_coinst/xenbus_coinst.vcxproj.user \
b/vs2019/xenbus_coinst/xenbus_coinst.vcxproj.user deleted file mode 100644
index db41a92..0000000
--- a/vs2019/xenbus_coinst/xenbus_coinst.vcxproj.user
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="14.0" \
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <PropertyGroup>
- <SignMode>TestSign</SignMode>
- <TestCertificate>..\..\src\xenbus.pfx</TestCertificate>
- <TimeStampServer>http://timestamp.verisign.com/scripts/timstamp.dll</TimeStampServer>
- </PropertyGroup>
-</Project>
diff --git a/vs2022/package/package.vcxproj b/vs2022/package/package.vcxproj
index 885ce5a..e9f7a52 100644
--- a/vs2022/package/package.vcxproj
+++ b/vs2022/package/package.vcxproj
@@ -47,9 +47,6 @@
<ProjectReference Include="..\xenfilt\xenfilt.vcxproj">
<Project>{d7411b2c-2c43-434d-9f56-e10a3d2f5bad}</Project>
</ProjectReference>
- <ProjectReference Include="..\xenbus_coinst\xenbus_coinst.vcxproj">
- <Project>{4bf41378-c01b-4002-8581-563c5f703362}</Project>
- </ProjectReference>
<ProjectReference Include="..\xenbus\xenbus.vcxproj">
<Project>{14c16c29-77c9-475b-a618-1b01e67cf985}</Project>
</ProjectReference>
diff --git a/vs2022/xenbus.sln b/vs2022/xenbus.sln
index 4ced8db..65867c9 100644
--- a/vs2022/xenbus.sln
+++ b/vs2022/xenbus.sln
@@ -4,11 +4,6 @@ VisualStudioVersion = 16.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "version", \
"version\version.vcxproj", "{65FA97EA-A569-4FC1-BFE7-D68E109143F7}" EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xenbus_coinst", \
"xenbus_coinst\xenbus_coinst.vcxproj", \
"{4BF41378-C01B-4002-8581-563C5F703362}"
- ProjectSection(ProjectDependencies) = postProject
- {65FA97EA-A569-4FC1-BFE7-D68E109143F7} = {65FA97EA-A569-4FC1-BFE7-D68E109143F7}
- EndProjectSection
-EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xenbus_monitor", \
"xenbus_monitor\xenbus_monitor.vcxproj", "{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}" \
ProjectSection(ProjectDependencies) = postProject \
{65FA97EA-A569-4FC1-BFE7-D68E109143F7} = {65FA97EA-A569-4FC1-BFE7-D68E109143F7} @@ \
-35,7 +30,6 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "package", \
"package\package. ProjectSection(ProjectDependencies) = postProject
{65FA97EA-A569-4FC1-BFE7-D68E109143F7} = {65FA97EA-A569-4FC1-BFE7-D68E109143F7}
{14C16C29-77C9-475B-A618-1B01E67CF985} = {14C16C29-77C9-475B-A618-1B01E67CF985}
- {4BF41378-C01B-4002-8581-563C5F703362} = {4BF41378-C01B-4002-8581-563C5F703362}
{9C6A5D48-A331-4B1F-A004-7BB67BA5BE1C} = {9C6A5D48-A331-4B1F-A004-7BB67BA5BE1C}
{D7411B2C-2C43-434D-9F56-E10A3D2F5BAD} = {D7411B2C-2C43-434D-9F56-E10A3D2F5BAD}
{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B} = {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}
@@ -69,22 +63,6 @@ Global
{65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8 Release|Win32.Build.0 = Windows 8 \
Release|Win32 {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8 Release|x64.ActiveCfg \
= Windows 8 Release|x64 {65FA97EA-A569-4FC1-BFE7-D68E109143F7}.Windows 8 \
Release|x64.Build.0 = Windows 8 Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|Win32.ActiveCfg = Windows \
10 Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|Win32.Build.0 = Windows 10 \
Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|x64.ActiveCfg = Windows 10 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Debug|x64.Build.0 = Windows 10 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|Win32.ActiveCfg = \
Windows 10 Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|Win32.Build.0 = Windows \
10 Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|x64.ActiveCfg = Windows \
10 Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 10 Release|x64.Build.0 = Windows 10 \
Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|Win32.ActiveCfg = Windows 8 \
Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|Win32.Build.0 = Windows 8 \
Debug|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|x64.ActiveCfg = Windows 8 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Debug|x64.Build.0 = Windows 8 \
Debug|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|Win32.ActiveCfg = Windows \
8 Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|Win32.Build.0 = Windows 8 \
Release|Win32
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|x64.ActiveCfg = Windows 8 \
Release|x64
- {4BF41378-C01B-4002-8581-563C5F703362}.Windows 8 Release|x64.Build.0 = Windows 8 \
Release|x64 {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Debug|Win32.ActiveCfg \
= Windows 10 Debug|Win32 {2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 \
Debug|Win32.Build.0 = Windows 10 Debug|Win32 \
{2E61D2CC-865E-442C-8C83-B8DAFD7BBD3B}.Windows 10 Debug|x64.ActiveCfg = Windows 10 \
Debug|x64
diff --git a/vs2022/xenbus_coinst/xenbus_coinst.vcxproj \
b/vs2022/xenbus_coinst/xenbus_coinst.vcxproj deleted file mode 100644
index c4e47d0..0000000
--- a/vs2022/xenbus_coinst/xenbus_coinst.vcxproj
+++ /dev/null
@@ -1,70 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="14.0" \
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <Import Project="..\configs.props" />
- <PropertyGroup Label="PropertySheets">
- <DriverType>WDM</DriverType>
- <PlatformToolset>WindowsApplicationForDrivers10.0</PlatformToolset>
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Label="Globals">
- <ProjectGuid>{4BF41378-C01B-4002-8581-563C5F703362}</ProjectGuid>
- </PropertyGroup>
- <Import Project="..\targets.props" />
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <PropertyGroup>
- <RunCodeAnalysis>true</RunCodeAnalysis>
- <EnableInf2cat>false</EnableInf2cat>
- </PropertyGroup>
- <ItemDefinitionGroup>
- <ClCompile>
- <AdditionalOptions>/ZH:SHA_256 %(AdditionalOptions)</AdditionalOptions>
- <SDLCheck>true</SDLCheck>
- <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>PROJECT=$(ProjectName);%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <WarningLevel>EnableAllWarnings</WarningLevel>
- <DisableSpecificWarnings>4127;4711;4548;4820;4668;4255;5045;6001;6054;26052;28196;%(DisableSpecificWarnings)</DisableSpecificWarnings>
- <MultiProcessorCompilation>true</MultiProcessorCompilation>
- <EnablePREfast>true</EnablePREfast>
- <RuntimeLibrary \
Condition="'$(UseDebugLibraries)'=='true'">MultiThreadedDebug</RuntimeLibrary>
- <RuntimeLibrary \
Condition="'$(UseDebugLibraries)'=='false'">MultiThreaded</RuntimeLibrary>
- </ClCompile>
- <Link>
- <ModuleDefinitionFile>../../src/coinst/xenbus_coinst.def</ModuleDefinitionFile>
- <AdditionalDependencies>setupapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <EnableCOMDATFolding>false</EnableCOMDATFolding>
- <CETCompat>true</CETCompat>
- </Link>
- <ResourceCompile>
- <AdditionalIncludeDirectories>$(SolutionDir)..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <DriverSign>
- <FileDigestAlgorithm>sha256</FileDigestAlgorithm>
- </DriverSign>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Platform)'=='Win32'">
- <ClCompile>
- <PreprocessorDefinitions>__i386__;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- </ClCompile>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Platform)'=='x64'">
- <ClCompile>
- <PreprocessorDefinitions>__x86_64__;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- </ClCompile>
- </ItemDefinitionGroup>
- <ItemGroup>
- <FilesToPackage Include="$(TargetPath)" />
- <FilesToPackage Include="$(OutDir)$(TargetName).pdb" />
- <FilesToPackage Include="@(Inf->'%(CopyOutput)')" Condition="'@(Inf)'!=''" />
- </ItemGroup>
- <ItemGroup>
- <ClCompile Include="..\..\src\coinst\coinst.c" />
- </ItemGroup>
- <ItemGroup>
- <None Include="..\..\src\coinst\xenbus_coinst.def" />
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="..\..\src\coinst\xenbus_coinst.rc" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
-</Project>
diff --git a/vs2022/xenbus_coinst/xenbus_coinst.vcxproj.user \
b/vs2022/xenbus_coinst/xenbus_coinst.vcxproj.user deleted file mode 100644
index db41a92..0000000
--- a/vs2022/xenbus_coinst/xenbus_coinst.vcxproj.user
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="14.0" \
xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <PropertyGroup>
- <SignMode>TestSign</SignMode>
- <TestCertificate>..\..\src\xenbus.pfx</TestCertificate>
- <TimeStampServer>http://timestamp.verisign.com/scripts/timstamp.dll</TimeStampServer>
- </PropertyGroup>
-</Project>
--
2.41.0.windows.3
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic