Added input queue to server-side console object,
read/write_console_input requests, and use them for
Read/WriteConsoleInput.
diff --git a/server/request.c b/server/request.c
index bfdcae5..b4b071a 100644
--- a/server/request.c
+++ b/server/request.c
@@ -15,6 +15,7 @@
#include "winerror.h"
#include "winnt.h"
#include "winbase.h"
+#include "wincon.h"
#define WANT_REQUEST_HANDLERS
#include "server.h"
#include "server/request.h"
@@ -677,6 +678,25 @@
send_reply( current, -1, 0 );
}
+/* add input records to a console input queue */
+DECL_HANDLER(write_console_input)
+{
+ struct write_console_input_reply reply;
+ INPUT_RECORD *records = (INPUT_RECORD *)data;
+
+ if (len != req->count * sizeof(INPUT_RECORD))
+ fatal_protocol_error( "write_console_input: bad length %d for %d records\n",
+ len, req->count );
+ reply.written = write_console_input( req->handle, req->count, records );
+ send_reply( current, -1, 1, &reply, sizeof(reply) );
+}
+
+/* fetch input records from a console input queue */
+DECL_HANDLER(read_console_input)
+{
+ read_console_input( req->handle, req->count, req->flush );
+}
+
/* create a change notification */
DECL_HANDLER(create_change_notification)
{