]> git.ipfire.org Git - thirdparty/haproxy.git/commitdiff
[MINOR] print usage on the stats sockets upon invalid commands
authorWilly Tarreau <w@1wt.eu>
Sun, 26 Jul 2009 16:16:43 +0000 (18:16 +0200)
committerWilly Tarreau <w@1wt.eu>
Sun, 26 Jul 2009 16:18:59 +0000 (18:18 +0200)
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.
(cherry picked from commit 43e0e3997870e39b78b87d3050f260571e5a7de9)

src/proto_uxst.c

index 8af3d5a63956a9016c445459a2e7ba09504f64a1..b4685d59676acdcd3d6d5f9756135e7a2af3091d 100644 (file)
@@ -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)
                        *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;