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

Segfault when calling dbexit in SSLManager with auditing enabled

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: 3.0.4
    • Fix Version/s: 3.0.6
    • Component/s: Security
    • Labels:
      None
    • Backwards Compatibility:
      Fully Compatible
    • Operating System:
      ALL
    • Sprint:
      Quint Iteration 7

      Description

      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.

        Attachments

          Activity

            People

            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: