diff options
Diffstat (limited to 'http.c')
-rw-r--r-- | http.c | 13 |
1 files changed, 9 insertions, 4 deletions
@@ -205,7 +205,7 @@ static enum mog_next http_run(struct mog_fd *mfd, struct mog_rbuf *rbuf, } else { /* pipelined request */ if (buf_len) - TRACE(CMOGSTORED_HTTP_REQ_BEGIN(true)); + TRACE(CMOGSTORED_HTTP_REQ_BEGIN(mfd->fd, true)); http_defer_rbuf(http, rbuf, buf_len); mog_http_reset(mfd); @@ -219,7 +219,7 @@ http_client_died(struct mog_fd *mfd, size_t buf_len, int save_err) struct mog_ni ni; /* TODO: support nameinfo */ - TRACE(CMOGSTORED_HTTP_RDERR(buf_len, save_err)); + TRACE(CMOGSTORED_HTTP_RDERR(mfd->fd, buf_len, save_err)); switch (save_err) { case ECONNRESET: @@ -240,6 +240,7 @@ http_rbuf_grow(struct mog_fd *mfd, struct mog_rbuf **rbuf, size_t buf_len) { struct mog_http *http = &mfd->as.http; + TRACE(CMOGSTORED_HTTP_RBUF_GROW(mfd->fd, buf_len)); (*rbuf)->rsize = buf_len; http->rbuf = *rbuf = mog_rbuf_grow(*rbuf); return *rbuf ? (*rbuf)->rptr : NULL; @@ -251,6 +252,7 @@ http_parse_continue(struct mog_fd *mfd, struct mog_rbuf **rbuf, { struct mog_http *http = &mfd->as.http; + TRACE(CMOGSTORED_HTTP_PARSE_CONTINUE(mfd->fd, buf_len)); assert(http->wbuf == NULL && "tried to write (and failed) with partial req"); if (http->_p.buf_off >= (*rbuf)->rcapa) { @@ -302,7 +304,7 @@ reread: r = read(mfd->fd, buf + off, rbuf->rcapa - off); if (r > 0) { if (off == 0) - TRACE(CMOGSTORED_HTTP_REQ_BEGIN(false)); + TRACE(CMOGSTORED_HTTP_REQ_BEGIN(mfd->fd, false)); buf_len = r + off; parse: @@ -320,7 +322,7 @@ parse: return http_run(mfd, rbuf, buf, buf_len); } } else if (r == 0) { /* client shut down */ - TRACE(CMOGSTORED_HTTP_RDCLOSE(buf_len)); + TRACE(CMOGSTORED_HTTP_CLIENT_CLOSE(mfd->fd, buf_len)); return MOG_NEXT_CLOSE; } else { switch (errno) { @@ -475,7 +477,10 @@ void mog_http_resp0(struct mog_fd *mfd, struct iovec *status, bool alive) char *dst = iov.iov_base = mog_fsbuf_get(&iov.iov_len); struct mog_http *http = &mfd->as.http; + TRACE(CMOGSTORED_HTTP_RES_START(mfd->fd, status->iov_base)); + assert(status->iov_len * 2 + 1024 < iov.iov_len && "fsbuf too small"); + assert(status->iov_len > 3 && "HTTP response status too short"); #define CPY(str) mempcpy(dst, (str),(sizeof(str)-1)) dst = CPY("HTTP/1.1 "); |