[irp] Remove irp__handler_decl macro
authorShao Miller <Shao.Miller@yrdsb.edu.on.ca>
Tue, 7 Dec 2010 22:00:27 +0000 (17:00 -0500)
committerShao Miller <Shao.Miller@yrdsb.edu.on.ca>
Tue, 7 Dec 2010 22:00:27 +0000 (17:00 -0500)
Use a typedef for similar (but lesser) convenience.
Again, for the sake of editors that parse source files.

19 files changed:
src/aoe/driver.c
src/include/bus_dev_ctl.h
src/include/bus_pnp.h
src/include/debug.h
src/include/disk_dev_ctl.h
src/include/disk_pnp.h
src/include/disk_scsi.h
src/include/driver.h
src/include/filedisk.h
src/include/irp.h
src/winvblock/bus/bus.c
src/winvblock/bus/dev_ctl.c
src/winvblock/bus/pnp.c
src/winvblock/disk/dev_ctl.c
src/winvblock/disk/disk.c
src/winvblock/disk/pnp.c
src/winvblock/disk/scsi.c
src/winvblock/filedisk/filedisk.c
src/winvblock/irp.c

index d713c90..89231c2 100644 (file)
@@ -54,7 +54,7 @@ extern NTSTATUS STDCALL ZwWaitForSingleObject(
 /* Forward declarations. */
 struct aoe_disk_type;
 static void STDCALL thread(IN void *);
-irp__handler_decl(aoe__bus_dev_ctl_dispatch);
+irp__handler aoe__bus_dev_ctl_dispatch;
 static void process_abft(void);
 static void STDCALL unload(IN PDRIVER_OBJECT DriverObject);
 static struct aoe_disk_type * create_aoe_disk(void);
@@ -2090,7 +2090,13 @@ static void process_abft(void)
       }
   }
 
