case MORE_DATA_EXPECTED:
case REQUEST_CANCELED: /* ??? */
default:
- bufferevent_enable(evcon->bufev, EV_READ);
break;
}
}
evhttp_connection_done(evcon);
return;
}
-
- /* Read more! */
- bufferevent_enable(evcon->bufev, EV_READ);
}
#define get_deferred_queue(evcon) \
return;
}
- /* Disable reading for now */
- bufferevent_disable(evcon->bufev, EV_READ);
-
/* Callback can shut down connection with negative return value */
if (req->header_cb != NULL) {
if ((*req->header_cb)(req, req->cb_arg) < 0) {
void
evhttp_start_read_(struct evhttp_connection *evcon)
{
- /* Set up an event to read the headers */
bufferevent_disable(evcon->bufev, EV_WRITE);
bufferevent_enable(evcon->bufev, EV_READ);
+
evcon->state = EVCON_READING_FIRSTLINE;
/* Reset the bufferevent callbacks */
bufferevent_setcb(evcon->bufev,
evcon->fd = fd;
+ bufferevent_enable(evcon->bufev, EV_READ);
+ bufferevent_disable(evcon->bufev, EV_WRITE);
bufferevent_setfd(evcon->bufev, fd);
return (evcon);