summaryrefslogtreecommitdiff
path: root/switchctl.c
diff options
context:
space:
mode:
Diffstat (limited to 'switchctl.c')
-rw-r--r--switchctl.c20
1 files changed, 16 insertions, 4 deletions
diff --git a/switchctl.c b/switchctl.c
index adb0682..ba81c46 100644
--- a/switchctl.c
+++ b/switchctl.c
@@ -409,14 +409,26 @@ void process_cmd_listen(const char* param, int fd, client_t* client_lst)
client_t* listener = client_find(client_lst, fd);
if(listener) {
if(!param) {
- listener->status_listener = 1;
listener->request_listener = 1;
+ listener->status_listener = 1;
+ listener->gpi_listener = 1;
+ listener->oc_listener = 1;
+ listener->relay_listener = 1;
+ listener->silence_listener = 1;
}
else {
- if(!strncmp(param, "status", 6))
- listener->status_listener = 1;
- else if(!strncmp(param, "request", 7))
+ if(!strncmp(param, "request", 7))
listener->request_listener = 1;
+ else if(!strncmp(param, "status", 6))
+ listener->status_listener = 1;
+ else if(!strncmp(param, "gpi", 3))
+ listener->gpi_listener = 1;
+ else if(!strncmp(param, "oc", 2))
+ listener->oc_listener = 1;
+ else if(!strncmp(param, "relay", 5))
+ listener->relay_listener = 1;
+ else if(!strncmp(param, "silence", 7))
+ listener->silence_listener = 1;
else if(!strncmp(param, "none", 4)) {
listener->request_listener = 0;
listener->status_listener = 0;