1. 30 Jun, 2020 1 commit
    • Datong Sun's avatar
      Fixed an regression that MQTT client timer is disarmed prematurely when · 95f5191c
      Datong Sun authored
      connecting to server.
      
      Inside af426d03, the `mqtt_socket_timer`
      function was modified so that instead of checking the presense of
      allocated `mud->pesp_conn` structure, `mud->connected` field was used
      on determining if the timer need to be disarmed.
      
      However, this is not entirely correct. If the TCP socket is actively
      connecting and haven't timed out yet, then `mud->connected` is also
      `false` and the timer will think the connection is broken and
      disarms itself. This has two consequences:
      
      * The connection timeout counter is no longer decremented and checked
      * After connection succeeds, keepalive heartbeat is no longer being
        sent (#3166). This is particularly noticeable in MQTT over TLS
        connections, because those usually takes longer than 1 second
        to finish and the timer would had chance to execute before connection
        is established
      
      This commit checks the presense of `pesp_conn->proto.tcp` pointer
      instead, which was allocated in the same place as the (old) `pesp_conn`
      struct, and according to my test indeed fixes the above issue.
      95f5191c
  2. 22 Jun, 2020 1 commit
  3. 20 Jun, 2020 1 commit
  4. 17 Jun, 2020 1 commit
  5. 16 Jun, 2020 1 commit
  6. 13 Jun, 2020 1 commit
  7. 12 Jun, 2020 1 commit
  8. 10 Jun, 2020 3 commits
  9. 09 Jun, 2020 30 commits