Updated chunked_example.c

This commit is contained in:
Evgeny Grin (Karlson2k)
2017-07-25 11:41:46 +03:00
parent 66066283bd
commit 5d497ac699
2 changed files with 24 additions and 2 deletions
+4
View File
@@ -1,3 +1,7 @@
Tue Jul 23 11:32:00 MSK 2017
Updated chunked_example.c to provide real illustration of usage of
chunked encoding. -EG
Thu Jul 13 21:41:00 MSK 2017
Restored SIGPIPE suppression in TLS mode.
Added new value MHD_FEATURE_AUTOSUPPRESS_SIGPIPE so application could
+20 -2
View File
@@ -30,9 +30,27 @@ static ssize_t
callback (void *cls,
uint64_t pos,
char *buf,
size_t max)
size_t buf_size)
{
return MHD_CONTENT_READER_END_OF_STREAM;
static const char response_data[] = "<html><head><title>Simple response</title></head>" \
"<body>Simple response text</body></html>";
static const uint64_t response_size = (sizeof(response_data)/sizeof(char)) - 1;
size_t size_to_copy;
/* Note: 'pos' will never exceed size of transmitted data. */
/* You can use 'pos == response_size' in next check. */
if (pos >= response_size)
{ /* Whole response was sent. Signal end of response. */
return MHD_CONTENT_READER_END_OF_STREAM;
}
if (buf_size < (response_size - pos) )
size_to_copy = buf_size;
else
size_to_copy = response_size - pos;
memcpy (buf, response_data + pos, size_to_copy);
return size_to_copy;
}