Commit Diff


commit - e3cf64a867178ca2f7275710bd431ea3892f842c
commit + 98cba69edd2a59f4adc1f73880f12bb882b30fa7
blob - 6d8e0e4e3262ab70488c88ff0cdbc9e1f647b5a8
blob + 4416c223e3f356cb6967e817bec1332f714720b5
--- net.c
+++ net.c
@@ -608,6 +608,12 @@ net_error(struct bufferevent *bev, short error, void *
 	}
 
 	if (error & EVBUFFER_EOF) {
+		/* EOF and no header */
+		if (!req->done_header) {
+			close_with_err(req, "protocol error");
+			return;
+		}
+
 		src = EVBUFFER_INPUT(req->bev);
 		if (EVBUFFER_LENGTH(src) != 0)
 			net_send_ui(IMSG_BUF, req->id, EVBUFFER_DATA(src),