[TCPIP]
authorPierre Schweitzer <pierre@reactos.org>
Sun, 29 Nov 2015 19:53:48 +0000 (19:53 +0000)
committerPierre Schweitzer <pierre@reactos.org>
Sun, 29 Nov 2015 19:53:48 +0000 (19:53 +0000)
Stub implementation of IOCTL_QUERY_IP_HW_ADDRESS.

This fixes 5 tests in iphlpapi_apitest!

svn path=/trunk/; revision=70213

reactos/drivers/network/tcpip/include/dispatch.h
reactos/drivers/network/tcpip/tcpip/dispatch.c
reactos/drivers/network/tcpip/tcpip/main.c

index 9effe5f..b1fc7e0 100644 (file)
@@ -69,6 +69,10 @@ NTSTATUS DispTdiDeleteIPAddress(
     PIRP Irp,
     PIO_STACK_LOCATION IrpSp);
 
+NTSTATUS DispTdiQueryIpHwAddress(
+    PIRP Irp,
+    PIO_STACK_LOCATION IrpSp);
+
 VOID DispDoDisconnect(
     PVOID Data);
 
index 69ed6bf..e8e65b8 100644 (file)
@@ -1609,4 +1609,18 @@ NTSTATUS DispTdiDeleteIPAddress( PIRP Irp, PIO_STACK_LOCATION IrpSp ) {
     return Status;
 }
 
+NTSTATUS DispTdiQueryIpHwAddress( PIRP Irp, PIO_STACK_LOCATION IrpSp ) {
+    NTSTATUS Status;
+
+    Status = STATUS_NOT_IMPLEMENTED;
+    if (IrpSp->Parameters.DeviceIoControl.InputBufferLength < 2 * sizeof(ULONG)) {
+        Status = STATUS_INVALID_BUFFER_SIZE;
+        goto Exit;
+    }
+
+Exit:
+    Irp->IoStatus.Status = Status;
+    return Status;
+}
+
 /* EOF */
index 2999d94..315d585 100644 (file)
@@ -525,6 +525,11 @@ TiDispatch(
       Status = DispTdiDeleteIPAddress(Irp, IrpSp);
       break;
 
+    case IOCTL_QUERY_IP_HW_ADDRESS:
+      TI_DbgPrint(MIN_TRACE, ("QUERY_IP_HW_ADDRESS\n"));
+      Status = DispTdiQueryIpHwAddress(Irp, IrpSp);
+      break;
+
     default:
       TI_DbgPrint(MIN_TRACE, ("Unknown IOCTL 0x%X\n",
           IrpSp->Parameters.DeviceIoControl.IoControlCode));