From f3f9c925687d262547d0e203ad3216fa6f46fd5d Mon Sep 17 00:00:00 2001 From: Aleksey Veresov Date: Sun, 22 Sep 2019 11:03:31 +0300 Subject: . --- examples/upload.c | 73 ------------------------------------------------------- 1 file changed, 73 deletions(-) delete mode 100644 examples/upload.c (limited to 'examples/upload.c') diff --git a/examples/upload.c b/examples/upload.c deleted file mode 100644 index 9dc1efd..0000000 --- a/examples/upload.c +++ /dev/null @@ -1,73 +0,0 @@ -#include -#include -#include -#include -#include - -void tempfile_callback(struct magi_field *field, char *buffer, int len) -{ - static FILE *file = 0; - if (!strcmp(field->name, "data")) { - if (!file) { - remove(field->name); - file = fopen(field->name, "wb"); - } - if (len) { - fwrite(buffer, 1, len, file); - } - if (len < magi_parse_multipart_callback_size) { - fclose(file); - file = 0; - } - } else if (len) { - field->data = realloc(field->data, field->len + len + 1); - memcpy(field->data + field->len, buffer, len); - field->len += len; - field->data[field->len] = 0; - } -} - -void handle_request() -{ - struct magi_request request; - if (magi_request_build_cgi(&request, tempfile_callback, 0)) { - struct magi_field *name = magi_field_list_get(request.fields, "name"); - struct magi_field *data = magi_field_list_get(request.fields, "data"); - if (name && name->data && data) { - rename("data", name->data); - } - magi_request_destroy(&request); - } -} - -void print_preamble() -{ - puts("Content-type: application/xhtml+xml\r\n\r\n"); -} - -void print_webpage() -{ - puts( - "" - "" - "Upload File" - "" - "
" - "" - "" - "" - "
" - "" - "" - ); -} - -int main(int argc, char const *argv[]) -{ - handle_request(); - print_preamble(); - print_webpage(); - return 0; -} -- cgit v1.2.3