diff --git a/meta-oe/recipes-connectivity/libwebsockets/libwebsockets/CVE-2026-10650.patch b/meta-oe/recipes-connectivity/libwebsockets/libwebsockets/CVE-2026-10650.patch
deleted file mode 100644
index 5846b3616d..0000000000
--- a/meta-oe/recipes-connectivity/libwebsockets/libwebsockets/CVE-2026-10650.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-From 3f9f0c6ecaf0e6f3f219d30632c5d1f2479d7498 Mon Sep 17 00:00:00 2001
-From: Biniam F Demissie <biniamfd@gmail.com>
-Date: Wed, 13 May 2026 04:25:55 +0100
-Subject: [PATCH] ssh: plugin: add limit to resource exhaustion
-
-CVE: CVE-2026-10650
-Upstream-Status: Backport [https://github.com/warmcat/libwebsockets/commit/3f9f0c6ecaf0e6f3f219d30632c5d1f2479d7498]
-Signed-off-by: Peter Marko <peter.marko@siemens.com>
----
- plugins/ssh-base/sshd.c | 9 ++++++++-
- 1 file changed, 8 insertions(+), 1 deletion(-)
-
-diff --git a/plugins/ssh-base/sshd.c b/plugins/ssh-base/sshd.c
-index ea35cb8b7..c849644d4 100644
---- a/plugins/ssh-base/sshd.c
-+++ b/plugins/ssh-base/sshd.c
-@@ -1,7 +1,7 @@
- /*
-  * libwebsockets - small server side websockets and web server implementation
-  *
-- * Copyright (C) 2010 - 2019 Andy Green <andy@warmcat.com>
-+ * Copyright (C) 2010 - 2026 Andy Green <andy@warmcat.com>
-  *
-  * Permission is hereby granted, free of charge, to any person obtaining a copy
-  * of this software and associated documentation files (the "Software"), to
-@@ -28,6 +28,8 @@
- #include <string.h>
- #include <stdlib.h>
- 
-+#define LWS_SSH_MAX_PACKET_SIZE  (256 * 1024)
-+
- void *sshd_zalloc(size_t s)
- {
- 	void *p = malloc(s);
-@@ -592,6 +594,11 @@ again:
- 			pss->parser_state = SSHS_MSG_PADDING;
- 			pss->ctr = 0;
- 			pss->pos = 4;
-+
-+			if (pss->msg_len > LWS_SSH_MAX_PACKET_SIZE) {
-+				lwsl_notice("msg size %u exceeds maximum\n", pss->msg_len);
-+				goto bail;
-+			}
- 			if (pss->msg_len < 2 + 4) {
- 				lwsl_notice("illegal msg size\n");
- 				goto bail;
diff --git a/meta-oe/recipes-connectivity/libwebsockets/libwebsockets_4.5.8.bb b/meta-oe/recipes-connectivity/libwebsockets/libwebsockets_5.0.0.bb
similarity index 86%
rename from meta-oe/recipes-connectivity/libwebsockets/libwebsockets_4.5.8.bb
rename to meta-oe/recipes-connectivity/libwebsockets/libwebsockets_5.0.0.bb
index 005729dcac..bafaf10f9b 100644
--- a/meta-oe/recipes-connectivity/libwebsockets/libwebsockets_4.5.8.bb
+++ b/meta-oe/recipes-connectivity/libwebsockets/libwebsockets_5.0.0.bb
@@ -1,15 +1,15 @@
 SUMMARY = "Canonical libwebsockets.org websocket library"
 HOMEPAGE = "https://libwebsockets.org/"
 LICENSE = "Apache-2.0 AND BSD-3-Clause AND MIT AND OFL-1.1 AND Zlib"
-LIC_FILES_CHKSUM = "file://LICENSE;md5=b5d391cc7929bcba238f9ba6805f7574"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=d1d99ab4e0f1be7992a891906e47add2"
 
 DEPENDS = "zlib"
 DEPENDS:append:class-native = " libcap-native"
 
-SRCREV = "fbb0baf6af9c4324f0f1591734c78b0089b599d4"
+SRCREV = "2491a1b101283cf7886d05033345b7e821825319"
+SRCBRANCH = "v${@oe.utils.trim_version("${PV}", 2)}-stable"
 SRC_URI = " \
-    git://github.com/warmcat/libwebsockets.git;protocol=https;branch=v4.5-stable;tag=v${PV} \
-    file://CVE-2026-10650.patch \
+    git://github.com/warmcat/libwebsockets.git;protocol=https;branch=${SRCBRANCH};tag=v${PV} \
 "
 
 UPSTREAM_CHECK_URI = "https://github.com/warmcat/${BPN}/releases"
@@ -20,25 +20,29 @@ inherit cmake pkgconfig
 PACKAGECONFIG ?= "libuv client server http2 ssl ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}"
 PACKAGECONFIG[client] = "-DLWS_WITHOUT_CLIENT=OFF,-DLWS_WITHOUT_CLIENT=ON,"
 PACKAGECONFIG[http2] = "-DLWS_WITH_HTTP2=ON,-DLWS_WITH_HTTP2=OFF,"
+PACKAGECONFIG[http3] = "-DLWS_WITH_HTTP3=ON -DLWS_ROLE_QUIC=ON,-DLWS_WITH_HTTP3=OFF -DLWS_ROLE_QUIC=OFF,gnutls"
 PACKAGECONFIG[ipv6] = "-DLWS_IPV6=ON,-DLWS_IPV6=OFF,"
 PACKAGECONFIG[libevent] = "-DLWS_WITH_LIBEVENT=ON,-DLWS_WITH_LIBEVENT=OFF,libevent"
 PACKAGECONFIG[libev] = "-DLWS_WITH_LIBEV=ON,-DLWS_WITH_LIBEV=OFF,libev"
 PACKAGECONFIG[libuv] = "-DLWS_WITH_LIBUV=ON,-DLWS_WITH_LIBUV=OFF,libuv"
 PACKAGECONFIG[server] = "-DLWS_WITHOUT_SERVER=OFF,-DLWS_WITHOUT_SERVER=ON,"
-PACKAGECONFIG[ssl] = "-DLWS_WITH_SSL=ON,-DLWS_WITH_SSL=OFF,openssl libcap"
+PACKAGECONFIG[ssl] = "-DLWS_WITH_SSL=ON,-DLWS_WITH_SSL=OFF,${SSL_DEPENDENCY} libcap"
+PACKAGECONFIG[gnutls] = "-DLWS_WITH_GNUTLS=ON,-DLWS_WITH_GNUTLS=OFF,gnutls"
 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"
 
+SSL_DEPENDENCY = "${@bb.utils.contains('PACKAGECONFIG', 'gnutls', '', 'openssl', d)}"
+
 python __anonymous() {
   if bb.utils.contains('PACKAGECONFIG', 'systemd', True, False, d) and not bb.utils.contains('DISTRO_FEATURES', 'systemd', True, False, d):
     bb.fatal("PACKAGECONFIG contains systemd but DISTRO_FEATURES doesn't")
 }
 
 EXTRA_OECMAKE += " \
-    -DLIB_SUFFIX=${@d.getVar('baselib').replace('lib', '')} \
     -DLWS_WITHOUT_TESTAPPS=ON \
     -DLWS_HAVE_HMAC_CTX_new=ON \
+    -DDISABLE_WERROR=ON \
 "
 
 do_compile:prepend() {
