Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-19538

Segfault when calling dbexit in SSLManager with auditing enabled

    • Type: Icon: Bug Bug
    • Resolution: Done
    • Priority: Icon: Major - P3 Major - P3
    • 3.0.6
    • Affects Version/s: 3.0.4
    • Component/s: Security
    • Labels:
    • Fully Compatible
    • ALL
    • Quint Iteration 7

      The following sequence of events trigger the segfault.

      1. The mongod is started up.
      2. The auditing code is initialized.
      3. The SSLManager begins its initialization.
      4. It parses and validates the keyfile specified.
      5. The keyfile is expired or not yet valid, so dbexit() is called.
      6. The auditing code logs that the server is shutting down, but a segfault occurs because currentClient.get() is null.

      There are no dependencies between the initialization of the auditing code and the SSLManager, so an fassert occurs when the order of events (2) and (3) are reversed.

            max.hirschhorn@mongodb.com Max Hirschhorn
            max.hirschhorn@mongodb.com Max Hirschhorn
            0 Vote for this issue
            4 Start watching this issue