aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Grothoff <christian@grothoff.org>2024-01-21 10:33:44 +0100
committerChristian Grothoff <christian@grothoff.org>2024-01-21 10:33:44 +0100
commit52a5e465844add3dd968f2318eab5e6f91a5a1e7 (patch)
tree456561899f7df6d0056deee9ce4c507a30c05abd
parent9131da3340181d97d9deca4403a4bcd3d59236a4 (diff)
downloadlibmicrohttpd-52a5e465844add3dd968f2318eab5e6f91a5a1e7.tar.gz
libmicrohttpd-52a5e465844add3dd968f2318eab5e6f91a5a1e7.zip
use correct HTTP header (content type, not content encoding) for mime type in example; do check return value in example
-rw-r--r--doc/examples/responseheaders.c18
-rw-r--r--doc/examples/sessions.c60
-rw-r--r--src/microhttpd/daemon.c24
3 files changed, 70 insertions, 32 deletions
diff --git a/doc/examples/responseheaders.c b/doc/examples/responseheaders.c
index 30ac4596..cddcaa66 100644
--- a/doc/examples/responseheaders.c
+++ b/doc/examples/responseheaders.c
@@ -63,9 +63,21 @@ answer_to_connection (void *cls, struct MHD_Connection *connection,
63 return MHD_NO; 63 return MHD_NO;
64 } 64 }
65 response = 65 response =
66 MHD_create_response_from_fd_at_offset64 ((size_t) sbuf.st_size, fd, 0); 66 MHD_create_response_from_fd_at_offset64 ((size_t) sbuf.st_size,
67 MHD_add_response_header (response, "Content-Type", MIMETYPE); 67 fd,
68 ret = MHD_queue_response (connection, MHD_HTTP_OK, response); 68 0);
69 if (MHD_YES !=
70 MHD_add_response_header (response,
71 MHD_HTTP_HEADER_CONTENT_TYPE,
72 MIMETYPE))
73 {
74 fprintf (stderr,
75 "Failed to set content encoding type!\n");
76 /* return response without content encoding anyway ... */
77 }
78 ret = MHD_queue_response (connection,
79 MHD_HTTP_OK,
80 response);
69 MHD_destroy_response (response); 81 MHD_destroy_response (response);
70 82
71 return ret; 83 return ret;
diff --git a/doc/examples/sessions.c b/doc/examples/sessions.c
index 958a775f..0544a2d7 100644
--- a/doc/examples/sessions.c
+++ b/doc/examples/sessions.c
@@ -270,9 +270,15 @@ serve_simple_form (const void *cls,
270 /* return static form */ 270 /* return static form */
271 response = MHD_create_response_from_buffer_static (strlen (form), form); 271 response = MHD_create_response_from_buffer_static (strlen (form), form);
272 add_session_cookie (session, response); 272 add_session_cookie (session, response);
273 MHD_add_response_header (response, 273 if (MHD_YES !=
274 MHD_HTTP_HEADER_CONTENT_ENCODING, 274 MHD_add_response_header (response,
275 mime); 275 MHD_HTTP_HEADER_CONTENT_TYPE,
276 mime))
277 {
278 fprintf (stderr,
279 "Failed to set content type header!\n");
280 /* return response without content type anyway ... */
281 }
276 ret = MHD_queue_response (connection, 282 ret = MHD_queue_response (connection,
277 MHD_HTTP_OK, 283 MHD_HTTP_OK,
278 response); 284 response);
@@ -327,9 +333,15 @@ fill_v1_form (const void *cls,
327 if (NULL != response) 333 if (NULL != response)
328 { 334 {
329 add_session_cookie (session, response); 335 add_session_cookie (session, response);
330 MHD_add_response_header (response, 336 if (MHD_YES !=
331 MHD_HTTP_HEADER_CONTENT_ENCODING, 337 MHD_add_response_header (response,
332 mime); 338 MHD_HTTP_HEADER_CONTENT_TYPE,
339 mime))
340 {
341 fprintf (stderr,
342 "Failed to set content type header!\n");
343 /* return response without content type anyway ... */
344 }
333 ret = MHD_queue_response (connection, 345 ret = MHD_queue_response (connection,
334 MHD_HTTP_OK, 346 MHD_HTTP_OK,
335 response); 347 response);
@@ -392,9 +404,15 @@ fill_v1_v2_form (const void *cls,
392 if (NULL != response) 404 if (NULL != response)
393 { 405 {
394 add_session_cookie (session, response); 406 add_session_cookie (session, response);
395 MHD_add_response_header (response, 407 if (MHD_YES !=
396 MHD_HTTP_HEADER_CONTENT_ENCODING, 408 MHD_add_response_header (response,
397 mime); 409 MHD_HTTP_HEADER_CONTENT_TYPE,
410 mime))
411 {
412 fprintf (stderr,
413 "Failed to set content type header!\n");
414 /* return response without content type anyway ... */
415 }
398 ret = MHD_queue_response (connection, 416 ret = MHD_queue_response (connection,
399 MHD_HTTP_OK, 417 MHD_HTTP_OK,
400 response); 418 response);
@@ -434,9 +452,15 @@ not_found_page (const void *cls,
434 ret = MHD_queue_response (connection, 452 ret = MHD_queue_response (connection,
435 MHD_HTTP_NOT_FOUND, 453 MHD_HTTP_NOT_FOUND,
436 response); 454 response);
437 MHD_add_response_header (response, 455 if (MHD_YES !=
438 MHD_HTTP_HEADER_CONTENT_ENCODING, 456 MHD_add_response_header (response,
439 mime); 457 MHD_HTTP_HEADER_CONTENT_TYPE,
458 mime))
459 {
460 fprintf (stderr,
461 "Failed to set content type header!\n");
462 /* return response without content type anyway ... */
463 }
440 MHD_destroy_response (response); 464 MHD_destroy_response (response);
441 return ret; 465 return ret;
442} 466}
@@ -470,8 +494,8 @@ static const struct Page pages[] = {
470 * specified offset 494 * specified offset
471 * @param off offset of data in the overall value 495 * @param off offset of data in the overall value
472 * @param size number of bytes in data available 496 * @param size number of bytes in data available
473 * @return MHD_YES to continue iterating, 497 * @return #MHD_YES to continue iterating,
474 * MHD_NO to abort the iteration 498 * #MHD_NO to abort the iteration
475 */ 499 */
476static enum MHD_Result 500static enum MHD_Result
477post_iterator (void *cls, 501post_iterator (void *cls,
@@ -615,9 +639,11 @@ create_response (void *cls,
615 if (0 == strcmp (method, MHD_HTTP_METHOD_POST)) 639 if (0 == strcmp (method, MHD_HTTP_METHOD_POST))
616 { 640 {
617 /* evaluate POST data */ 641 /* evaluate POST data */
618 MHD_post_process (request->pp, 642 if (MHD_YES !=
619 upload_data, 643 MHD_post_process (request->pp,
620 *upload_data_size); 644 upload_data,
645 *upload_data_size))
646 return MHD_NO; /* internal error */
621 if (0 != *upload_data_size) 647 if (0 != *upload_data_size)
622 { 648 {
623 *upload_data_size = 0; 649 *upload_data_size = 0;
diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c
index f15d0ab0..d6b6401c 100644
--- a/src/microhttpd/daemon.c
+++ b/src/microhttpd/daemon.c
@@ -760,10 +760,10 @@ urh_to_fdset (struct MHD_UpgradeResponseHandle *urh,
760 (0 != urh->out_buffer_size) || 760 (0 != urh->out_buffer_size) ||
761 (0 != urh->out_buffer_used)) 761 (0 != urh->out_buffer_used))
762 && (NULL != es)) 762 && (NULL != es))
763 MHD_add_to_fd_set_ (conn_sckt, 763 (void) MHD_add_to_fd_set_ (conn_sckt,
764 es, 764 es,
765 max_fd, 765 max_fd,
766 fd_setsize); 766 fd_setsize);
767 } 767 }
768 if (MHD_INVALID_SOCKET != mhd_sckt) 768 if (MHD_INVALID_SOCKET != mhd_sckt)
769 { 769 {
@@ -1056,10 +1056,10 @@ internal_get_fdset2 (struct MHD_Daemon *daemon,
1056 result = MHD_NO; 1056 result = MHD_NO;
1057#ifdef MHD_POSIX_SOCKETS 1057#ifdef MHD_POSIX_SOCKETS
1058 if (NULL != except_fd_set) 1058 if (NULL != except_fd_set)
1059 MHD_add_to_fd_set_ (pos->socket_fd, 1059 (void) MHD_add_to_fd_set_ (pos->socket_fd,
1060 except_fd_set, 1060 except_fd_set,
1061 max_fd, 1061 max_fd,
1062 fd_setsize); 1062 fd_setsize);
1063#endif /* MHD_POSIX_SOCKETS */ 1063#endif /* MHD_POSIX_SOCKETS */
1064 break; 1064 break;
1065 case MHD_EVENT_LOOP_INFO_WRITE: 1065 case MHD_EVENT_LOOP_INFO_WRITE:
@@ -1070,10 +1070,10 @@ internal_get_fdset2 (struct MHD_Daemon *daemon,
1070 result = MHD_NO; 1070 result = MHD_NO;
1071#ifdef MHD_POSIX_SOCKETS 1071#ifdef MHD_POSIX_SOCKETS
1072 if (NULL != except_fd_set) 1072 if (NULL != except_fd_set)
1073 MHD_add_to_fd_set_ (pos->socket_fd, 1073 (void) MHD_add_to_fd_set_ (pos->socket_fd,
1074 except_fd_set, 1074 except_fd_set,
1075 max_fd, 1075 max_fd,
1076 fd_setsize); 1076 fd_setsize);
1077#endif /* MHD_POSIX_SOCKETS */ 1077#endif /* MHD_POSIX_SOCKETS */
1078 break; 1078 break;
1079 case MHD_EVENT_LOOP_INFO_PROCESS: 1079 case MHD_EVENT_LOOP_INFO_PROCESS: