1
0
mirror of https://github.com/lammertb/libhttp.git synced 2025-07-31 08:24:23 +03:00

Alternative to mg_upload (Step 15/?)

This commit is contained in:
bel
2016-01-15 21:29:25 +01:00
parent 4e960e5fa4
commit 233e726fe3
2 changed files with 10 additions and 4 deletions

View File

@ -190,7 +190,7 @@ FormHandler(struct mg_connection *conn, void *cbdata)
/* Handler may access the request info using mg_get_request_info */
const struct mg_request_info *req_info = mg_get_request_info(conn);
int ret;
struct mg_form_data_handler fdh = {field_found, 0, 0};
struct mg_form_data_handler fdh = {field_found, 0};
/* TODO: Checks before calling handle_form_data ? */
(void)req_info;

View File

@ -56,8 +56,14 @@ url_encoded_field_found(const char *key,
struct mg_form_data_handler *fdh)
{
/* Call callback */
/* TODO: mg_url_decode(key, (size_t)keylen, ) */
return fdh->field_found(key, keylen, filename, disposition, fdh->user_data);
char key_dec[1024];
int ret =
mg_url_decode(key, (size_t)keylen, key_dec, (int)sizeof(key_dec), 1);
if ((ret < sizeof(key_dec)) && (ret >= 0)) {
return fdh->field_found(
key, keylen, filename, disposition, fdh->user_data);
}
return 0; /* SKIP; */
}
@ -187,7 +193,7 @@ mg_handle_form_data(struct mg_connection *conn,
/* Call callback */
fdh->field_found(
buf, (size_t)keylen, val, (size_t)vallen, fdh->user_data);
buf, (size_t)keylen, NULL, &disposition, fdh->user_data);
/* Proceed to next entry */
used = next - buf;