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

Qpid-Proton 0.12.2 unable to open link with Azure when using connection_engine

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Not A Problem
    • proton-0.12.2
    • proton-0.16.0
    • cpp-binding
    • Linux

    Description

      Since proton's built in SSL does not work when running as a connection_engine I used libcurl to achieve an SSL connection.

      I have tested this against a local broker and am able to connect, open sessions, senders and receivers fine.

      However, on connecting to a Microsoft Azure IoTHub I find that whilst I am able to connect and open a session, when attempting to open a sender or receiver the remote (Azure) end immediately closes it again.

      The problem does not occur with a reactor/messenger build of the same program, which uses proton's built in SSL support. However I don't think that the use of internal or external SSL is the cause of the problem. (It's tricky to prove this as I haven't found a way to do the io_reads and io_writes with a reactor build, which is why I'm using connection_engine/socket_engine in the first place - However, I did hack around in connection_options.cpp and convinced ssl_init to get called and found that the connection_engine build fails in the same way when using built in SSL).

      I'll try to attach wireshark traces from both sample programs to this bug.

      Attachments

        1. AzureWithQpidProton_FAILonOpenSender.pcapng
          51 kB
          Tobias Duckworth
        2. AzureWithQpidProton_SUCCESS.pcapng
          54 kB
          Tobias Duckworth

        Issue Links

          Activity

            People

              aconway Alan Conway
              TheBarrelShifter Tobias Duckworth
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: