Skip to content

Move OpenSSL < 3.0 compatibility stub to azure-c-shared-utility #2725

Description

Problem

Currently, the Azure IoT SDK-C maintains a compatibility stub for OpenSSL < 3.0 in the SDK itself (see PR #2724):

  • File: \compat_stubs/csr_gen_openssl_stub.c\
  • Linked from: \CMakeLists.txt\ (line ~395)

This stub is needed because \EVP_EC_gen()\ was added in OpenSSL 3.0, which affects cross-compile environments (ARM/MIPS Docker images) still using OpenSSL 1.0.2 or 1.1.1.

Root Cause

The actual implementation (\csr_gen_openssl.c) already exists in azure-c-shared-utility (upstream dependency). The stub should be part of that library, not duplicated in this SDK.

Expected Work

  1. Move \compat_stubs/csr_gen_openssl_stub.c\ to \�dapters/\ in azure-c-shared-utility
  2. Update azure-c-shared-utility's CMakeLists.txt to conditionally use the stub when \OPENSSL_VERSION_NUMBER < 0x30000000L\
  3. Remove the stub and conditional compilation from azure-iot-sdk-c CMakeLists.txt (line ~390-404)
  4. Update azure-iot-sdk-c's dependency on azure-c-shared-utility to point to the version containing the fix

Related PR

See: https://github.com/Azure/azure-iot-sdk-c/pull/2724/files

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions