Uploaded image for project: 'Qpid Proton'
  1. Qpid Proton
  2. PROTON-2239

epoll proactor race condition on connection teardown with heartbeats

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • proton-c-0.28.0
    • None
    • proton-c
    • None

    Description

      If a connection with heartbeats is closed at about the same time to when its idle timeout timer fires, it is possible to have two threads believing they are the last activity on the connection. Both threads proceed to free the same resources leading to memory corruption and various crashes.

      The existing code has guards for this exact situation, but there is an Achilles heel somewhere.

      Attachments

        1. xxx.c
          6 kB
          Clifford Jansen
        2. p2239.diff
          4 kB
          Clifford Jansen
        3. connexorciser.c
          13 kB
          Clifford Jansen

        Activity

          People

            cliffjansen Clifford Jansen
            cliffjansen Clifford Jansen
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated: