aboutsummaryrefslogtreecommitdiffstats
path: root/src/mds-server
diff options
context:
space:
mode:
authorMattias Andrée <maandree@operamail.com>2014-05-19 21:40:23 +0200
committerMattias Andrée <maandree@operamail.com>2014-05-19 21:40:26 +0200
commitb4cd5273bccc8ae09da2a60a11a7c9946fc2d9db (patch)
tree6bb4576534aa9c1aa014e63bef6191cb08bcf0a8 /src/mds-server
parentm + store master thread (diff)
downloadmds-b4cd5273bccc8ae09da2a60a11a7c9946fc2d9db.tar.gz
mds-b4cd5273bccc8ae09da2a60a11a7c9946fc2d9db.tar.bz2
mds-b4cd5273bccc8ae09da2a60a11a7c9946fc2d9db.tar.xz
add broadcast support
Signed-off-by: Mattias Andrée <maandree@operamail.com>
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));