ruuvi / ruuvi.gateway_esp.c

Ruuvi Gateway ESP32 code
BSD 3-Clause "New" or "Revised" License
24 stars 15 forks source link

Sending data via HTTPS freezes if the server closes the connection or a network error occurs #1010

Closed TheSomeMan closed 4 months ago

TheSomeMan commented 4 months ago
I (1951952) transport_base: [http_server] [<NULL>] Configure size of TLS I/O buffers: in_content_len=8192, out_content_len=4096                                                                                                             
I (1951967) http: [http_server/1] ### HTTP POST to URL=https://otso-macbook-pro.local:8000/record                                                                                                                                           
I (1951974) http: [http_server/1] HTTP POST DATA len=146:                                                                                                                                                                                   
I (1951980) http: [http_server/1] HTTP POST DATA:                                                                                                                                                                                           
{                                                                                                                                                                                                                                           
  "data": {                                                                                                                                                                                                                                 
    "coordinates": "",                                                                                                                                                                                                                      
    "timestamp": 1707950205,                                                                                                                                                                                                                
    "nonce": 1195720875,                                                                                                                                                                                                                    
    "gw_mac": "F9:15:8F:92:D8:69",                                                                                                                                                                                                          
    "tags": {}                                                                                                                                                                                                                              
  }                                                                                                                                                                                                                                         
}                                                                                                                                                                                                                                           
I (1952003) transport_base: [http_server] [otso-macbook-pro.local] Get TLS saved session for ssl=0x3ffe12b0: not found                                                                                                                      
I (1952010) transport_base: [http_server] [otso-macbook-pro.local] There is no saved TLS session ticket for host                                                                                                                            
I (1952023) esp-tls: [http_server] esp_tls_init: tls=0x3ffed250                                                                                                                                                                             
I (1952080) esp-tls: [http_server] Hostname 'otso-macbook-pro.local' resolved to 192.168.1.98                                                                                                                                               
I (1952185) esp-tls-mbedtls: [http_server]: [otso-macbook-pro.local] Configure size of TLS I/O buffers: in_content_len=8192, out_content_len=4096                                                                                           
I (1952305) ADV_POST_TASK: [adv_post_task/5] Advs cnt: 11                                                                                                                                                                                   
I (1952829) esp-tls-mbedtls: [http_server]: [] SSL handshake success, TLS version: TLSv1.3                                                                                                                                                  
I (1952830) transport_base: [http_server] [] Unlock TLS saved session for ssl=0x3ffe12b0                                                                                                                                                    
E (1952894) transport_base: [http_server] base_poll_write: [] poll_write select error 104 (Connection reset by peer), fd = 54                                                                                                               
W (1952896) transport_base: [http_server] ssl_write: [] Poll timeout or error, errno=11 (No more processes), fd=54, timeout_ms=15000                                                                                                        
E (1952959) transport_base: [http_server] base_poll_write: [] poll_write select error 0 (ESP_OK), fd = 54                                                                                                                                   
W (1952960) transport_base: [http_server] ssl_write: [] Poll timeout or error, errno=11 (No more processes), fd=54, timeout_ms=15000                                                                                                        
E (1953022) transport_base: [http_server] base_poll_write: [] poll_write select error 0 (ESP_OK), fd = 54                                                                                                                                   
W (1953022) transport_base: [http_server] ssl_write: [] Poll timeout or error, errno=11 (No more processes), fd=54, timeout_ms=15000                                                                                                        
TheSomeMan commented 4 months ago

To test it you need to configure relaying to non existent HTTPS server (try not working IP address and non existent hostname, for example my-server123.local).

markoaamunkajo commented 4 months ago

QA passed