libwebsockets: upgrade 4.3.5 -> 4.5.2

Handles CVE-2025-11677, CVE-2025-11678, CVE-2025-11679 and
CVE-2025-11680.

* drop patches included in this release
* update license
* add packageconfig for examples as those don't build

License-Update: added new license, see:
https://libwebsockets.org/git/libwebsockets/commit?id=e3dca87f23e8f783e1008b54829b39f9d7b083df

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Peter Marko 2025-12-15 18:18:35 +01:00 committed by Khem Raj
parent b3de57b339
commit 3916c15a77
No known key found for this signature in database
GPG Key ID: BB053355919D3314
3 changed files with 5 additions and 1590 deletions

View File

@ -1,29 +0,0 @@
From 99e3ad14c60599e5d73e4d5597c95c3b91780547 Mon Sep 17 00:00:00 2001
From: Andy Green <andy@warmcat.com>
Date: Wed, 22 Jan 2025 10:08:55 +0000
Subject: [PATCH] sll_protocol may be be16
Google's fuzzer platform blows a warning
/src/libwebsockets/lib/plat/unix/unix-sockets.c:497:21: warning: implicit conversion loses integer precision: 'uint32_t' (aka 'unsigned int') to '__be16' (aka 'unsigned short') [-Wimplicit-int-conversion]
497 | sll.sll_protocol = (uint32_t)(htons((uint16_t)0x800));
Upstream-Status: Backport [https://github.com/warmcat/libwebsockets/commit/2ffb8c6d5eaab509a133f3a6d922e170ae95dd59]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
lib/plat/unix/unix-sockets.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/plat/unix/unix-sockets.c b/lib/plat/unix/unix-sockets.c
index 1a40c9cf..61292ff8 100644
--- a/lib/plat/unix/unix-sockets.c
+++ b/lib/plat/unix/unix-sockets.c
@@ -453,7 +453,7 @@ lws_plat_rawudp_broadcast(uint8_t *p, const uint8_t *canned, size_t canned_len,
memset(&sll, 0, sizeof(sll));
sll.sll_family = AF_PACKET;
- sll.sll_protocol = (uint32_t)(htons((uint16_t)0x800));
+ sll.sll_protocol = (uint16_t)(htons((uint16_t)0x800));
sll.sll_halen = 6;
sll.sll_ifindex = (int)if_nametoindex(iface);
memset(sll.sll_addr, 0xff, 6);

View File

@ -1,16 +1,13 @@
SUMMARY = "Canonical libwebsockets.org websocket library"
HOMEPAGE = "https://libwebsockets.org/"
LICENSE = "MIT & Zlib & BSD-3-Clause & Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=382bfdf329e774859fd401eaf850d29b"
LICENSE = "MIT & Zlib & BSD-3-Clause & Apache-2.0 & OFL-1.1"
LIC_FILES_CHKSUM = "file://LICENSE;md5=b5d391cc7929bcba238f9ba6805f7574"
DEPENDS = "zlib"
DEPENDS:append:class-native = " libcap-native"
SRCREV = "ab9df9cfc39de7a49967f18387b6b76310947442"
SRC_URI = "git://github.com/warmcat/libwebsockets.git;protocol=https;branch=v4.3-stable \
file://0001-sll_protocol-may-be-be16.patch \
file://0002-allow-build-with-cmake-4.patch \
"
SRCREV = "85c6f7959fd40d8aaf7a50be3c9b75f08389a01c"
SRC_URI = "git://github.com/warmcat/libwebsockets.git;protocol=https;branch=v4.5-stable;tag=v${PV}"
UPSTREAM_CHECK_URI = "https://github.com/warmcat/${BPN}/releases"
UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
@ -28,6 +25,7 @@ PACKAGECONFIG[server] = "-DLWS_WITHOUT_SERVER=OFF,-DLWS_WITHOUT_SERVER=ON,"
PACKAGECONFIG[ssl] = "-DLWS_WITH_SSL=ON,-DLWS_WITH_SSL=OFF,openssl"
PACKAGECONFIG[static] = "-DLWS_WITH_STATIC=ON,-DLWS_WITH_STATIC=OFF -DLWS_LINK_TESTAPPS_DYNAMIC=ON,"
PACKAGECONFIG[systemd] = "-DLWS_WITH_SDEVENT=ON,-DLWS_WITH_SDEVENT=OFF,systemd"
PACKAGECONFIG[examples] = "-DLWS_WITH_MINIMAL_EXAMPLES=ON,-DLWS_WITH_MINIMAL_EXAMPLES=OFF"
python __anonymous() {
if bb.utils.contains('PACKAGECONFIG', 'systemd', True, False, d) and not bb.utils.contains('DISTRO_FEATURES', 'systemd', True, False, d):