]> err.no Git - varnish/commitdiff
EOF detection in libevent is buggy ?? Add exit cmd.
authorphk <phk@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Tue, 11 Jul 2006 21:35:31 +0000 (21:35 +0000)
committerphk <phk@d4fa192b-c00b-0410-8231-f00ffab90ce4>
Tue, 11 Jul 2006 21:35:31 +0000 (21:35 +0000)
Pause after cli until we see "OK"

git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@447 d4fa192b-c00b-0410-8231-f00ffab90ce4

varnish-cache/bin/varnishtester/varnishtester.c

index bdab6821b1771256f946e98b55572d28d1ad78a5..78b5fe51e4000b9d56de2805465d55a2fdb0d59b 100644 (file)
@@ -218,6 +218,8 @@ rd_pipe2(struct bufferevent *bev, void *arg)
                printf("V: <<%s>>\n", p);
                if (!strcmp(p, "Child said <Ready>"))
                        Resume();
+               else if (!strcmp(p, "OK"))
+                       Resume();
        }
 }
 
@@ -305,6 +307,7 @@ cmd_cli(char **av)
        }
        cli_write(av[0]);
        cli_write("\n");
+       Pause();
 }
 
 /*--------------------------------------------------------------------*/
@@ -461,6 +464,18 @@ cmd_req(char **av)
 
 /*--------------------------------------------------------------------*/
 
+static void
+cmd_exit(char **av)
+{
+
+       (void)av;
+       cmd_close(NULL);
+       cmd_stop(NULL);
+       exit (0);
+}
+
+/*--------------------------------------------------------------------*/
+
 static struct bufferevent *e_cmd;
 static int run = 1;
 
@@ -500,6 +515,8 @@ rd_cmd(struct bufferevent *bev, void *arg)
                        cmd_close(av + 2);
                else if (!strcmp(av[1], "req"))
                        cmd_req(av + 2);
+               else if (!strcmp(av[1], "exit"))
+                       cmd_exit(av + 2);
                else {
                        fprintf(stderr, "Unknown command \"%s\"\n", av[1]);
                        exit (2);