[experimental-ims] 2144dc7 Use better criteria for determining if child CLI connection is hosed.

Geoff Simmons geoff at varnish-cache.org
Mon Jan 9 21:52:33 CET 2012


commit 2144dc7885a425926be4a74ecb89c5b38d062ac8
Author: Poul-Henning Kamp <phk at FreeBSD.org>
Date:   Sun Nov 13 22:02:44 2011 +0000

    Use better criteria for determining if child CLI connection is hosed.

diff --git a/bin/varnishd/mgt/mgt_cli.c b/bin/varnishd/mgt/mgt_cli.c
index 3a6f365..70e8557 100644
--- a/bin/varnishd/mgt/mgt_cli.c
+++ b/bin/varnishd/mgt/mgt_cli.c
@@ -171,7 +171,8 @@ mcf_askchild(struct cli *cli, const char * const *av, void *priv)
 		return;
 	}
 	VSB_delete(vsb);
-	(void)VCLI_ReadResult(cli_i, &u, &q, mgt_param.cli_timeout);
+	if (VCLI_ReadResult(cli_i, &u, &q, mgt_param.cli_timeout))
+		MGT_Child_Cli_Fail();
 	VCLI_SetResult(cli, u);
 	VCLI_Out(cli, "%s", q);
 	free(q);
@@ -220,11 +221,10 @@ mgt_cli_askchild(unsigned *status, char **resp, const char *fmt, ...) {
 		return (CLIS_COMMS);
 	}
 
-	(void)VCLI_ReadResult(cli_i, &u, resp, mgt_param.cli_timeout);
+	if (VCLI_ReadResult(cli_i, &u, resp, mgt_param.cli_timeout))
+		MGT_Child_Cli_Fail();
 	if (status != NULL)
 		*status = u;
-	if (u == CLIS_COMMS)
-		MGT_Child_Cli_Fail();
 	return (u == CLIS_OK ? 0 : u);
 }
 



More information about the varnish-commit mailing list