Added handle_t type to server interface so that we can make handles
pointers later on.
Always use 0 to signal invalid handle in server requests.
diff --git a/server/handle.h b/server/handle.h
index d648dd7..18d5d2a 100644
--- a/server/handle.h
+++ b/server/handle.h
@@ -13,6 +13,7 @@
#include <stdlib.h>
#include "windef.h"
+#include "server.h"
struct process;
struct object_ops;
@@ -21,16 +22,16 @@
/* alloc_handle takes a void *obj for convenience, but you better make sure */
/* that the thing pointed to starts with a struct object... */
-extern int alloc_handle( struct process *process, void *obj,
- unsigned int access, int inherit );
-extern int close_handle( struct process *process, int handle, int *fd );
-extern struct object *get_handle_obj( struct process *process, int handle,
+extern handle_t alloc_handle( struct process *process, void *obj,
+ unsigned int access, int inherit );
+extern int close_handle( struct process *process, handle_t handle, int *fd );
+extern struct object *get_handle_obj( struct process *process, handle_t handle,
unsigned int access, const struct object_ops *ops );
-extern int get_handle_fd( struct process *process, int handle, unsigned int access );
-extern int duplicate_handle( struct process *src, int src_handle, struct process *dst,
- unsigned int access, int inherit, int options );
-extern int open_object( const WCHAR *name, size_t len, const struct object_ops *ops,
- unsigned int access, int inherit );
+extern int get_handle_fd( struct process *process, handle_t handle, unsigned int access );
+extern handle_t duplicate_handle( struct process *src, handle_t src_handle, struct process *dst,
+ unsigned int access, int inherit, int options );
+extern handle_t open_object( const WCHAR *name, size_t len, const struct object_ops *ops,
+ unsigned int access, int inherit );
extern struct object *alloc_handle_table( struct process *process, int count );
extern struct object *copy_handle_table( struct process *process, struct process *parent );
extern void close_global_handles(void);