9c6bec203d
open_fn() was introduced in the context of HTTPS server, as a configurable callback function that is called by the HTTP server, on every newly created socket. It is responsible of allocating resources for per session transport security. Earlier, if open_fn were to fail, the newly created socket would be closed by the server but the corresponding entry, for the now invalid socket, will remain in the internal socket database until that invalid socket is detected due to error when calling select(). Because of this delayed closing of sockets, the HTTPS server would quickly face shortage of available sessions when a lot of SSL handshake errors are happening (this typically occurs when a browser finds that the server certificate is self signed). This changes in this MR fix this issue by clearing up the socket from internal database, right after open_fn fails. Closes https://github.com/espressif/esp-idf/issues/3479 |
||
---|---|---|
.. | ||
port/esp32 | ||
util | ||
esp_httpd_priv.h | ||
httpd_main.c | ||
httpd_parse.c | ||
httpd_sess.c | ||
httpd_txrx.c | ||
httpd_uri.c |