Implemented NtSignalAndWaitForSingleObject.

diff --git a/server/handle.c b/server/handle.c
index ae68a7a..347960d 100644
--- a/server/handle.c
+++ b/server/handle.c
@@ -106,6 +106,7 @@
     NULL,                            /* remove_queue */
     NULL,                            /* signaled */
     NULL,                            /* satisfied */
+    no_signal,                       /* signal */
     no_get_fd,                       /* get_fd */
     handle_table_destroy             /* destroy */
 };
@@ -385,6 +386,16 @@
     return grab_object( obj );
 }
 
+/* retrieve the access rights of a given handle */
+unsigned int get_handle_access( struct process *process, obj_handle_t handle )
+{
+    struct handle_entry *entry;
+
+    if (get_magic_handle( handle )) return ~0U;  /* magic handles have all access rights */
+    if (!(entry = get_handle( process, handle ))) return 0;
+    return entry->access;
+}
+
 /* retrieve the cached fd for a given handle */
 int get_handle_unix_fd( struct process *process, obj_handle_t handle, unsigned int access )
 {