diff options
-rw-r--r-- | client/client.c | 9 | ||||
-rw-r--r-- | src/res-conn.c | 2 |
2 files changed, 10 insertions, 1 deletions
diff --git a/client/client.c b/client/client.c index 5cc9cfe..edcbac8 100644 --- a/client/client.c +++ b/client/client.c @@ -541,6 +541,7 @@ static void create_manager(void) resproto_set_handler(rconn, RESMSG_UNREGISTER, manager_receive_message); resproto_set_handler(rconn, RESMSG_GRANT , manager_receive_message); resproto_set_handler(rconn, RESMSG_ADVICE , manager_receive_message); + resproto_set_handler(rconn, RESMSG_RELEASE , manager_receive_message); connect_to_manager(rconn); } @@ -713,6 +714,14 @@ static void manager_receive_message(resmsg_t *msg, resset_t *rs, void *data) print_input(); break; + case RESMSG_RELEASE: + print_message("release request from manager"); + memset(&req, 0, sizeof(resmsg_t)); + req.possess.type = RESMSG_RELEASE; + manager_send_message(&req); + print_input(); + break; + default: if (config.verbose) { print_message("%s(): unexpected message type %d (%s)", diff --git a/src/res-conn.c b/src/res-conn.c index 46efe83..3ecbeb6 100644 --- a/src/res-conn.c +++ b/src/res-conn.c @@ -50,7 +50,7 @@ static int client_valid_message[RESMSG_MAX] = { [RESMSG_UNREGISTER] = VALID , [RESMSG_UPDATE ] = INVALID , [RESMSG_ACQUIRE ] = INVALID , - [RESMSG_RELEASE ] = INVALID , + [RESMSG_RELEASE ] = VALID , [RESMSG_GRANT ] = VALID , [RESMSG_ADVICE ] = VALID , [RESMSG_AUDIO ] = INVALID , |