r3494 - trunk/varnish-cache/lib/libvarnish
phk at projects.linpro.no
phk at projects.linpro.no
Sun Dec 21 19:40:10 CET 2008
Author: phk
Date: 2008-12-21 19:40:10 +0100 (Sun, 21 Dec 2008)
New Revision: 3494
Modified:
trunk/varnish-cache/lib/libvarnish/cli_common.c
Log:
Set the status to CLIS_COMMS if we fal to read the body.
Modified: trunk/varnish-cache/lib/libvarnish/cli_common.c
===================================================================
--- trunk/varnish-cache/lib/libvarnish/cli_common.c 2008-12-21 18:35:47 UTC (rev 3493)
+++ trunk/varnish-cache/lib/libvarnish/cli_common.c 2008-12-21 18:40:10 UTC (rev 3494)
@@ -123,7 +123,7 @@
if (cli != NULL)
cli->result = res; /*lint !e64 type mismatch */
else
- printf("CLI result = %d\n", res);
+ printf("CLI result = %u\n", res);
}
void
@@ -192,15 +192,16 @@
{
char res[CLI_LINE0_LEN]; /* For NUL */
int i, j;
- unsigned u, v;
+ unsigned u, v, s;
char *p;
+ if (status == NULL)
+ status = &s;
if (ptr != NULL)
*ptr = NULL;
i = read_tmo(fd, res, CLI_LINE0_LEN, tmo);
if (i != CLI_LINE0_LEN) {
- if (status != NULL)
- *status = CLIS_COMMS;
+ *status = CLIS_COMMS;
if (ptr != NULL)
*ptr = strdup("CLI communication error");
return (1);
@@ -211,12 +212,12 @@
res[CLI_LINE0_LEN - 1] = '\0';
j = sscanf(res, "%u %u\n", &u, &v);
assert(j == 2);
- if (status != NULL)
- *status = u;
+ *status = u;
p = malloc(v + 1);
assert(p != NULL);
i = read_tmo(fd, p, v + 1, tmo);
if (i < 0) {
+ *status = CLIS_COMMS;
free(p);
return (i);
}
More information about the varnish-commit
mailing list