server: Make the various async I/O parameters client_ptr_t instead of void pointers.
diff --git a/server/protocol.def b/server/protocol.def
index 444178b..83fc7b8 100644
--- a/server/protocol.def
+++ b/server/protocol.def
@@ -182,9 +182,9 @@
 {
     obj_handle_t    handle;        /* object to perform I/O on */
     obj_handle_t    event;         /* event to signal when done */
-    void           *callback;      /* client-side callback to call upon end of async */
-    void           *iosb;          /* I/O status block in client addr space */
-    void           *arg;           /* opaque user data to pass to callback */
+    client_ptr_t    callback;      /* client-side callback to call upon end of async */
+    client_ptr_t    iosb;          /* I/O status block in client addr space */
+    client_ptr_t    arg;           /* opaque user data to pass to callback */
     apc_param_t     cvalue;        /* completion value to use for completion events */
 } async_data_t;
 
@@ -288,7 +288,8 @@
     struct
     {
         enum apc_type    type;     /* APC_USER */
-        void (__stdcall *func)(unsigned long,unsigned long,unsigned long);
+        int              __pad;
+        client_ptr_t     func;     /* void (__stdcall *func)(ULONG_PTR,ULONG_PTR,ULONG_PTR); */
         apc_param_t      args[3];  /* arguments for user function */
     } user;
     struct
@@ -302,10 +303,10 @@
     struct
     {
         enum apc_type    type;     /* APC_ASYNC_IO */
-        unsigned int   (*func)(void*, void*, unsigned int, void **);
-        void            *user;     /* user pointer */
-        void            *sb;       /* status block */
         unsigned int     status;   /* I/O status */
+        client_ptr_t     func;     /* unsigned int (*func)(void*, void*, unsigned int, void **); */
+        client_ptr_t     user;     /* user pointer */
+        client_ptr_t     sb;       /* status block */
     } async_io;
     struct
     {
@@ -392,7 +393,7 @@
     {
         enum apc_type    type;      /* APC_ASYNC_IO */
         unsigned int     status;    /* new status of async operation */
-        void            *apc;       /* user APC to call */
+        client_ptr_t     apc;       /* user APC to call */
         unsigned int     total;     /* bytes transferred */
     } async_io;
     struct
@@ -2015,7 +2016,7 @@
 /* Retrieve results of an async ioctl */
 @REQ(get_ioctl_result)
     obj_handle_t   handle;        /* handle to the device */
-    void*          user_arg;      /* user arg used to identify the request */
+    client_ptr_t   user_arg;      /* user arg used to identify the request */
 @REPLY
     VARARG(out_data,bytes);       /* ioctl output data */
 @END