r3722 - branches/2.0/varnish-cache/bin/varnishtest

tfheen at projects.linpro.no tfheen at projects.linpro.no
Tue Feb 10 15:47:37 CET 2009


Author: tfheen
Date: 2009-02-10 15:47:36 +0100 (Tue, 10 Feb 2009)
New Revision: 3722

Modified:
   branches/2.0/varnish-cache/bin/varnishtest/vtc_http.c
Log:
Merge r3540:

Don't append a CRNL to the body.

And add separate rxhdrs and rxbody primitives.

Submitted by: Yonatan Broza & Dmitry Rubinstein



Modified: branches/2.0/varnish-cache/bin/varnishtest/vtc_http.c
===================================================================
--- branches/2.0/varnish-cache/bin/varnishtest/vtc_http.c	2009-02-10 14:43:31 UTC (rev 3721)
+++ branches/2.0/varnish-cache/bin/varnishtest/vtc_http.c	2009-02-10 14:47:36 UTC (rev 3722)
@@ -531,10 +531,8 @@
 	if (body != NULL)
 		vsb_printf(hp->vsb, "Content-Length: %d%s", strlen(body), nl);
 	vsb_cat(hp->vsb, nl);
-	if (body != NULL) {
+	if (body != NULL)
 		vsb_cat(hp->vsb, body);
-		vsb_cat(hp->vsb, nl);
-	}
 	http_write(hp, 4, "txresp");
 }
 
@@ -565,6 +563,48 @@
 	vtc_log(hp->vl, 4, "bodylen = %s", hp->bodylen);
 }
 
+static void
+cmd_http_rxhdrs(CMD_ARGS)
+{
+	struct http *hp;
+
+	(void)cmd;
+	(void)vl;
+	CAST_OBJ_NOTNULL(hp, priv, HTTP_MAGIC);
+	AZ(hp->client);
+	assert(!strcmp(av[0], "rxhdrs"));
+	av++;
+
+	for(; *av != NULL; av++) {
+		fprintf(stderr, "Unknown http rxreq spec: %s\n", *av);
+		exit (1);
+	}
+	vtc_log(hp->vl, 3, "rxhdrs");
+	http_rxhdr(hp);
+	http_splitheader(hp, 1);
+}
+
+static void
+cmd_http_rxbody(CMD_ARGS)
+{
+	struct http *hp;
+
+	(void)cmd;
+	(void)vl;
+	CAST_OBJ_NOTNULL(hp, priv, HTTP_MAGIC);
+	AZ(hp->client);
+	assert(!strcmp(av[0], "rxbody"));
+	av++;
+
+	for(; *av != NULL; av++) {
+		fprintf(stderr, "Unknown http rxreq spec: %s\n", *av);
+		exit (1);
+	}
+	vtc_log(hp->vl, 3, "rxbody");
+	http_swallow_body(hp, hp->req, 0);
+	vtc_log(hp->vl, 4, "bodylen = %s", hp->bodylen);
+}
+
 /**********************************************************************
  * Transmit a request
  */
@@ -698,7 +738,11 @@
 static struct cmds http_cmds[] = {
 	{ "timeout",	cmd_http_timeout },
 	{ "txreq",	cmd_http_txreq },
+
 	{ "rxreq",	cmd_http_rxreq },
+	{ "rxhdrs",	cmd_http_rxhdrs },
+	{ "rxbody",	cmd_http_rxbody },
+
 	{ "txresp",	cmd_http_txresp },
 	{ "rxresp",	cmd_http_rxresp },
 	{ "expect",	cmd_http_expect },



More information about the varnish-commit mailing list