Răsfoiți Sursa

Merge branch 'bugfix/esp_http_server_config' into 'master'

esp_http_server: fix default control port for HTTPS configuration

Closes IDFGH-8719 and IDFGH-8663

See merge request espressif/esp-idf!21089
Mahavir Jain 3 ani în urmă
părinte
comite
2c9eb26e6f

+ 4 - 2
components/esp_http_server/include/esp_http_server.h

@@ -19,6 +19,8 @@
 extern "C" {
 #endif
 
+#define ESP_HTTPD_DEF_CTRL_PORT         (32768)    /*!< HTTP Server control socket port*/
+
 /*
 note: esp_https_server.h includes a customized copy of this
 initializer that should be kept in sync
@@ -28,7 +30,7 @@ initializer that should be kept in sync
         .stack_size         = 4096,                     \
         .core_id            = tskNO_AFFINITY,           \
         .server_port        = 80,                       \
-        .ctrl_port          = 32768,                    \
+        .ctrl_port          = ESP_HTTPD_DEF_CTRL_PORT,  \
         .max_open_sockets   = 7,                        \
         .max_uri_handlers   = 8,                        \
         .max_resp_headers   = 8,                        \
@@ -153,7 +155,7 @@ typedef struct httpd_config {
      */
     uint16_t    ctrl_port;
 
-    uint16_t    max_open_sockets;   /*!< Max number of sockets/clients connected at any time*/
+    uint16_t    max_open_sockets;   /*!< Max number of sockets/clients connected at any time (3 sockets are reserved for internal working of the HTTP server) */
     uint16_t    max_uri_handlers;   /*!< Maximum allowed uri handlers */
     uint16_t    max_resp_headers;   /*!< Maximum allowed additional headers in HTTP response */
     uint16_t    backlog_conn;       /*!< Number of backlog connections */

+ 1 - 1
components/esp_http_server/src/httpd_main.c

@@ -466,7 +466,7 @@ esp_err_t httpd_start(httpd_handle_t *handle, const httpd_config_t *config)
      * So the total number of required sockets is max_open_sockets + 3
      */
     if (CONFIG_LWIP_MAX_SOCKETS < config->max_open_sockets + 3) {
-        ESP_LOGE(TAG, "Configuration option max_open_sockets is too large (max allowed %d)\n\t"
+        ESP_LOGE(TAG, "Config option max_open_sockets is too large (max allowed %d, 3 sockets used by HTTP server internally)\n\t"
                  "Either decrease this or configure LWIP_MAX_SOCKETS to a larger value",
                  CONFIG_LWIP_MAX_SOCKETS - 3);
         return ESP_ERR_INVALID_ARG;

+ 1 - 1
components/esp_https_server/include/esp_https_server.h

@@ -122,7 +122,7 @@ typedef struct httpd_ssl_config httpd_ssl_config_t;
         .stack_size         = 10240,              \
         .core_id            = tskNO_AFFINITY,     \
         .server_port        = 0,                  \
-        .ctrl_port          = 32768,              \
+        .ctrl_port   = ESP_HTTPD_DEF_CTRL_PORT+1, \
         .max_open_sockets   = 4,                  \
         .max_uri_handlers   = 8,                  \
         .max_resp_headers   = 8,                  \