From: phk Date: Thu, 26 Jun 2008 22:27:37 +0000 (+0000) Subject: Use shutdown for both directions, TCP works correctly. X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=26707d976db5527c4170d6dedd7b8189824400a1;p=varnish Use shutdown for both directions, TCP works correctly. git-svn-id: svn+ssh://projects.linpro.no/svn/varnish/trunk@2841 d4fa192b-c00b-0410-8231-f00ffab90ce4 --- diff --git a/varnish-cache/bin/varnishtest/tests/b00007.vtc b/varnish-cache/bin/varnishtest/tests/b00007.vtc index c0c00add..559b558d 100644 --- a/varnish-cache/bin/varnishtest/tests/b00007.vtc +++ b/varnish-cache/bin/varnishtest/tests/b00007.vtc @@ -37,7 +37,3 @@ client c1 { } client c1 -run - -server s1 -wait - -varnish v1 -stop diff --git a/varnish-cache/bin/varnishtest/vtc_server.c b/varnish-cache/bin/varnishtest/vtc_server.c index bb62570b..ee488660 100644 --- a/varnish-cache/bin/varnishtest/vtc_server.c +++ b/varnish-cache/bin/varnishtest/vtc_server.c @@ -80,8 +80,6 @@ server_thread(void *priv) struct sockaddr_storage addr_s; struct sockaddr *addr; socklen_t l; - char c; - CAST_OBJ_NOTNULL(s, priv, SERVER_MAGIC); assert(s->sock >= 0); @@ -99,10 +97,7 @@ server_thread(void *priv) http_process(vl, s->spec, fd, 0); vtc_log(vl, 3, "shutting fd %d", fd); AZ(shutdown(fd, SHUT_WR)); - while (1 == read(fd, &c, 1)) - continue; - vtc_log(vl, 3, "closing fd %d", fd); - AZ(close(fd)); + AZ(shutdown(fd, SHUT_RD)); } vtc_log(vl, 2, "Ending"); return (NULL); @@ -176,7 +171,7 @@ server_wait(struct server *s) vtc_log(s->vl, 2, "Waiting for server"); AZ(pthread_join(s->tp, &res)); if (res != NULL) { - vtc_log(s->vl, 0, "Server returned \"%s\"", + vtc_log(s->vl, 0, "Server returned \"%p\"", (char *)res); exit (1); }