Uploaded image for project: 'Node.js Driver'
  1. Node.js Driver
  2. NODE-6253

Kerberos addon crashes on RHEL8 with Node.js 18+

    • 2
    • 1
    • Not Needed
    • Not Needed
    • Hide

      1. What would you like to communicate to the user about this feature?
      2. Would you like the user to see examples of the syntax and/or executable code and its output?
      3. Which versions of the driver/connector does this apply to?

      Show
      1. What would you like to communicate to the user about this feature? 2. Would you like the user to see examples of the syntax and/or executable code and its output? 3. Which versions of the driver/connector does this apply to?

      Kerberos crashes when used on RHEL8 with Node.js 18+ because the RHEL8 version of Kerberos links against the system OpenSSL 1.1, while Node.js 18+ comes with OpenSSL 3 by default and the respective symbols end up conflicting with each other.

      A workaround is to install kerberos via env GYP_DEFINES=kerberos_use_rtld=true npm install kerberos --build-from-source.

      A potential solution could be to enable the kerberos_use_rtld=true flag by default.

      Example reports:

      Use Case

      As a... RHEL8 user
      I want... my kerberos addon not to crash when using Node.js 18+
      So that... I can keep using kerberos

      User Impact

      kerberos flat out crashes.

      Dependencies

      Shouldn't have any. (NODE-5746 already enabled us to fix this for mongosh; I was wrong to assume that this wouldn't impact regular Node.js usage where the addon is a dynamic/shared library rather than statically linked).

      Unknowns

      • questions that need to be answered to determine implementation

      Acceptance Criteria

      Implementation Requirements

      • functional reqs, potential snafus to avoid, performance targets, etc

      Testing Requirements

      • unit test, spec test sync, etc

      Documentation Requirements

      • DOCSP ticket, API docs, etc

      Follow Up Requirements

      • additional tickets to file, required releases, etc

            Assignee:
            neal.beeken@mongodb.com Neal Beeken
            Reporter:
            anna.henningsen@mongodb.com Anna Henningsen
            Warren James
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: