[Com0com-cvs] com0com/sys wmi.c,1.1,1.2
The virtual serial port driver for Windows.
Brought to you by:
vfrolov
From: Vyacheslav F. <vf...@us...> - 2006-10-17 06:54:40
|
Update of /cvsroot/com0com/com0com/sys In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv22687 Modified Files: wmi.c Log Message: Disabled SERIAL_PORT_WMI_HW_GUID for binary compatibility with both W2K and WXP Index: wmi.c =================================================================== RCS file: /cvsroot/com0com/com0com/sys/wmi.c,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** wmi.c 23 Aug 2006 13:09:55 -0000 1.1 --- wmi.c 17 Oct 2006 06:54:37 -0000 1.2 *************** *** 20,27 **** * * $Log$ * Revision 1.1 2006/08/23 13:09:55 vfrolov * Initial revision * - * */ --- 20,30 ---- * * $Log$ + * Revision 1.2 2006/10/17 06:54:37 vfrolov + * Disabled SERIAL_PORT_WMI_HW_GUID for binary compatibility with + * both W2K and WXP + * * Revision 1.1 2006/08/23 13:09:55 vfrolov * Initial revision * */ *************** *** 35,39 **** #include "commprop.h" ! /* * FILE_ID used by HALT_UNLESS to put it on BSOD */ --- 38,42 ---- #include "commprop.h" ! /* * FILE_ID used by HALT_UNLESS to put it on BSOD */ *************** *** 42,61 **** GUID guidWmiPortName = SERIAL_PORT_WMI_NAME_GUID; GUID guidWmiPortComm = SERIAL_PORT_WMI_COMM_GUID; GUID guidWmiPortHW = SERIAL_PORT_WMI_HW_GUID; GUID guidWmiPortPerf = SERIAL_PORT_WMI_PERF_GUID; GUID guidWmiPortProperties = SERIAL_PORT_WMI_PROPERTIES_GUID; ! #define COC_WMI_PORT_NAME 0 ! #define COC_WMI_PORT_COMM 1 ! #define COC_WMI_PORT_HW 2 ! #define COC_WMI_PORT_PERF 3 ! #define COC_WMI_PORT_PROPERTIES 4 ! #define COC_WMI_LIST_SIZE 5 WMIGUIDREGINFO guidWmiList[COC_WMI_LIST_SIZE] = { {&guidWmiPortName, 1, 0}, {&guidWmiPortComm, 1, 0}, {&guidWmiPortHW, 1, 0}, {&guidWmiPortPerf, 1, 0}, {&guidWmiPortProperties, 1, 0}, --- 45,72 ---- GUID guidWmiPortName = SERIAL_PORT_WMI_NAME_GUID; GUID guidWmiPortComm = SERIAL_PORT_WMI_COMM_GUID; + #ifdef ALLOW_WMI_HW_GUID GUID guidWmiPortHW = SERIAL_PORT_WMI_HW_GUID; + #endif /* ALLOW_WMI_HW_GUID */ GUID guidWmiPortPerf = SERIAL_PORT_WMI_PERF_GUID; GUID guidWmiPortProperties = SERIAL_PORT_WMI_PROPERTIES_GUID; ! enum COC_GUID_INDEX { ! COC_WMI_PORT_NAME, ! COC_WMI_PORT_COMM, ! #ifdef ALLOW_WMI_HW_GUID ! COC_WMI_PORT_HW, ! #endif /* ALLOW_WMI_HW_GUID */ ! COC_WMI_PORT_PERF, ! COC_WMI_PORT_PROPERTIES, ! COC_WMI_LIST_SIZE ! }; WMIGUIDREGINFO guidWmiList[COC_WMI_LIST_SIZE] = { {&guidWmiPortName, 1, 0}, {&guidWmiPortComm, 1, 0}, + #ifdef ALLOW_WMI_HW_GUID {&guidWmiPortHW, 1, 0}, + #endif /* ALLOW_WMI_HW_GUID */ {&guidWmiPortPerf, 1, 0}, {&guidWmiPortProperties, 1, 0}, *************** *** 202,205 **** --- 213,222 ---- status = STATUS_SUCCESS; break; + #ifdef ALLOW_WMI_HW_GUID + /* + * W2K and WXP have different SERIAL_WMI_HW_DATA structures + * so we don't allow SERIAL_PORT_WMI_HW_GUID by default. + * Define ALLOW_WMI_HW_GUID if you need it. + */ case COC_WMI_PORT_HW: Trace0((PC0C_COMMON_EXTENSION)pDevExt, L"QueryWmiDataBlock PORT_HW"); *************** *** 216,219 **** --- 233,237 ---- status = STATUS_SUCCESS; break; + #endif /* ALLOW_WMI_HW_GUID */ case COC_WMI_PORT_PERF: Trace0((PC0C_COMMON_EXTENSION)pDevExt, L"QueryWmiDataBlock PORT_PERF"); *************** *** 337,341 **** case IrpNotCompleted: TraceCode((PC0C_COMMON_EXTENSION)pDevExt, "IrpNotCompleted ", NULL, ! (ULONG)IoGetCurrentIrpStackLocation(pIrp)->Parameters.WMI.DataPath, &status); IoCompleteRequest(pIrp, IO_NO_INCREMENT); break; --- 355,359 ---- case IrpNotCompleted: TraceCode((PC0C_COMMON_EXTENSION)pDevExt, "IrpNotCompleted ", NULL, ! (ULONG)(ULONG_PTR)IoGetCurrentIrpStackLocation(pIrp)->Parameters.WMI.DataPath, &status); IoCompleteRequest(pIrp, IO_NO_INCREMENT); break; |