[PATCH v3 5/6] server: Ran tools/make_requests after adding device notification verbs

Micah N Gorrell mgorrell at codeweavers.com
Sun May 19 10:38:17 CDT 2019


Signed-off-by: Micah N Gorrell <mgorrell at codeweavers.com>
---
 include/wine/server_protocol.h | 53 +++++++++++++++++++++++++++++++++-
 server/request.h               | 15 ++++++++++
 server/trace.c                 | 35 ++++++++++++++++++++++
 3 files changed, 102 insertions(+), 1 deletion(-)

diff --git a/include/wine/server_protocol.h b/include/wine/server_protocol.h
index a45d092deb..cbee9e36c5 100644
--- a/include/wine/server_protocol.h
+++ b/include/wine/server_protocol.h
@@ -5340,6 +5340,48 @@ struct get_kernel_object_handle_reply
 
 
 
+struct register_device_notification_request
+{
+    struct request_header __header;
+    user_handle_t  recipient;
+};
+struct register_device_notification_reply
+{
+    struct reply_header __header;
+    user_handle_t  handle;
+    char __pad_12[4];
+};
+
+
+
+struct unregister_device_notification_request
+{
+    struct request_header __header;
+    user_handle_t  notification;
+};
+struct unregister_device_notification_reply
+{
+    struct reply_header __header;
+};
+
+
+
+struct get_device_notifications_request
+{
+    struct request_header __header;
+    char __pad_12[4];
+};
+struct get_device_notifications_reply
+{
+    struct reply_header __header;
+    int            count;
+    /* VARARG(handles,user_handles); */
+    char __pad_12[4];
+};
+
+
+
+
 struct make_process_system_request
 {
     struct request_header __header;
@@ -6055,6 +6097,9 @@ enum request
     REQ_grab_kernel_object,
     REQ_release_kernel_object,
     REQ_get_kernel_object_handle,
+    REQ_register_device_notification,
+    REQ_unregister_device_notification,
+    REQ_get_device_notifications,
     REQ_make_process_system,
     REQ_get_token_statistics,
     REQ_create_completion,
@@ -6360,6 +6405,9 @@ union generic_request
     struct grab_kernel_object_request grab_kernel_object_request;
     struct release_kernel_object_request release_kernel_object_request;
     struct get_kernel_object_handle_request get_kernel_object_handle_request;
+    struct register_device_notification_request register_device_notification_request;
+    struct unregister_device_notification_request unregister_device_notification_request;
+    struct get_device_notifications_request get_device_notifications_request;
     struct make_process_system_request make_process_system_request;
     struct get_token_statistics_request get_token_statistics_request;
     struct create_completion_request create_completion_request;
@@ -6663,6 +6711,9 @@ union generic_reply
     struct grab_kernel_object_reply grab_kernel_object_reply;
     struct release_kernel_object_reply release_kernel_object_reply;
     struct get_kernel_object_handle_reply get_kernel_object_handle_reply;
+    struct register_device_notification_reply register_device_notification_reply;
+    struct unregister_device_notification_reply unregister_device_notification_reply;
+    struct get_device_notifications_reply get_device_notifications_reply;
     struct make_process_system_reply make_process_system_reply;
     struct get_token_statistics_reply get_token_statistics_reply;
     struct create_completion_reply create_completion_reply;
@@ -6694,6 +6745,6 @@ union generic_reply
     struct resume_process_reply resume_process_reply;
 };
 
-#define SERVER_PROTOCOL_VERSION 583
+#define SERVER_PROTOCOL_VERSION 585
 
 #endif /* __WINE_WINE_SERVER_PROTOCOL_H */
diff --git a/server/request.h b/server/request.h
index 07918dff3f..6724789808 100644
--- a/server/request.h
+++ b/server/request.h
@@ -381,6 +381,9 @@ DECL_HANDLER(set_kernel_object_ptr);
 DECL_HANDLER(grab_kernel_object);
 DECL_HANDLER(release_kernel_object);
 DECL_HANDLER(get_kernel_object_handle);
+DECL_HANDLER(register_device_notification);
+DECL_HANDLER(unregister_device_notification);
+DECL_HANDLER(get_device_notifications);
 DECL_HANDLER(make_process_system);
 DECL_HANDLER(get_token_statistics);
 DECL_HANDLER(create_completion);
@@ -685,6 +688,9 @@ static const req_handler req_handlers[REQ_NB_REQUESTS] =
     (req_handler)req_grab_kernel_object,
     (req_handler)req_release_kernel_object,
     (req_handler)req_get_kernel_object_handle,
+    (req_handler)req_register_device_notification,
+    (req_handler)req_unregister_device_notification,
+    (req_handler)req_get_device_notifications,
     (req_handler)req_make_process_system,
     (req_handler)req_get_token_statistics,
     (req_handler)req_create_completion,
@@ -2315,6 +2321,15 @@ C_ASSERT( FIELD_OFFSET(struct get_kernel_object_handle_request, access) == 24 );
 C_ASSERT( sizeof(struct get_kernel_object_handle_request) == 32 );
 C_ASSERT( FIELD_OFFSET(struct get_kernel_object_handle_reply, handle) == 8 );
 C_ASSERT( sizeof(struct get_kernel_object_handle_reply) == 16 );
