struct charbuf inbuf, outbuf;
struct hthead *req, *resp;
off_t dlen, sent;
struct charbuf inbuf, outbuf;
struct hthead *req, *resp;
off_t dlen, sent;
- /* We strip off the leading slash from the rest string, so
- * that multiplexers can parse coherently. */
+ /* We strip off the leading slash and any param string from
+ * the rest string, so that multiplexers can parse
+ * coherently. */
headappheader(req, "X-Ash-Address", inet_ntop(AF_INET6, &((struct sockaddr_in6 *)&name)->sin6_addr, nmbuf, sizeof(nmbuf)));
headappheader(req, "X-Ash-Port", sprintf3("%i", ntohs(((struct sockaddr_in6 *)&name)->sin6_port)));
}
headappheader(req, "X-Ash-Address", inet_ntop(AF_INET6, &((struct sockaddr_in6 *)&name)->sin6_addr, nmbuf, sizeof(nmbuf)));
headappheader(req, "X-Ash-Port", sprintf3("%i", ntohs(((struct sockaddr_in6 *)&name)->sin6_port)));
}
hd = memcpy(smalloc(headoff + 1), outbuf.b, headoff);
hd[headoff] = 0;
if((resp = parserawresp(hd)) == NULL)
hd = memcpy(smalloc(headoff + 1), outbuf.b, headoff);
hd[headoff] = 0;
if((resp = parserawresp(hd)) == NULL)