Repository navigation
Unify Windows and Apple Silicon macOS ports - #109
Open
edhemphill wants to merge 11 commits into
Open
edhemphill wants to merge 11 commits into
edhemphill wants to merge 11 commits into
Conversation
Retain native Windows PAL adapters while integrating the upstream release, OpenSSL and file-based Root of Trust changes. Route shared OpenSSL TLS through PAL sockets with a Windows BIO and use Windows PAL file APIs for optional file-based RoT.
Widen the MSVC base type and data type bitfields to preserve ObjectDirectory and OPAQUE/TIME/OBJLINK values. Three-bit signed enum storage changed endpoint type 4 to -4, so Windows PT device registration could not find newly created endpoints. Preserve the existing layout for other compilers.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Combines current upstream master (
81c38f3), the Windows experiment (eebe120), and Apple Silicon macOS support (b511cbd) into one desktop port branch. Both port tips remain in the merge ancestry. Linux keeps its existing platform selection; Windows and macOS use their native PAL adapters with shared OpenSSL and persistent file-backed storage support.The Linux/OpenSSL firmware-enabled build exposed an existing unconditional mbedTLS AES include in the legacy update hub. Guard that header with the existing PSK feature flag so the default public-key update profile builds with OpenSSL while retaining firmware-update compilation. Reproduced the original header failure against unmodified cloud-client master before validating the correction.
Adds CI that checks the exact library commit with fixed mbed-edge consumers: Linux master production builds with both TLS backends, the six-suite Linux regression set, macOS 14/26 arm64 Debug/Release, and native Windows x64 Debug/Release production/Core/PAL checks. Build logs, selected commit IDs, and test results are uploaded as artifacts. No cloud or signing credentials are used.
All 9 CI jobs passed for
2a8d4e0:The pinned macOS Core consumer has an existing C++ vendor-header inclusion inside a C linkage block. Its macOS 14 check preincludes
cstddefandcstdarg; the source-level Core correction is documented for the subsequent mbed-edge integration. The Linux unit gate uses the existing repaired mock-suite consumer, while unmodified Linux master remains the production-build gate. Consumer references and limits.After this library PR is accepted, the separate mbed-edge integration can merge its Linux master, Windows, and macOS branches and pin the accepted upstream library commit. No mbed-edge pin change or unified Core branch is included here.