mirror of
https://github.com/espressif/esp-idf
synced 2025-03-09 17:19:09 -04:00
http_server: Increment active socket count for SSL session
- The callback `open_fn` is used for creating a new SSL session with httpd_sess_new. - If the call fails, the active socket count (httpd_data->hd_sd_active_count) is not incremented. But, httpd_sess_delete is called, which decrements the count, resulting in a negative value for several failed session creations in a row. Closes https://github.com/espressif/esp-idf/issues/9683
This commit is contained in:
parent
15e0606ca0
commit
463b02eeec
@ -204,6 +204,9 @@ esp_err_t httpd_sess_new(struct httpd_data *hd, int newfd)
|
||||
session->send_fn = httpd_default_send;
|
||||
session->recv_fn = httpd_default_recv;
|
||||
|
||||
// increment number of sessions
|
||||
hd->hd_sd_active_count++;
|
||||
|
||||
// Call user-defined session opening function
|
||||
if (hd->config.open_fn) {
|
||||
esp_err_t ret = hd->config.open_fn(hd, session->fd);
|
||||
@ -214,10 +217,8 @@ esp_err_t httpd_sess_new(struct httpd_data *hd, int newfd)
|
||||
}
|
||||
}
|
||||
|
||||
// increment number of sessions
|
||||
hd->hd_sd_active_count++;
|
||||
ESP_LOGD(TAG, LOG_FMT("active sockets: %d"), hd->hd_sd_active_count);
|
||||
|
||||
ESP_LOGD(TAG, LOG_FMT("active sockets: %d"), hd->hd_sd_active_count);
|
||||
return ESP_OK;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user