;/*++
;
; Copyright (c) Microsoft Corporation.  All rights reserved.
;
; Module Name:
;
;    wvmic.inf
;
; Abstract:
;
;    INF file for installing the integration components that are OneCore
;    compatible.
;
;--*/

[Version]
Signature="$WINDOWS NT$"
Class=System
ClassGuid={4D36E97D-E325-11CE-BFC1-08002BE10318}
Provider=%MSFT%
PnpLockdown=1
DriverVer = 06/21/2006,10.0.22621.1

;*****************************************
; Models Sections
;*****************************************

[Manufacturer]
%StdMfg%=Standard,NTamd64

[Standard.NTamd64]
%Activation.DeviceDesc%  = VmVdAct,         vmbus\{3375baf4-9e15-4b30-b765-67acb10d607b}
%RDPC.DeviceDesc%        = VmIcRdpC,        vmbus\{f8e65716-3cb3-4a06-9a60-1889c5cccab5}
%RDPD.DeviceDesc%        = VmIcRdpD,        vmbus\{f9e9c0d3-b511-4a48-8046-d38079a8830c}

;*****************************************
; Install Sections
;*****************************************

[VmVdAct.NT]

[VmIcRdpC.NT]

[VmIcRdpD.NT]

;*****************************************
; HW Sections
;*****************************************

[VmVdAct.NT.HW]
AddReg=VmVdAct.HW.AddReg

[VmIcRdpC.NT.HW]
AddReg=VmIcRdpC.HW.AddReg

[VmIcRdpD.NT.HW]
AddReg=VmIcRdpD.HW.AddReg

;*****************************************
; Services Sections
;*****************************************

[VmVdAct.NT.Services]
AddService = ,%SPSVCINST_ASSOCSERVICE%  ; null service install

[VmIcRdpC.NT.Services]
AddService = ,%SPSVCINST_ASSOCSERVICE%  ; null service install

[VmIcRdpD.NT.Services]
AddService = ,%SPSVCINST_ASSOCSERVICE%  ; null service install

;*****************************************
; VMBUS channel security settings
; Generic-all access to Built-in Administrators, Local System and "NT SERVICE\<IC service name>"
;*****************************************

[VmVdAct.HW.AddReg]
HKR,,DeviceCharacteristics,%REG_DWORD%,0x0100 ;FILE_DEVICE_SECURE_OPEN
HKR,,Security,,"D:P(A;;GA;;;BA)(A;;GA;;;SY)(A;;GA;;;S-1-5-80-123231216-2592883651-3715271367-3753151631-4175906628)"

[VmIcRdpC.HW.AddReg]
; For VMBus over RDP, allow generic-all access to Network Service instead of "NT SERVICE\<IC service name>" because TermService runs as Network Service.
HKR,,DeviceCharacteristics,%REG_DWORD%,0x0100 ;FILE_DEVICE_SECURE_OPEN
HKR,,Security,,"D:P(A;;GA;;;BA)(A;;GA;;;SY)(A;;GA;;;NS)"

[VmIcRdpD.HW.AddReg]
; For VMBus over RDP, allow generic-all access to Network Service instead of "NT SERVICE\<IC service name>" because TermService runs as Network Service.
HKR,,DeviceCharacteristics,%REG_DWORD%,0x0100 ;FILE_DEVICE_SECURE_OPEN
HKR,,Security,,"D:P(A;;GA;;;BA)(A;;GA;;;SY)(A;;GA;;;NS)"

[Strings]
;
; Non-Localizable
;
SPSVCINST_ASSOCSERVICE = 0x00000002
MSFT = "Microsoft"
StdMfg = "Microsoft"
DiskId1 = "Microsoft Hyper-V Integration Components"

;
; Registry types
;
REG_SZ        = 0x00000
REG_MULTI_SZ  = 0x10000
REG_DWORD     = 0x10001
REG_EXPAND_SZ = 0x20000

;
; Localizable
;
Activation.DeviceDesc  = "Microsoft Hyper-V Activation Component"
RdpC.DeviceDesc        = "Microsoft Hyper-V Remote Desktop Control Channel"
RdpD.DeviceDesc        = "Microsoft Hyper-V Remote Desktop Data Channel"
