Update of /cvsroot/com0com/com0com
In directory sc8-pr-cvs4.sourceforge.net:/tmp/cvs-serv24665
Modified Files:
ioctl.c trace.c trace.h tracetbl.c
Log Message:
Implemented IOCTL_SERIAL_GET_MODEM_CONTROL
Index: trace.c
===================================================================
RCS file: /cvsroot/com0com/com0com/trace.c,v
retrieving revision 1.18
retrieving revision 1.19
diff -C2 -d -r1.18 -r1.19
*** trace.c 10 Jan 2006 09:44:04 -0000 1.18
--- trace.c 19 May 2006 15:02:03 -0000 1.19
***************
*** 20,23 ****
--- 20,26 ----
*
* $Log$
+ * Revision 1.19 2006/05/19 15:02:03 vfrolov
+ * Implemented IOCTL_SERIAL_GET_MODEM_CONTROL
+ *
* Revision 1.18 2006/01/10 09:44:04 vfrolov
* Added ability to enable/disable dump
***************
*** 1295,1303 ****
}
break;
case IOCTL_SERIAL_GET_DTRRTS:
if ((flags & TRACE_FLAG_RESULTS) && inform >= sizeof(ULONG)) {
pDestStr = AnsiStrCopyStr(pDestStr, &size, " ");
pDestStr = AnsiStrCopyMask(pDestStr, &size,
! codeNameTableDTRRTS, *((PULONG)pSysBuf));
}
break;
--- 1298,1307 ----
}
break;
+ case IOCTL_SERIAL_GET_MODEM_CONTROL:
case IOCTL_SERIAL_GET_DTRRTS:
if ((flags & TRACE_FLAG_RESULTS) && inform >= sizeof(ULONG)) {
pDestStr = AnsiStrCopyStr(pDestStr, &size, " ");
pDestStr = AnsiStrCopyMask(pDestStr, &size,
! codeNameTableModemControl, *((PULONG)pSysBuf));
}
break;
Index: trace.h
===================================================================
RCS file: /cvsroot/com0com/com0com/trace.h,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** trace.h 10 Jan 2006 09:32:20 -0000 1.8
--- trace.h 19 May 2006 15:02:03 -0000 1.9
***************
*** 20,23 ****
--- 20,26 ----
*
* $Log$
+ * Revision 1.9 2006/05/19 15:02:03 vfrolov
+ * Implemented IOCTL_SERIAL_GET_MODEM_CONTROL
+ *
* Revision 1.8 2006/01/10 09:32:20 vfrolov
* Added codeNameTableHoldReasons[]
***************
*** 118,122 ****
CODE2NAME codeNameTableDoType[];
CODE2NAME codeNameTableModemStatus[];
! CODE2NAME codeNameTableDTRRTS[];
CODE2NAME codeNameTableStatus[];
CODE2NAME codeNameTableIrpMj[];
--- 121,125 ----
CODE2NAME codeNameTableDoType[];
CODE2NAME codeNameTableModemStatus[];
! CODE2NAME codeNameTableModemControl[];
CODE2NAME codeNameTableStatus[];
CODE2NAME codeNameTableIrpMj[];
Index: tracetbl.c
===================================================================
RCS file: /cvsroot/com0com/com0com/tracetbl.c,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** tracetbl.c 10 Jan 2006 09:32:20 -0000 1.6
--- tracetbl.c 19 May 2006 15:02:03 -0000 1.7
***************
*** 20,23 ****
--- 20,26 ----
*
* $Log$
+ * Revision 1.7 2006/05/19 15:02:03 vfrolov
+ * Implemented IOCTL_SERIAL_GET_MODEM_CONTROL
+ *
* Revision 1.6 2006/01/10 09:32:20 vfrolov
* Added codeNameTableHoldReasons[]
***************
*** 180,186 ****
};
! CODE2NAME codeNameTableDTRRTS[] = {
{SERIAL_DTR_STATE, "DTR"},
{SERIAL_RTS_STATE, "RTS"},
{0, NULL}
};
--- 183,192 ----
};
! CODE2NAME codeNameTableModemControl[] = {
{SERIAL_DTR_STATE, "DTR"},
{SERIAL_RTS_STATE, "RTS"},
+ {0x04, "OUT1"},
+ {0x08, "OUT2"},
+ {0x10, "LOOP"},
{0, NULL}
};
Index: ioctl.c
===================================================================
RCS file: /cvsroot/com0com/com0com/ioctl.c,v
retrieving revision 1.21
retrieving revision 1.22
diff -C2 -d -r1.21 -r1.22
*** ioctl.c 18 May 2006 09:38:10 -0000 1.21
--- ioctl.c 19 May 2006 15:02:03 -0000 1.22
***************
*** 20,23 ****
--- 20,26 ----
*
* $Log$
+ * Revision 1.22 2006/05/19 15:02:03 vfrolov
+ * Implemented IOCTL_SERIAL_GET_MODEM_CONTROL
+ *
* Revision 1.21 2006/05/18 09:38:10 vfrolov
* Implemented SERIAL_TX_WAITING_XOFF_SENT
***************
*** 177,180 ****
--- 180,184 ----
}
break;
+ case IOCTL_SERIAL_GET_MODEM_CONTROL:
case IOCTL_SERIAL_GET_DTRRTS: {
ULONG modemStatusRemote;
***************
*** 193,196 ****
--- 197,203 ----
((modemStatusRemote & C0C_MSB_CTS) ? SERIAL_RTS_STATE : 0);
+ if (code == IOCTL_SERIAL_GET_MODEM_CONTROL)
+ *(PULONG)pIrp->AssociatedIrp.SystemBuffer |= 0x8;
+
pIrp->IoStatus.Information = sizeof(ULONG);
|