Uploaded image for project: 'Java Driver'
  1. Java Driver
  2. JAVA-4458

FLE 1.0 Shared Library

    • Done
    • FLE 1.0 Shared Library
    • 2
    • 2
    • 2
    • 100
    • Hide

      Engineer: Ross

      Summary: Support the csfle shared library, which replaces mongocryptd.

      2022-05-31: Set initial target end date to 2022-06-03

      Status Update:

      • In code review

      Rationale for delays:

      • No delays

      Risks:

      • None

      Show
      Engineer: Ross Summary: Support the  csfle  shared library, which replaces mongocryptd. 2022-05-31: Set initial target end date to 2022-06-03 Status Update: In code review Rationale for delays: No delays Risks: None
    • Hide

      DRIVERS-1950:
      Note: the following instructions do not account for the rename of the shared library. Please also see DRIVERS-2338.

      The csfle shared library is a new component that replaces the mongocryptd process. csfle is loaded by libmongocrypt at runtime.

      Please see the following specifications PRs for a description of the driver changes:

      Please see the C driver implementation for reference.

      Bindings changes

      Upgrade libmongocrypt dependency to 1.5.0. Drivers can use 1.5.0-alpha0 to test. Binaries are available from this upload-all task.

      Update the bindings to libmongocrypt to add the new functions:

      • mongocrypt_csfle_version_string
      • mongocrypt_csfle_version
      • mongocrypt_setopt_append_csfle_search_path
      • mongocrypt_setopt_set_csfle_lib_path_override

      Driver changes

      Pass AutoEncryptionOpts.extraOptions.csflePath to libmongocrypt with {} mongocrypt_setopt_set_crypt_shared_lib_path_override.

      If AutoEncryptionOpts.bypassAutoEncryption is unset or false, pass "$SYSTEM" to mongocrypt_setopt_append_csfle_search_path for the mongocrypt_t in a MongoClient configured with AutoEncryptionOpts.

      If AutoEncryptionOpts.extraOptions.csfleRequired is true, error if csfle is not loaded. Determine if csfle is loaded by checking if mongocrypt_csfle_version_string is NULL.

      Do not attempt to spawn mongocryptd if csfle is loaded.

      Test changes

      Please see https://github.com/mongodb/specifications/pull/1199 for a description of test changes.

      Please see https://github.com/mongodb-labs/drivers-evergreen-tools/pull/196 for a script to download the csfle shared library.

      Show
      DRIVERS-1950 : Note : the following instructions do not account for the rename of the shared library. Please also see DRIVERS-2338. The csfle shared library is a new component that replaces the mongocryptd process. csfle is loaded by libmongocrypt at runtime. Please see the following specifications PRs for a description of the driver changes: https://github.com/mongodb/specifications/pull/1165 https://github.com/mongodb/specifications/pull/1185 Please see the C driver implementation for reference. Bindings changes Upgrade libmongocrypt dependency to 1.5.0. Drivers can use 1.5.0-alpha0 to test. Binaries are available from this upload-all task . Update the bindings to libmongocrypt to add the new functions: mongocrypt_csfle_version_string mongocrypt_csfle_version mongocrypt_setopt_append_csfle_search_path mongocrypt_setopt_set_csfle_lib_path_override Driver changes Pass AutoEncryptionOpts.extraOptions.csflePath to libmongocrypt with { } mongocrypt_setopt_set_crypt_shared_lib_path_override . If AutoEncryptionOpts.bypassAutoEncryption is unset or false, pass "$SYSTEM" to mongocrypt_setopt_append_csfle_search_path for the mongocrypt_t in a MongoClient configured with AutoEncryptionOpts . If AutoEncryptionOpts.extraOptions.csfleRequired is true, error if csfle is not loaded. Determine if csfle is loaded by checking if mongocrypt_csfle_version_string is NULL. Do not attempt to spawn mongocryptd if csfle is loaded. Test changes Please see https://github.com/mongodb/specifications/pull/1199 for a description of test changes. Please see https://github.com/mongodb-labs/drivers-evergreen-tools/pull/196 for a script to download the csfle shared library.

      This ticket was split from DRIVERS-1950, please see that ticket for a detailed description.

            Assignee:
            ross@mongodb.com Ross Lawley
            Reporter:
            dbeng-pm-bot PM Bot
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:
              1 week, 4 days