+C_ASSERT( FIELD_OFFSET(struct register_device_notification_request, recipient) == 12 );
+C_ASSERT( sizeof(struct register_device_notification_request) == 16 );
+C_ASSERT( FIELD_OFFSET(struct register_device_notification_reply, handle) == 8 );
+C_ASSERT( sizeof(struct register_device_notification_reply) == 16 );
+C_ASSERT( FIELD_OFFSET(struct unregister_device_notification_request, notification) == 12 );
+C_ASSERT( sizeof(struct unregister_device_notification_request) == 16 );
+C_ASSERT( sizeof(struct get_device_notifications_request) == 16 );
+C_ASSERT( FIELD_OFFSET(struct get_device_notifications_reply, count) == 8 );
+C_ASSERT( sizeof(struct get_device_notifications_reply) == 16 );
 C_ASSERT( sizeof(struct make_process_system_request) == 16 );
 C_ASSERT( FIELD_OFFSET(struct make_process_system_reply, event) == 8 );
 C_ASSERT( sizeof(struct make_process_system_reply) == 16 );
diff --git a/server/trace.c b/server/trace.c
index 28bf3dd7ac..a90ddf6551 100644
--- a/server/trace.c
+++ b/server/trace.c
@@ -4336,6 +4336,31 @@ static void dump_get_kernel_object_handle_reply( const struct get_kernel_object_
     fprintf( stderr, " handle=%04x", req->handle );
 }
 
+static void dump_register_device_notification_request( const struct register_device_notification_request *req )
+{
+    fprintf( stderr, " recipient=%08x", req->recipient );
+}
+
+static void dump_register_device_notification_reply( const struct register_device_notification_reply *req )
+{
+    fprintf( stderr, " handle=%08x", req->handle );
+}
+
+static void dump_unregister_device_notification_request( const struct unregister_device_notification_request *req )
+{
+    fprintf( stderr, " notification=%08x", req->notification );
+}
+
+static void dump_get_device_notifications_request( const struct get_device_notifications_request *req )
+{
+}
+
+static void dump_get_device_notifications_reply( const struct get_device_notifications_reply *req )
+{
+    fprintf( stderr, " count=%d", req->count );
+    dump_varargs_user_handles( ", handles=", cur_size );
+}
+
 static void dump_make_process_system_request( const struct make_process_system_request *req )
 {
 }
@@ -4864,6 +4889,9 @@ static const dump_func req_dumpers[REQ_NB_REQUESTS] = {
     (dump_func)dump_grab_kernel_object_request,
     (dump_func)dump_release_kernel_object_request,
     (dump_func)dump_get_kernel_object_handle_request,
+    (dump_func)dump_register_device_notification_request,
+    (dump_func)dump_unregister_device_notification_request,
+    (dump_func)dump_get_device_notifications_request,
     (dump_func)dump_make_process_system_request,
     (dump_func)dump_get_token_statistics_request,
     (dump_func)dump_create_completion_request,
@@ -5165,6 +5193,9 @@ static const dump_func reply_dumpers[REQ_NB_REQUESTS] = {
     NULL,
     NULL,
     (dump_func)dump_get_kernel_object_handle_reply,
+    (dump_func)dump_register_device_notification_reply,
+    NULL,
+    (dump_func)dump_get_device_notifications_reply,
     (dump_func)dump_make_process_system_reply,
     (dump_func)dump_get_token_statistics_reply,
     (dump_func)dump_create_completion_reply,
@@ -5466,6 +5497,9 @@ static const char * const req_names[REQ_NB_REQUESTS] = {
     "grab_kernel_object",
     "release_kernel_object",
     "get_kernel_object_handle",
+    "register_device_notification",
+    "unregister_device_notification",
+    "get_device_notifications",
     "make_process_system",
     "get_token_statistics",
     "create_completion",
@@ -5535,6 +5569,7 @@ static const struct
     { "ERROR_HOTKEY_ALREADY_REGISTERED", 0xc0010000 | ERROR_HOTKEY_ALREADY_REGISTERED },
     { "ERROR_HOTKEY_NOT_REGISTERED", 0xc0010000 | ERROR_HOTKEY_NOT_REGISTERED },
     { "ERROR_INVALID_CURSOR_HANDLE", 0xc0010000 | ERROR_INVALID_CURSOR_HANDLE },
+    { "ERROR_INVALID_HANDLE",        0xc0010000 | ERROR_INVALID_HANDLE },
     { "ERROR_INVALID_INDEX",         0xc0010000 | ERROR_INVALID_INDEX },
     { "ERROR_INVALID_WINDOW_HANDLE", 0xc0010000 | ERROR_INVALID_WINDOW_HANDLE },
     { "ERROR_NO_MORE_USER_HANDLES",  0xc0010000 | ERROR_NO_MORE_USER_HANDLES },
-- 
2.21.0




More information about the wine-devel mailing list