Uploaded image for project: 'C Driver'
  1. C Driver
  2. CDRIVER-630

default_stream_initiator can block forever in TLS handshake

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major - P3 Major - P3
    • 1.2-beta0, 1.1.5
    • 1.1.4
    • None
    • None

    Description

      *UPDATE*: Fixed in 1.1.5, still reproducible in 1.2.0. Uncomment the "/TLS/handshake_stall" test and fix in 1.2.0-dev branch.

      The default stream initiator in mongoc_client.c makes a blocking call to mongoc_stream_tls_do_handshake(). This can cause the driver to full hang until some kind of network error is returned.

      https://github.com/mongodb/mongo-c-driver/blob/master/src/mongoc/mongoc-client.c#L339

      We should pull connecttimeoutms or sockettimeoutms out of the uri and use that in lieu of permanent blocking.

      Attachments

        Activity

          People

            bjori Hannes Magnusson
            mira.carey@mongodb.com Mira Carey
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: