]> granicus.if.org Git - esp-idf/commitdiff
Protocomm : Minor fixes
authorAnurag Kar <anurag.kar@espressif.com>
Tue, 28 May 2019 09:11:49 +0000 (14:41 +0530)
committerAnurag Kar <anurag.kar@espressif.com>
Tue, 28 May 2019 09:11:49 +0000 (14:41 +0530)
List of changes:
* protocomm_httpd : Reset session_id static variable on start and stop
* security1 : Typo in checking failed dynamic allocation

components/protocomm/src/security/security1.c
components/protocomm/src/transports/protocomm_httpd.c

index 36d99f0a29dd611ceb19d679bd1424565f3b752e..56a5e8f318545af418c8c8203443ec9f56b428c8 100644 (file)
@@ -198,7 +198,7 @@ static esp_err_t handle_session_command0(uint32_t session_id,
     mbedtls_ecdh_context     *ctx_server = malloc(sizeof(mbedtls_ecdh_context));
     mbedtls_entropy_context  *entropy    = malloc(sizeof(mbedtls_entropy_context));
     mbedtls_ctr_drbg_context *ctr_drbg   = malloc(sizeof(mbedtls_ctr_drbg_context));
-    if (!ctx_server || !ctx_server || !ctr_drbg) {
+    if (!ctx_server || !entropy || !ctr_drbg) {
         ESP_LOGE(TAG, "Failed to allocate memory for mbedtls context");
         free(ctx_server);
         free(entropy);
index b4653b9a5819e912a972c9fc23f335bce1ee3a2d..1a20c4442d3900a625796163c1456e9ffab486ed 100644 (file)
@@ -50,9 +50,7 @@ static esp_err_t common_post_handler(httpd_req_t *req)
             if (pc_httpd->sec && pc_httpd->sec->close_transport_session) {
                 ret = pc_httpd->sec->close_transport_session(session_id);
                 if (ret != ESP_OK) {
-                    ESP_LOGE(TAG, "Failed to close session with ID: %d", session_id);
-                    ret = ESP_FAIL;
-                    goto out;
+                    ESP_LOGW(TAG, "Error closing session with ID: %d", session_id);
                 }
             }
             session_id = PROTOCOMM_NO_SESSION_ID;
@@ -241,6 +239,7 @@ esp_err_t protocomm_httpd_start(protocomm_t *pc, const protocomm_httpd_config_t
     pc->add_endpoint    = protocomm_httpd_add_endpoint;
     pc->remove_endpoint = protocomm_httpd_remove_endpoint;
     pc_httpd = pc;
+    session_id = PROTOCOMM_NO_SESSION_ID;
     return ESP_OK;
 }
 
@@ -256,6 +255,7 @@ esp_err_t protocomm_httpd_stop(protocomm_t *pc)
         }
         pc_httpd->priv = NULL;
         pc_httpd = NULL;
+        session_id = PROTOCOMM_NO_SESSION_ID;
         return ESP_OK;
     }
     return ESP_ERR_INVALID_ARG;