diff options
Diffstat (limited to 'src/response.c')
-rw-r--r-- | src/response.c | 66 |
1 files changed, 33 insertions, 33 deletions
diff --git a/src/response.c b/src/response.c index 914f021..fdeba34 100644 --- a/src/response.c +++ b/src/response.c @@ -6,23 +6,32 @@ #include <stdlib.h> #include <string.h> -int vsnprintf(char * s, size_t n, const char * format, va_list arg); +/* TODO: realise vsnprintf or eliminate need of it. (see musl) */ +int vsnprintf(char *s, size_t n, const char *format, va_list arg); -void magi_response_setup(struct magi_response * response) +void magi_response_setup(magi_response *response) { response->cookies = 0; response->http_params = 0; response->content_type = 0; + magi_response_content_type(response, "application/xhtml+xml"); response->content = magi_str_create(0); response->len = 0; response->size = 1; } - -void magi_response_content_type(struct magi_response * response, - enum magi_content_type type) +void magi_response_content_type(magi_response *response, const char *type) { +<<<<<<< HEAD + static const char *const ct = "Content-Type: "; + static const int ctlen = 15; + const int len = strlen(type); + free(response->content_type); + response->content_type = malloc(ctlen + len + 1); + memcpy(response->content_type, ct, ctlen); + memcpy(response->content_type + ctlen, type, len + 1); +======= const char * const messages[] = { "Content-Type: application/xhtml+xml", /* magi_xhtml */ }; @@ -30,9 +39,10 @@ void magi_response_content_type(struct magi_response * response, response->content_type = magi_str_create_copy(messages[type], strlen(messages[type])); } +>>>>>>> master } -void magi_response_add(struct magi_response * r, const char * addon) +void magi_response_add(magi_response *r, const char *addon) { int addon_len; if (!addon) { @@ -46,11 +56,9 @@ void magi_response_add(struct magi_response * r, const char * addon) r->len += addon_len; } -void magi_response_add_format(struct magi_response * response, - const char * addon, - ...) +void magi_response_add_format(magi_response *response, const char *addon, ...) { - char * act_addon; + char *act_addon; int n; va_list args; va_start(args, addon); @@ -66,44 +74,36 @@ void magi_response_add_format(struct magi_response * response, } } -void magi_response_cookie(struct magi_response * response, - struct magi_cookie * cookie) +void magi_response_cookie(magi_response *response, magi_cookie *cookie) { magi_cookie_list_add(&response->cookies, cookie); } -void magi_response_cookie_easy(struct magi_response * response, - const char * name, - const char * value) +void magi_response_cookie_easy(magi_response *response, + const char *name, + const char *value) { - struct magi_cookie cookie = { 0, 0, 0, 0, 0 }; - cookie.name = magi_str_create_copy(name, strlen(name)); - cookie.data = magi_str_create_copy(value, strlen(value)); - magi_cookie_list_add(&response->cookies, &cookie); -} -void magi_response_cookie_discard(struct magi_response * response, - const char * name) +void magi_response_cookie_discard(magi_response *response, const char *name) { - struct magi_cookie cookie = { 0, 0, 0, 0, 0 }; - cookie.name = magi_str_create_copy(name, strlen(name)); - cookie.max_age = magi_str_create(1); - cookie.max_age[0] = '0'; + magi_cookie cookie = { 0, 0, 0, 0, 0 }; + cookie.name = magi_str_create_copy(name, strlen(name)); + cookie.max_age = magi_str_create(1); + cookie.max_age[0] = '0'; magi_cookie_list_add(&response->cookies, &cookie); } -void magi_response_http(struct magi_response * response, - const char * name, - const char * data) +void magi_response_http(magi_response *response, + const char *name, { - struct magi_param param = { 0, 0 }; - param.name = magi_str_create_copy(name, strlen(name)); - param.data = magi_str_create_copy(data, strlen(data)); + magi_param param = { 0, 0 }; + param.name = magi_str_create_copy(name, strlen(name)); + param.data = magi_str_create_copy(data, strlen(data)); magi_param_list_add(&response->http_params, ¶m); } -void magi_response_destroy(struct magi_response * response) +void magi_response_destroy(magi_response *response) { if (!response) { return; |