author | Lars Hjemli <hjemli@gmail.com> | 2009-02-19 22:24:15 (UTC) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2009-02-19 22:24:15 (UTC) |
commit | 3ff58ddd51bcbcbc9b7649bad1a39aa98af4b49f (patch) (unidiff) | |
tree | 4ff1b54dfb2fc025771f39528165e9e46d93a0e0 | |
parent | 488a214a81a25c6397c56822ed1713f51dddc520 (diff) | |
download | cgit-3ff58ddd51bcbcbc9b7649bad1a39aa98af4b49f.zip cgit-3ff58ddd51bcbcbc9b7649bad1a39aa98af4b49f.tar.gz cgit-3ff58ddd51bcbcbc9b7649bad1a39aa98af4b49f.tar.bz2 |
Add support for HEAD requests
This is a quick 'n dirty hack which makes cgit honor HEAD requests.
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r-- | cgit.c | 3 | ||||
-rw-r--r-- | ui-shared.c | 4 |
2 files changed, 7 insertions, 0 deletions
@@ -431,4 +431,5 @@ int main(int argc, const char **argv) | |||
431 | { | 431 | { |
432 | const char *cgit_config_env = getenv("CGIT_CONFIG"); | 432 | const char *cgit_config_env = getenv("CGIT_CONFIG"); |
433 | const char *method = getenv("REQUEST_METHOD"); | ||
433 | const char *path; | 434 | const char *path; |
434 | char *qry; | 435 | char *qry; |
@@ -477,4 +478,6 @@ int main(int argc, const char **argv) | |||
477 | ttl = calc_ttl(); | 478 | ttl = calc_ttl(); |
478 | ctx.page.expires += ttl*60; | 479 | ctx.page.expires += ttl*60; |
480 | if (method && !strcmp(method, "HEAD")) | ||
481 | ctx.cfg.nocache = 1; | ||
479 | if (ctx.cfg.nocache) | 482 | if (ctx.cfg.nocache) |
480 | ctx.cfg.cache_size = 0; | 483 | ctx.cfg.cache_size = 0; |
diff --git a/ui-shared.c b/ui-shared.c index 86a7d29..0dafc83 100644 --- a/ui-shared.c +++ b/ui-shared.c | |||
@@ -457,4 +457,6 @@ void cgit_print_age(time_t t, time_t max_relative, char *format) | |||
457 | void cgit_print_http_headers(struct cgit_context *ctx) | 457 | void cgit_print_http_headers(struct cgit_context *ctx) |
458 | { | 458 | { |
459 | const char *method = getenv("REQUEST_METHOD"); | ||
460 | |||
459 | if (ctx->page.mimetype && ctx->page.charset) | 461 | if (ctx->page.mimetype && ctx->page.charset) |
460 | htmlf("Content-Type: %s; charset=%s\n", ctx->page.mimetype, | 462 | htmlf("Content-Type: %s; charset=%s\n", ctx->page.mimetype, |
@@ -472,4 +474,6 @@ void cgit_print_http_headers(struct cgit_context *ctx) | |||
472 | htmlf("ETag: \"%s\"\n", ctx->page.etag); | 474 | htmlf("ETag: \"%s\"\n", ctx->page.etag); |
473 | html("\n"); | 475 | html("\n"); |
476 | if (method && !strcmp(method, "HEAD")) | ||
477 | exit(0); | ||
474 | } | 478 | } |
475 | 479 | ||