Supply status description to html_status()
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
This commit is contained in:
förälder
65b7b876aa
incheckning
885096c189
4
html.c
4
html.c
@ -56,9 +56,9 @@ void htmlf(const char *format, ...)
|
||||
html(buf);
|
||||
}
|
||||
|
||||
void html_status(int code, int more_headers)
|
||||
void html_status(int code, const char *msg, int more_headers)
|
||||
{
|
||||
htmlf("Status: %d\n", code);
|
||||
htmlf("Status: %d %s\n", code, msg);
|
||||
if (!more_headers)
|
||||
html("\n");
|
||||
}
|
||||
|
2
html.h
2
html.h
@ -6,7 +6,7 @@ extern int htmlfd;
|
||||
extern void html_raw(const char *txt, size_t size);
|
||||
extern void html(const char *txt);
|
||||
extern void htmlf(const char *format,...);
|
||||
extern void html_status(int code, int more_headers);
|
||||
extern void html_status(int code, const char *msg, int more_headers);
|
||||
extern void html_txt(char *txt);
|
||||
extern void html_ntxt(int len, char *txt);
|
||||
extern void html_attr(char *txt);
|
||||
|
10
ui-clone.c
10
ui-clone.c
@ -48,20 +48,18 @@ static void print_pack_info(struct cgit_context *ctx)
|
||||
static void send_file(struct cgit_context *ctx, char *path)
|
||||
{
|
||||
struct stat st;
|
||||
int err;
|
||||
|
||||
if (stat(path, &st)) {
|
||||
switch (errno) {
|
||||
case ENOENT:
|
||||
err = 404;
|
||||
html_status(404, "Not found", 0);
|
||||
break;
|
||||
case EACCES:
|
||||
err = 403;
|
||||
html_status(403, "Forbidden", 0);
|
||||
break;
|
||||
default:
|
||||
err = 400;
|
||||
html_status(400, "Bad request", 0);
|
||||
}
|
||||
html_status(err, 0);
|
||||
return;
|
||||
}
|
||||
ctx->page.mimetype = "application/octet-stream";
|
||||
@ -86,7 +84,7 @@ void cgit_clone_info(struct cgit_context *ctx)
|
||||
void cgit_clone_objects(struct cgit_context *ctx)
|
||||
{
|
||||
if (!ctx->qry.path) {
|
||||
html_status(400, 0);
|
||||
html_status(400, "Bad request", 0);
|
||||
return;
|
||||
}
|
||||
|
||||
|
10
ui-plain.c
10
ui-plain.c
@ -22,13 +22,13 @@ static void print_object(const unsigned char *sha1, const char *path)
|
||||
|
||||
type = sha1_object_info(sha1, &size);
|
||||
if (type == OBJ_BAD) {
|
||||
html_status(404, 0);
|
||||
html_status(404, "Not found", 0);
|
||||
return;
|
||||
}
|
||||
|
||||
buf = read_sha1_file(sha1, &type, &size);
|
||||
if (!buf) {
|
||||
html_status(404, 0);
|
||||
html_status(404, "Not found", 0);
|
||||
return;
|
||||
}
|
||||
ctx.page.mimetype = "text/plain";
|
||||
@ -66,17 +66,17 @@ void cgit_print_plain(struct cgit_context *ctx)
|
||||
|
||||
curr_rev = xstrdup(rev);
|
||||
if (get_sha1(rev, sha1)) {
|
||||
html_status(404, 0);
|
||||
html_status(404, "Not found", 0);
|
||||
return;
|
||||
}
|
||||
commit = lookup_commit_reference(sha1);
|
||||
if (!commit || parse_commit(commit)) {
|
||||
html_status(404, 0);
|
||||
html_status(404, "Not found", 0);
|
||||
return;
|
||||
}
|
||||
match_path = ctx->qry.path;
|
||||
fprintf(stderr, "[cgit] match_path=%s", match_path);
|
||||
read_tree_recursive(commit->tree, NULL, 0, 0, paths, walk_tree, NULL);
|
||||
if (!match)
|
||||
html_status(404, 0);
|
||||
html_status(404, "Not found", 0);
|
||||
}
|
||||
|
Laddar…
Referens i nytt ärende
Block a user