aboutsummaryrefslogtreecommitdiffstats
path: root/src/mds-server
diff options
context:
space:
mode:
Diffstat (limited to 'src/mds-server')
-rw-r--r--src/mds-server/mds-server.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/mds-server/mds-server.c b/src/mds-server/mds-server.c
index 55db770..3179ee7 100644
--- a/src/mds-server/mds-server.c
+++ b/src/mds-server/mds-server.c
@@ -259,13 +259,19 @@ void* slave_loop(void* data)
size_t information_address = fd_table_get(&client_map, (size_t)socket_fd);
client_t* information = (client_t*)(void*)information_address;
char* msgbuf = NULL;
+ char buf[] = "To: all";
size_t n;
int r;
- /* Intiailsie the client. */
- if (information == NULL)
- fail_if ((information = initialise_client(socket_fd)) == NULL);
+ if (information == NULL) /* Did not re-exec. */
+ {
+ /* Initialise the client. */
+ fail_if ((information = initialise_client(socket_fd)) == NULL);
+
+ /* Register client to receive broadcasts. */
+ add_intercept_condition(information, buf, 0, 0, 0);
+ }
/* Store slave thread and create mutexes and conditions. */
fail_if (client_initialise_threading(information));