1.1 --- a/libipc/include/ipc/server.h Thu Mar 10 23:23:07 2022 +0100
1.2 +++ b/libipc/include/ipc/server.h Fri Mar 11 22:09:09 2022 +0100
1.3 @@ -1,7 +1,7 @@
1.4 /*
1.5 * Server binding/registration.
1.6 *
1.7 - * Copyright (C) 2018, 2019, 2020, 2021 Paul Boddie <paul@boddie.org.uk>
1.8 + * Copyright (C) 2018, 2019, 2020, 2021, 2022 Paul Boddie <paul@boddie.org.uk>
1.9 *
1.10 * This program is free software; you can redistribute it and/or
1.11 * modify it under the terms of the GNU General Public License as
1.12 @@ -27,12 +27,6 @@
1.13
1.14 EXTERN_C_BEGIN
1.15
1.16 -/* A convenience macro for invoking the server mainloop. */
1.17 -
1.18 -#define ipc_server_loop_for(TYPE, POINTER) \
1.19 - ipc_server_loop(TYPE##_expected_items, (TYPE *) POINTER, \
1.20 - (ipc_server_handler_type) handle_##TYPE)
1.21 -
1.22 /* A handler function type. */
1.23
1.24 typedef void (*ipc_server_handler_type)(ipc_message_t *, void *);
1.25 @@ -113,13 +107,12 @@
1.26
1.27 /* Handle incoming messages for a server. */
1.28
1.29 -long ipc_server_loop(int expected_items, void *obj,
1.30 - ipc_server_handler_type handler);
1.31 +long ipc_server_loop(int expected_items, ipc_server_config_type *config);
1.32
1.33 /* Handle incoming messages and IRQ notifications for a server. */
1.34
1.35 -long ipc_server_managed_loop(int expected_items, void *obj, l4_cap_idx_t irq,
1.36 - ipc_server_handler_type handler);
1.37 +long ipc_server_managed_loop(int expected_items, ipc_server_config_type *config,
1.38 + l4_cap_idx_t irq);
1.39
1.40 /* A pthread-compatible mainloop initiation function. */
1.41