UE 5.8 libWebSockets: exact source, Epic patches and build record for bundled Win64 archive

Summary

Hello Epic team,

Please route this to the Unreal Engine third-party/libWebSockets maintainer or the team responsible for its Win64 library build and distribution records.

We are reconciling the source provenance and supplied notices of the libWebSockets static library selected by an existing Win64 Shipping linker response. We need the source/patch/build record for the exact Epic-distributed archive below. We have completed passive package, file, header and object-metadata inspection; no rebuild or runtime test is needed to answer this documentary request.

Exact Epic package and library

Item Observed identity
Engine package UE_5.8
Full engine build 5.8.0-55116800+++UE5+Release-5.8-Windows
Library, relative to Engine Source/ThirdParty/libWebSockets/libwebsockets/lib/Win64/VS2015/Release/websockets_static.lib
Library size 616,866 bytes
Library SHA-256 e0328e43bfd6295128a45dd1373f9c3d4758dc71d1eda59b953a3b800879336b
Library passive version text 3.0.0 unknown-build-hash
Producer compiler metadata All 32 archive objects report Microsoft compiler frontend and backend 19.0.24215.1 in their CodeView compile records

The installed library, Windows header/configuration, module rule, TPS and notice each match their corresponding SHA-256 records in the retained installed Epic distribution manifest. That corroborates their package association; it does not identify the original source revision or build invocation.

The retained Shipping response selects the archive path above. The module rule selects websockets_static.lib on Windows and declares OpenSSL as a dependency. This identifies a selected linker input; we have not inferred that every archive member is present in the final executable.

Version and header observations

The supplied Source/ThirdParty/libWebSockets/libwebsockets.tps names libwebsockets v1.7.3, has date 2016-11-07T11:41:49.0727707-05:00, and points to the older /Engine/Source/ThirdParty/WebSockets/ location. The selected Windows lws_config.h instead declares 3.0.0 and leaves LWS_BUILD_HASH undefined. The library contains the passive text noted above; we did not execute its version function.

The supplied Windows header is:

  • Path: Source/ThirdParty/libWebSockets/libwebsockets/include/Win64/VS2015/libwebsockets.h
  • Size: 263,747 bytes; SHA-256: ae221def34291baeec7d1657225dd0ab666f86976ce61b34eafe353b14efafc4
  • After CRLF-to-LF normalization: 256,401 bytes, exact Git blob 3b689b056de007fcdf18fb95c839b779aa9d053e in Epic’s initial 3.0 source commit 868e8853814175343df31ad91122e34898237638.

The accompanying lws_config.h is 4,638 bytes, SHA-256 00f3ad0cb5ff44936d6fc300c7159c78e3792217035f91fb41f4925503fa3ed4. It defines TLS/OpenSSL, OS CA-root use, poll and IPv6; disables WebSocket extensions; and sets LWS_MAX_SMP to 1. These are supplied configuration-header facts, not a recovered original CMake cache or effective runtime TLS policy.

Source records already inspected

The installed Licenses/libwebsockets_notice.txt directs readers to Epic’s ThirdParty source repository (EpicGames/ThirdParty), pinned to commit 868e8853814175343df31ad91122e34898237638, path libwebsockets-3.0. We have already bound these component commits and their published patches:

  • 868e8853814175343df31ad91122e34898237638 — initial 3.0 snapshot; exact normalized supplied-header match.
  • c406c951c25bdd3ae4003dd20532eeac578304df — UE modifications across seven files: externally initialized OpenSSL, TCP protocol fallback and getaddrinfo/IPv6 connection/address-result handling.
  • 059e1bccc594f6de1c0e2492b36953f8bd32f267 — the 3.0 portion changes CMake feature-check dependencies, header diagnostics and WebSocket upgrade/HTTP-result diagnostics. We have kept its separate 2.2 changes distinct.
  • 76ae91be4ae8d88bd9e62fd637e1a9531f7f512f — HTTP redirect address-result cleanup.

