From a636cf8b25d72900892b18191e0d68de10779e90 Mon Sep 17 00:00:00 2001 From: default Date: Wed, 28 Sep 2022 09:29:09 +0200 Subject: New function static_get(). --- data.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'data.c') diff --git a/data.c b/data.c index 13cef84..b20dc9e 100644 --- a/data.c +++ b/data.c @@ -801,6 +801,31 @@ int actor_get(snac *snac, char *actor, d_char **data) } +d_char *_static_fn(snac *snac, char *id) +/* gets the filename for a static file */ +{ + return xs_fmt("%s/static/%s", snac->basedir, id); +} + + +int static_get(snac *snac, char *id, d_char **data, int *size) +/* returns static content */ +{ + xs *fn = _static_fn(snac, id); + FILE *f; + int status = 404; + + *size = 0xfffffff; + + if ((f = fopen(fn, "rb")) != NULL) { + *data = xs_read(f, size); + status = 200; + } + + return status; +} + + void enqueue_input(snac *snac, char *msg, char *req) /* enqueues an input message */ { -- cgit v1.2.3