httppeer: don't send empty Vary request header
As part of writing test-http-bad-server.t, I noticed that some
requests include an empty Vary HTTP request header.
The Vary HTTP request header indicates which headers should be taken
into account when determining if a cached response can be used. It also
accepts the special value of "*".
The previous code unconditionally added a Vary header. This could lead
to an empty header value. While I don't believe this violates the HTTP
spec, this is weird and just wastes bytes. So this patch changes
behavior to only send a Vary header when it has a value.
Some low-level wire protocol byte reporting tests changed. In some
cases, the exact point of data termination changed. However, the
behavior being tested - that clients react when the connection is
closed in the middle of an HTTP request line or header - remains
unchanged.
body {
background: black url('background.png') repeat-x;
}
.container {
padding-left: 0;
padding-right: 150px;
}
.main {
padding: 2em;
border-right: 15px solid black;
border-bottom: 15px solid black;
}
.menu {
background: #999;
padding: 10px;
width: 75px;
position: fixed;
top: 27px;
left: auto;
right: 27px;
}
.menu ul {
border-left: 0;
}
.menu li.active {
font-weight: normal;
background: black;
color: white;
}
.menu li.active a {
color: white;
}
h3 {
margin-top: -.7em;
}
div.description {
border-left-width: 3px;
}