We also inspected the initial snapshot’s CMakeLists.txt (Git blob c6efce267498d7f11e66f7a275faf4485a1d16b7) and READMEs/README.build.md (blob f06628defec913bdb2a42a068c0cd8d558c55691). They provide published build context, but no explicit mapping to this archive hash. The upstream v3.0.0 tag resolves to commit eaa935a80adb38b5cc4d09ce06ec987b87dcddfa; its tree differs from Epic’s initial 3.0 snapshot. We have not treated the initial commit’s “without modifications” description as proof of an exact upstream base.

The pinned Epic 3.0 LICENSE (EpicGames/ThirdParty, commit 868e8853814175343df31ad91122e34898237638, path libwebsockets-3.0/LICENSE) has Git blob 6c7cd90cdc6c5f52a75f32ed8f33385a0fbc200a: LGPL 2.1 with static-linking exception paragraphs. We have preserved the complete text and the separate contribution-notice context rather than substituting newer upstream licensing terms. Source availability and a header match have not established that this is the complete corresponding source/change set for the selected archive.

The archive has compile records but no source-checksum subsections or recovered build-command/environment records. Our scoped installed build-metadata and retained Shipping-response review found no original archive-bound CMake cache, build manifest or patch lock. We did not follow embedded supplier paths or access a PDB.

Requested records

  1. Exact source and patches: Which complete upstream revision/source tree and Epic downstream patch set produced archive SHA-256 e0328e43bfd6295128a45dd1373f9c3d4758dc71d1eda59b953a3b800879336b? Please provide the versioned source/change bundle or authoritative build-to-source mapping. For each of the three published modification commits above, please identify whether it is included, superseded or excluded, and identify any additional unpublished/downstream changes.

  2. Original build configuration: Please provide the matching build record or recipe, including CMake cache/invocation and generator, compiler/toolchain and Windows SDK versions, compiler/link options and defines, static/runtime-library configuration, and the exact OpenSSL/dependency revisions and configuration used. Please distinguish original producer inputs from later suggested rebuild instructions. If those details are no longer retained, please identify which fields are unavailable and the record owner.

  3. Package-version reconciliation: Does the TPS 1.7.3 entry describe this exact distributed library? If it is stale or has a different scope, please identify the authoritative replacement/version record and explain the 3.0.0 configuration and unknown-build-hash identity for this package.

  4. Exact supplied source and notices: Please identify the complete source/change distribution and applicable license/exception and contribution-notice files Epic supplies for this exact archive/build, including any separately licensed compiled contributions. Please confirm whether the pinned public 3.0 snapshot plus specified patches constitutes that complete library source/change set, or point to the correct versioned bundle. This request concerns the bundled library and its notices; it includes no request to disclose game source or assets.

Please answer against the full engine build and archive SHA-256 above. If another Epic component owner maintains these records, internal routing or a precise official case/source reference would help. If an exact mapping cannot be established, an explicit statement of that limitation would let us keep the unresolved provenance and notice requirements open accurately.

Thank you.

What Type of Bug are you experiencing?

Documentation

Steps to Reproduce

Documentary identification only. The retained Win64 Shipping response and installed libWebSockets module select the exact archive identified in Summary. The supplied TPS, configuration, public source and passive compiler records leave the original source/patch/build mapping unresolved. No runtime failure is asserted and no rebuild or test is requested.

Expected Result

An authoritative numbered reply mapping the exact library SHA-256 to the complete original source/upstream revision, Epic patch set, build/dependency configuration and applicable source/change and notice bundle, with a versioned official record or retrieval route.

Observed Result

The selected archive is 616,866 bytes, SHA-256 e0328e43bfd6295128a45dd1373f9c3d4758dc71d1eda59b953a3b800879336b; 32 producer records identify compiler 19.0.24215.1. TPS labels 1.7.3 while supplied configuration/library text says 3.0.0. Exact header and published patches are bound, but no original archive-to-source/build record was recovered. Complete evidence and four questions are in Summary.

Affects Versions

5.8

Platform(s)

Windows