libmicrohttpd

HTTP/1.x server C library (MHD 1.x, stable)
Log | Files | Refs | Submodules | README | LICENSE

commit 5e99e18f2db625fbe937f99a7f2916e2eee82008
parent 09ef9de1ca62bb47fe7cb320fc595275911f6a14
Author: ng0 <ng0@n0.is>
Date:   Tue,  2 Jul 2019 22:21:45 +0000

mhd_send: start adding logic from send_param_adapter.

Diffstat:
Msrc/microhttpd/mhd_send.c | 11+++++++++++
Msrc/microhttpd/mhd_send.h | 1+
2 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/src/microhttpd/mhd_send.c b/src/microhttpd/mhd_send.c @@ -85,6 +85,17 @@ MHD_send_on_connection_ (struct MHD_Connection *connection, const MHD_SCKT_OPT_BOOL_ off_val = 0; const MHD_SCKT_OPT_BOOL_ on_val = 1; + // error handling from send_param_adapter() + if ( (MHD_INVALID_SOCKET == s) || + (MHD_CONNECTION_CLOSED == connection->state) ) + { + return MHD_ERR_NOTCONN_; + } + + // from send_param_adapter() + if (buffer_size > MHD_SCKT_SEND_MAX_SIZE_) + buffer_size = MHD_SCKT_SEND_MAX_SIZE_; /* return value limit */ + // new code... /* Get socket options, change/set options if necessary. */ switch (options) diff --git a/src/microhttpd/mhd_send.h b/src/microhttpd/mhd_send.h @@ -34,6 +34,7 @@ #endif /* HAVE_STDBOOL_H */ #include <errno.h> #include "mhd_sockets.h" +#include "connection.h" enum MHD_SendSocketOptions {