-static irp__handler_decl(scan)
+static NTSTATUS STDCALL scan(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
   {
     KIRQL irql;
     winvblock__uint32 count;
@@ -2146,7 +2152,13 @@ static irp__handler_decl(scan)
   
   }
 
-static irp__handler_decl(show)
+static NTSTATUS STDCALL show(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
   {
     winvblock__uint32 count;
     device__type_ptr dev_walker;
@@ -2207,7 +2219,13 @@ static irp__handler_decl(show)
     return STATUS_SUCCESS;
   }
 
-static irp__handler_decl(mount)
+static NTSTATUS STDCALL mount(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
   {
     winvblock__uint8_ptr buffer = Irp->AssociatedIrp.SystemBuffer;
     struct aoe_disk_type * aoe_disk_ptr;
@@ -2238,7 +2256,13 @@ static irp__handler_decl(mount)
     return STATUS_SUCCESS;
   }
 
-irp__handler_decl(aoe__bus_dev_ctl_dispatch)
+NTSTATUS STDCALL aoe__bus_dev_ctl_dispatch(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
   {
     NTSTATUS status = STATUS_NOT_SUPPORTED;
   
index b66210e..e171f8b 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Copyright (C) 2009, Shao Miller <shao.miller@yrdsb.edu.on.ca>.
+ * Copyright (C) 2009-2010, Shao Miller <shao.miller@yrdsb.edu.on.ca>.
  * Copyright 2006-2008, V.
  * For WinAoE contact information, see http://winaoe.org/
  *
 /**
  * @file
  *
- * Bus Device Control IRP handling
- *
+ * Bus Device Control IRP handling.
  */
 
-extern irp__handler_decl (
-  bus_dev_ctl__dispatch
- );
+extern irp__handler bus_dev_ctl__dispatch;
 
 #endif                         /* _BUS_DEV_CTL_H */
index c7a7cba..8996f1d 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Copyright (C) 2009, Shao Miller <shao.miller@yrdsb.edu.on.ca>.
+ * Copyright (C) 2009-2010, Shao Miller <shao.miller@yrdsb.edu.on.ca>.
  * Copyright 2006-2008, V.
  * For WinAoE contact information, see http://winaoe.org/
  *
 /**
  * @file
  *
- * Bus PnP IRP handling
- *
+ * Bus PnP IRP handling.
  */
 
-extern irp__handler_decl (
-  bus_pnp__start_dev
- );
-extern irp__handler_decl (
-  bus_pnp__remove_dev
- );
-extern irp__handler_decl (
-  bus_pnp__query_dev_relations
- );
-extern irp__handler_decl (
-  bus_pnp__simple
- );
+extern irp__handler bus_pnp__start_dev;
+extern irp__handler bus_pnp__remove_dev;
+extern irp__handler bus_pnp__query_dev_relations;
+extern irp__handler bus_pnp__simple;
 
 #endif                         /* _BUS_PNP_H */
index a3606ae..d3f5e07 100644 (file)
@@ -36,7 +36,7 @@
 #    undef DBG
 #  endif
 /* Uncomment to enable */
-#  if 0
+#  if 1
 #    define DBG( ... ) \
 \
 xDbgPrint ( __FILE__, ( const PCHAR )__FUNCTION__, \
index eebf4d1..49142ab 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Copyright (C) 2009, Shao Miller <shao.miller@yrdsb.edu.on.ca>.
+ * Copyright (C) 2009-2010, Shao Miller <shao.miller@yrdsb.edu.on.ca>.
  * Copyright 2006-2008, V.
  * For WinAoE contact information, see http://winaoe.org/
  *
 /**
  * @file
  *
- * Disk Device Control IRP handling
- *
+ * Disk Device Control IRP handling.
  */
 
-extern irp__handler_decl (
-  disk_dev_ctl__dispatch
- );
+extern irp__handler disk_dev_ctl__dispatch;
 
 #endif                         /* _DISK_DEV_CTL_H */
index 7696fd1..15d112f 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Copyright (C) 2009, Shao Miller <shao.miller@yrdsb.edu.on.ca>.
+ * Copyright (C) 2009-2010, Shao Miller <shao.miller@yrdsb.edu.on.ca>.
  * Copyright 2006-2008, V.
  * For WinAoE contact information, see http://winaoe.org/
  *
 /**
  * @file
  *
- * Disk PnP IRP handling
- *
+ * Disk PnP IRP handling.
  */
 
-extern irp__handler_decl (
-  disk_pnp__query_id
- );
-extern irp__handler_decl (
-  disk_pnp__query_dev_text
- );
-extern irp__handler_decl (
-  disk_pnp__query_dev_relations
- );
-extern irp__handler_decl (
-  disk_pnp__query_bus_info
- );
-extern irp__handler_decl (
-  disk_pnp__query_capabilities
- );
-extern irp__handler_decl (
-  disk_pnp__simple
- );
+extern irp__handler disk_pnp__query_id;
+extern irp__handler disk_pnp__query_dev_text;
+extern irp__handler disk_pnp__query_dev_relations;
+extern irp__handler disk_pnp__query_bus_info;
+extern irp__handler disk_pnp__query_capabilities;
+extern irp__handler disk_pnp__simple;
 
 #endif                         /* _DISK_PNP_H */
index 85fe754..176498e 100644 (file)
@@ -1,5 +1,5 @@
 /**
- * Copyright (C) 2009, Shao Miller <shao.miller@yrdsb.edu.on.ca>.
+ * Copyright (C) 2009-2010, Shao Miller <shao.miller@yrdsb.edu.on.ca>.
  * Copyright 2006-2008, V.
  * For WinAoE contact information, see http://winaoe.org/
  *
 /**
  * @file
  *
- * Disk SCSI IRP handling
- *
+ * Disk SCSI IRP handling.
  */
 
-extern irp__handler_decl (
-  disk_scsi__dispatch
- );
+extern irp__handler disk_scsi__dispatch;
 
 #endif                         /* _DISK_SCSI_H */
index 383de9d..6e5eac2 100644 (file)
@@ -24,8 +24,7 @@
 /**
  * @file
  *
- * Driver specifics
- *
+ * Driver specifics.
  */
 
 #  include "portable.h"
@@ -76,7 +75,7 @@ typedef NTSTATUS STDCALL (driver__dispatch_func)(
   );
 
 extern winvblock__lib_func driver__dispatch_func (driver__default_dispatch);
-extern winvblock__lib_func irp__handler_decl (driver__not_supported);
-extern winvblock__lib_func irp__handler_decl (driver__create_close);
+extern winvblock__lib_func irp__handler driver__not_supported;
+extern winvblock__lib_func irp__handler driver__create_close;
 
 #endif                         /* _DRIVER_H */
index df87ea1..41a65be 100644 (file)
@@ -22,8 +22,7 @@
 /**
  * @file
  *
- * File-backed disk specifics
- *
+ * File-backed disk specifics.
  */
 
 winvblock__def_struct ( filedisk__type )
@@ -45,9 +44,7 @@ winvblock__def_struct ( filedisk__type )
   UNICODE_STRING filepath_unicode;
 };
 
-extern irp__handler_decl (
-  filedisk__attach
- );
+extern irp__handler filedisk__attach;
 
 /**
  * Initialize the global, file-backed disk-common environment
index 9755668..7ad7331 100644 (file)
 /**
  * @file
  *
- * Handling IRPs
- *
+ * Handling IRPs.
  */
 
 /* An unfortunate forward declaration.  Definition resolved in device.h */
 winvblock__def_struct ( device__type );
 
-/* We have lots of these, so offer a convenience macro for declarations */
-#  define irp__handler_decl( x ) \
-\
-NTSTATUS STDCALL                                \
-x (                                             \
-  IN PDEVICE_OBJECT DeviceObject,               \
-  IN PIRP Irp,                                  \
-  IN PIO_STACK_LOCATION Stack,                  \
-  IN struct _device__type *dev_ptr,             \
-  OUT winvblock__bool_ptr completion_ptr        \
- )
-/*
- * Function pointer for an IRP handler.
- * 'indent' mangles this, so it looks weird
- */
-typedef irp__handler_decl (
-   ( *irp__handler )
- );
+/* We have lots of these, so offer a typedef for declarations. */
+typedef NTSTATUS STDCALL irp__handler(
+    IN PDEVICE_OBJECT,
+    IN PIRP,
+    IN PIO_STACK_LOCATION,
+    IN struct _device__type *,
+    OUT winvblock__bool_ptr
+  );
 
 winvblock__def_struct ( irp__handling )
 {
@@ -55,7 +44,7 @@ winvblock__def_struct ( irp__handling )
   winvblock__uint8 irp_minor_func;
   winvblock__bool any_major;
   winvblock__bool any_minor;
-  irp__handler handler;
+  irp__handler handler;
 };
 
 winvblock__def_type ( winvblock__any_ptr, irp__handler_chain );
@@ -96,9 +85,7 @@ winvblock__lib_func winvblock__bool irp__unreg_table (
   IN irp__handling_ptr table
  );
 
-extern irp__handler_decl (
-  irp__process
- );
+extern irp__handler irp__process;
 extern winvblock__lib_func NTSTATUS STDCALL (irp__process_with_table)(
     IN PDEVICE_OBJECT,
     IN PIRP,
index 55cc81d..dc04e54 100644 (file)
@@ -22,8 +22,7 @@
 /**
  * @file
  *
- * Bus specifics
- *
+ * Bus specifics.
  */
 
 #include <ntddk.h>
@@ -138,29 +137,35 @@ bus__add_child (
   return TRUE;
 }
 
-static
-irp__handler_decl (
-  sys_ctl
- )
-{
-  bus__type_ptr bus_ptr = bus__get_ptr ( dev_ptr );
-  DBG ( "...\n" );
-  IoSkipCurrentIrpStackLocation ( Irp );
-  *completion_ptr = TRUE;
-  return IoCallDriver ( bus_ptr->LowerDeviceObject, Irp );
-}
+static NTSTATUS STDCALL sys_ctl(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
+  {
+    bus__type_ptr bus_ptr = bus__get_ptr ( dev_ptr );
+    DBG ( "...\n" );
+    IoSkipCurrentIrpStackLocation ( Irp );
+    *completion_ptr = TRUE;
+    return IoCallDriver ( bus_ptr->LowerDeviceObject, Irp );
+  }
 
-static
-irp__handler_decl (
-  power
- )
-{
-  bus__type_ptr bus_ptr = bus__get_ptr ( dev_ptr );
-  PoStartNextPowerIrp ( Irp );
-  IoSkipCurrentIrpStackLocation ( Irp );
-  *completion_ptr = TRUE;
-  return PoCallDriver ( bus_ptr->LowerDeviceObject, Irp );
-}
+static NTSTATUS STDCALL power(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
+  {
+    bus__type_ptr bus_ptr = bus__get_ptr ( dev_ptr );
+    PoStartNextPowerIrp ( Irp );
+    IoSkipCurrentIrpStackLocation ( Irp );
+    *completion_ptr = TRUE;
+    return PoCallDriver ( bus_ptr->LowerDeviceObject, Irp );
+  }
 
 NTSTATUS STDCALL
 Bus_GetDeviceCapabilities (
index cd393ae..9c5a057 100644 (file)
@@ -22,8 +22,7 @@
 /**
  * @file
  *
- * Bus Device Control IRP handling
- *
+ * Bus Device Control IRP handling.
  */
 
 #include <ntddk.h>
 #include "debug.h"
 #include "filedisk.h"
 
-static
-irp__handler_decl (
-  disk_detach
- )
+static NTSTATUS STDCALL disk_detach(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   winvblock__uint8_ptr buffer = Irp->AssociatedIrp.SystemBuffer;
   device__type_ptr dev_walker;
@@ -95,7 +97,13 @@ irp__handler_decl (
   return STATUS_SUCCESS;
 }
 
-irp__handler_decl ( bus_dev_ctl__dispatch )
+NTSTATUS STDCALL bus_dev_ctl__dispatch(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   NTSTATUS status;
   switch ( Stack->Parameters.DeviceIoControl.IoControlCode )
index 49a71af..292d0b2 100644 (file)
@@ -22,8 +22,7 @@
 /**
  * @file
  *
- * Bus PnP IRP handling
- *
+ * Bus PnP IRP handling.
  */
 
 #include <ntddk.h>
@@ -50,7 +49,13 @@ Bus_IoCompletionRoutine (
   return STATUS_MORE_PROCESSING_REQUIRED;
 }
 
-irp__handler_decl ( bus_pnp__start_dev )
+NTSTATUS STDCALL bus_pnp__start_dev(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   NTSTATUS status;
   KEVENT event;
@@ -80,7 +85,13 @@ irp__handler_decl ( bus_pnp__start_dev )
   return status;
 }
 
-irp__handler_decl ( bus_pnp__remove_dev )
+NTSTATUS STDCALL bus_pnp__remove_dev(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   NTSTATUS status;
   bus__type_ptr bus_ptr;
@@ -112,7 +123,13 @@ irp__handler_decl ( bus_pnp__remove_dev )
   return status;
 }
 
-irp__handler_decl ( bus_pnp__query_dev_relations )
+NTSTATUS STDCALL bus_pnp__query_dev_relations(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   NTSTATUS status;
   bus__type_ptr bus_ptr;
@@ -171,7 +188,13 @@ irp__handler_decl ( bus_pnp__query_dev_relations )
   return status;
 }
 
-irp__handler_decl ( bus_pnp__simple )
+NTSTATUS STDCALL bus_pnp__simple(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   NTSTATUS status;
   bus__type_ptr bus_ptr;
index 9256727..c0cd37c 100644 (file)
@@ -22,8 +22,7 @@
 /**
  * @file
  *
- * Disk Device Control IRP handling
- *
+ * Disk Device Control IRP handling.
  */
 
 #include <ntddk.h>
 #include "disk.h"
 #include "debug.h"
 
-static
-irp__handler_decl (
-  storage_query_prop
- )
+static NTSTATUS STDCALL storage_query_prop(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   NTSTATUS status = STATUS_INVALID_PARAMETER;
   PSTORAGE_PROPERTY_QUERY storage_prop_query = Irp->AssociatedIrp.SystemBuffer;
@@ -119,10 +121,13 @@ irp__handler_decl (
   return status;
 }
 
-static
-irp__handler_decl (
-  disk_get_drive_geom
- )
+static NTSTATUS STDCALL disk_get_drive_geom(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   winvblock__uint32 copy_size;
   DISK_GEOMETRY disk_geom;
@@ -143,10 +148,13 @@ irp__handler_decl (
   return STATUS_SUCCESS;
 }
 
-static
-irp__handler_decl (
-  scsi_get_address
- )
+static NTSTATUS STDCALL scsi_get_address(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   winvblock__uint32 copy_size;
   SCSI_ADDRESS scsi_address;
@@ -167,7 +175,13 @@ irp__handler_decl (
   return STATUS_SUCCESS;
 }
 
-irp__handler_decl ( disk_dev_ctl__dispatch )
+NTSTATUS STDCALL disk_dev_ctl__dispatch(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   NTSTATUS status;
 
index d7eb015..ce296cf 100644 (file)
@@ -22,8 +22,7 @@
 /**
  * @file
  *
- * Disk device specifics
- *
+ * Disk device specifics.
  */
 
 #include <ntddk.h>
@@ -99,22 +98,28 @@ disk__close_decl ( default_close )
   return;
 }
 
-static
-irp__handler_decl (
-  power
- )
-{
-  PoStartNextPowerIrp ( Irp );
-  Irp->IoStatus.Status = STATUS_NOT_SUPPORTED;
-  IoCompleteRequest ( Irp, IO_NO_INCREMENT );
-  *completion_ptr = TRUE;
-  return STATUS_NOT_SUPPORTED;
-}
+static NTSTATUS STDCALL power(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
+  {
+    PoStartNextPowerIrp ( Irp );
+    Irp->IoStatus.Status = STATUS_NOT_SUPPORTED;
+    IoCompleteRequest ( Irp, IO_NO_INCREMENT );
+    *completion_ptr = TRUE;
+    return STATUS_NOT_SUPPORTED;
+  }
 
-static
-irp__handler_decl (
-  sys_ctl
- )
+static NTSTATUS STDCALL sys_ctl(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   NTSTATUS status = Irp->IoStatus.Status;
   IoCompleteRequest ( Irp, IO_NO_INCREMENT );
@@ -123,10 +128,10 @@ irp__handler_decl (
 }
 
 /**
- * Create a disk PDO filled with the given disk parameters
+ * Create a disk PDO filled with the given disk parameters.
  *
- * @v dev_ptr           Populate PDO dev. ext. space from these details
- * @ret dev_obj_ptr     Points to the new PDO, or is NULL upon failure
+ * @v dev_ptr           Populate PDO dev. ext. space from these details.
+ * @ret dev_obj_ptr     Points to the new PDO, or is NULL upon failure.
  *
  * Returns a Physical Device Object pointer on success, NULL for failure.
  */
index 68329ad..5bd3839 100644 (file)
@@ -22,8 +22,7 @@
 /**
  * @file
  *
- * Disk PnP IRP handling
- *
+ * Disk PnP IRP handling.
  */
 
 #include <stdio.h>
 #include "bus.h"
 #include "debug.h"
 
-irp__handler_decl ( disk_pnp__query_id )
+NTSTATUS STDCALL disk_pnp__query_id(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   NTSTATUS status;
   PWCHAR string;
@@ -94,7 +99,13 @@ alloc_string:
   return status;
 }
 
-irp__handler_decl ( disk_pnp__query_dev_text )
+NTSTATUS STDCALL disk_pnp__query_dev_text(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   PWCHAR string;
   NTSTATUS status;
@@ -164,7 +175,13 @@ alloc_string:
   return status;
 }
 
-irp__handler_decl ( disk_pnp__query_dev_relations )
+NTSTATUS STDCALL disk_pnp__query_dev_relations(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   NTSTATUS status;
   PDEVICE_RELATIONS dev_relations;
@@ -202,7 +219,13 @@ ret_path:
 DEFINE_GUID ( GUID_BUS_TYPE_INTERNAL, 0x2530ea73L, 0x086b, 0x11d1, 0xa0, 0x9f,
              0x00, 0xc0, 0x4f, 0xc3, 0x40, 0xb1 );
 
-irp__handler_decl ( disk_pnp__query_bus_info )
+NTSTATUS STDCALL disk_pnp__query_bus_info(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   PPNP_BUS_INFORMATION pnp_bus_info;
   NTSTATUS status;
@@ -231,7 +254,13 @@ alloc_pnp_bus_info:
   return status;
 }
 
-irp__handler_decl ( disk_pnp__query_capabilities )
+NTSTATUS STDCALL disk_pnp__query_capabilities(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   PDEVICE_CAPABILITIES DeviceCapabilities =
     Stack->Parameters.DeviceCapabilities.Capabilities;
@@ -298,7 +327,13 @@ ret_path:
   return status;
 }
 
-irp__handler_decl ( disk_pnp__simple )
+NTSTATUS STDCALL disk_pnp__simple(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   NTSTATUS status;
   disk__type_ptr disk_ptr;
index ad8910f..06cc02c 100644 (file)
@@ -22,8 +22,7 @@
 /**
  * @file
  *
- * Disk SCSI IRP handling
- *
+ * Disk SCSI IRP handling.
  */
 
 #include <ntddk.h>
@@ -347,7 +346,13 @@ scsi_op (
   return STATUS_SUCCESS;
 }
 
-irp__handler_decl ( disk_scsi__dispatch )
+NTSTATUS STDCALL disk_scsi__dispatch(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   NTSTATUS status = STATUS_SUCCESS;
   disk__type_ptr disk_ptr;
index fa5d85a..fbb08a9 100644 (file)
@@ -20,8 +20,7 @@
 /**
  * @file
  *
- * File-backed disk specifics
- *
+ * File-backed disk specifics.
  */
 
 #include <stdio.h>
@@ -131,7 +130,13 @@ disk__pnp_id_decl (
     }
 }
 
-irp__handler_decl ( filedisk__attach )
+NTSTATUS STDCALL filedisk__attach(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
 {
   ANSI_STRING file_path1;
   winvblock__uint8_ptr buf = Irp->AssociatedIrp.SystemBuffer;
index 3b74501..3659cb7 100644 (file)
@@ -21,8 +21,7 @@
 /**
  * @file
  *
- * Handling IRPs
- *
+ * Handling IRPs.
  */
 
 #include <ntddk.h>
@@ -208,31 +207,37 @@ winvblock__lib_func NTSTATUS STDCALL (irp__process_with_table)(
   }
 
 /**
- * Mini IRP handling strategy
+ * Mini IRP handling strategy.
  *
  */
-irp__handler_decl ( irp__process )
-{
-  NTSTATUS status = STATUS_NOT_SUPPORTED;
-  handler_chain_ptr link;
-
-  link = ( handler_chain_ptr ) dev_ptr->irp_handler_chain;
-
-  while ( link != NULL )
-    {
-      status = irp__process_with_table(
-          DeviceObject,
-          Irp,
-          link->table,
-          link->size,
-          completion_ptr
-        );
-      if ( *completion_ptr )
-        break;
-      link = link->next;
-    }
-  return status;
-}
+NTSTATUS STDCALL irp__process(
+    IN PDEVICE_OBJECT DeviceObject,
+    IN PIRP Irp,
+    IN PIO_STACK_LOCATION Stack,
+    IN struct _device__type * dev_ptr,
+    OUT winvblock__bool_ptr completion_ptr
+  )
+  {
+    NTSTATUS status = STATUS_NOT_SUPPORTED;
+    handler_chain_ptr link;
+  
+    link = ( handler_chain_ptr ) dev_ptr->irp_handler_chain;
+  
+    while ( link != NULL )
+      {
+        status = irp__process_with_table(
+            DeviceObject,
+            Irp,
+            link->table,
+            link->size,
+            completion_ptr
+          );
+        if ( *completion_ptr )
+          break;
+        link = link->next;
+      }
+    return status;
+  }
 
 static void STDCALL (irp_thread)(IN void * (context)) {
     device__type * (dev) = context;