From b73bfb2db14c289e9f146b5c85180aaccaa3bb3a Mon Sep 17 00:00:00 2001 From: Gregory Gauthier Date: Thu, 26 Mar 2026 14:18:04 +0000 Subject: [PATCH] fix ansi client and add unsub to server --- src/c90/metric_server_fork_sub.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/c90/metric_server_fork_sub.c b/src/c90/metric_server_fork_sub.c index 52b1ad6..6d98ffd 100644 --- a/src/c90/metric_server_fork_sub.c +++ b/src/c90/metric_server_fork_sub.c @@ -21,8 +21,8 @@ #define MSG_METRIC_RESP 0x04 #define MSG_SUBSCRIBE 0x05 #define MSG_PUSH 0x06 +#define MSG_UNSUB 0x07 #define MSG_ERROR 0xFF - #define HEADER_SIZE 3 static double get_metric(const char *name) @@ -151,6 +151,10 @@ static void handle_client(int client_sock, struct sockaddr_in *addr) have_subscription = 1; printf(" -> SUBSCRIBE '%s' every %u ms from %s\n", subscribed_metric, interval_ms, client_ip); } + else if (type == MSG_UNSUB) { + have_subscription = 0; + printf(" <- UNSUB from %s\n", client_ip); + } else { const char *err = "Unknown message type"; send_message(client_sock, MSG_ERROR, err, strlen(err));