From 43e0e3997870e39b78b87d3050f260571e5a7de9 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Sun, 26 Jul 2009 18:16:43 +0200 Subject: [PATCH] [MINOR] print usage on the stats sockets upon invalid commands When issuing commands on the unix socket, there's no way to know if the result is empty or if the command is wrong. This patch makes invalid command return a help message. --- src/proto_uxst.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/proto_uxst.c b/src/proto_uxst.c index a450217f36..a053992277 100644 --- a/src/proto_uxst.c +++ b/src/proto_uxst.c @@ -78,6 +78,18 @@ static struct protocol proto_unix = { .nb_listeners = 0, }; +const char unix_sock_usage_msg[] = + "Unknown command. Please enter one of the following commands only :\n" + " show info : report information about the running process\n" + " show stat : report counters for each proxy and server\n" + " show errors : report last request and response errors for each proxy\n" + " show sess : report the list of current sessions\n" + "\n"; + +const struct chunk unix_sock_usage = { + .str = (char *)&unix_sock_usage_msg, + .len = sizeof(unix_sock_usage_msg)-1 +}; /******************************** * 1) low-level socket functions @@ -666,7 +678,7 @@ int uxst_req_analyser_stats(struct session *s, struct buffer *req, int an_bit) *p = '\0'; if (!unix_sock_parse_request(s, line)) { /* invalid request */ - buffer_shutw_now(s->rep); + stream_int_retnclose(s->req->prod, &unix_sock_usage); s->ana_state = 0; req->analysers = 0; return 0; -- 2.47.2