diff options
| -rw-r--r-- | http.c | 4 | ||||
| -rw-r--r-- | include/slweb/http.h | 3 |
2 files changed, 6 insertions, 1 deletions
@@ -359,6 +359,8 @@ static int start_line(struct http_ctx *const h) c->op = HTTP_OP_GET; else if (!strncmp(line, "POST", n)) c->op = HTTP_OP_POST; + else if (!strncmp(line, "HEAD", n)) + c->op = HTTP_OP_HEAD; else { fprintf(stderr, "%s: unsupported HTTP op %.*s\n", @@ -1039,6 +1041,8 @@ static int header_cr_line(struct http_ctx *const h) switch (c->op) { case HTTP_OP_GET: + /* Fall through. */ + case HTTP_OP_HEAD: return process_payload(h, line); case HTTP_OP_POST: diff --git a/include/slweb/http.h b/include/slweb/http.h index f5963dc..68ffb9a 100644 --- a/include/slweb/http.h +++ b/include/slweb/http.h @@ -10,7 +10,8 @@ struct http_payload enum http_op { HTTP_OP_GET, - HTTP_OP_POST + HTTP_OP_POST, + HTTP_OP_HEAD } op; const char *resource; |
