From: Felix Fietkau Date: Mon, 29 Sep 2025 12:08:08 +0000 (+0200) Subject: ucode: update to Git HEAD (2025-09-29) X-Git-Url: http://git.openwrt.org/?a=commitdiff_plain;h=2f6a467f6caf67f7bcba41adcaf6cd12cbdec612;p=openwrt%2Fstaging%2Fnbd.git ucode: update to Git HEAD (2025-09-29) f642f65c3d00 rtnl: optimize string attribute encoding 1946c571eb25 nl80211: rework string attribute encoding 6b16cd37373a nl80211: properly handle decoding numeric struct members 5a342b86c010 nl80211: support sending requests on listener socket cd2850eec8ca lib: fix `rindex()` return value when needle at the start of the haystack 23b21eb2e8cb ubus: add connection functions to global scope a5b206f60f5d struct: align `X` and `Z` length & truncation semantics with `*` 387880348c89 nl80211: read all pending event messages 470bc3ebffe0 uloop: fix potential use-after-free when destroying uloop entities Signed-off-by: Felix Fietkau --- diff --git a/package/utils/ucode/Makefile b/package/utils/ucode/Makefile index f045eeb8ee..5cd0a762a2 100644 --- a/package/utils/ucode/Makefile +++ b/package/utils/ucode/Makefile @@ -12,9 +12,9 @@ PKG_RELEASE:=1 PKG_SOURCE_PROTO:=git PKG_SOURCE_URL=https://github.com/jow-/ucode.git -PKG_SOURCE_DATE:=2025-08-26 -PKG_SOURCE_VERSION:=5f712ffd3f31f13ed4812cfb37c21dbef7a75e2b -PKG_MIRROR_HASH:=6093ceb320854f4d38180f163fd702bceb8785ed6574aa145021eda82a9cf7b4 +PKG_SOURCE_DATE:=2025-09-29 +PKG_SOURCE_VERSION:=1090abb125490d2f541f68453cc251daf94f8b04 +PKG_MIRROR_HASH:=b68d893867add47b92d519a631c4e3bacec52eafae088b6a64ba3935f169bb15 PKG_MAINTAINER:=Jo-Philipp Wich PKG_LICENSE:=ISC diff --git a/package/utils/ucode/patches/100-ubus-add-connection-functions-to-global-scope.patch b/package/utils/ucode/patches/100-ubus-add-connection-functions-to-global-scope.patch deleted file mode 100644 index 4a232346ff..0000000000 --- a/package/utils/ucode/patches/100-ubus-add-connection-functions-to-global-scope.patch +++ /dev/null @@ -1,69 +0,0 @@ -From: Felix Fietkau -Date: Tue, 26 Aug 2025 10:17:22 +0200 -Subject: [PATCH] ubus: add connection functions to global scope - -Allows reusing a common global connection across modules - -Signed-off-by: Felix Fietkau ---- - ---- a/lib/ubus.c -+++ b/lib/ubus.c -@@ -511,16 +511,42 @@ uc_ubus_objects_cb(struct ubus_context * - static bool - _conn_get(uc_vm_t *vm, uc_ubus_connection_t **conn) - { -- uc_ubus_connection_t *c = uc_fn_thisval("ubus.connection"); -+ uc_ubus_connection_t *c; -+ uc_value_t *res; - -- if (!c) -- c = uc_fn_thisval("ubus.channel"); -- if (!c) -- err_return(UBUS_STATUS_INVALID_ARGUMENT, "Invalid connection context"); -+ if (ucv_type(_uc_fn_this_res(vm)) == UC_OBJECT) { -+ res = uc_vm_registry_get(vm, "ubus.connection"); -+ c = ucv_resource_data(res, "ubus.connection"); -+ -+ if (c && c->ctx.sock.fd >= 0) -+ goto out; -+ -+ c = uc_ubus_conn_alloc(vm, NULL, "ubus.connection"); -+ if (!c) -+ return NULL; -+ -+ if (ubus_connect_ctx(&c->ctx, NULL)) { -+ ucv_put(c->res); -+ err_return(UBUS_STATUS_UNKNOWN_ERROR, "Unable to connect to ubus socket"); -+ } -+ -+ ubus_add_uloop(&c->ctx); - -- if (c->ctx.sock.fd < 0) -- err_return(UBUS_STATUS_CONNECTION_FAILED, "Connection is closed"); -+ uc_vm_registry_set(vm, "ubus.connection", ucv_get(c->res)); -+ } -+ else { -+ c = uc_fn_thisval("ubus.connection"); -+ if (!c) -+ c = uc_fn_thisval("ubus.channel"); -+ -+ if (!c) -+ err_return(UBUS_STATUS_INVALID_ARGUMENT, "Invalid connection context"); - -+ if (c->ctx.sock.fd < 0) -+ err_return(UBUS_STATUS_CONNECTION_FAILED, "Connection is closed"); -+ } -+ -+out: - *conn = c; - - ok_return(true); -@@ -2606,6 +2632,7 @@ static void free_request(void *ud) { - void uc_module_init(uc_vm_t *vm, uc_value_t *scope) - { - uc_function_list_register(scope, global_fns); -+ uc_function_list_register(scope, conn_fns); - - #define ADD_CONST(x) ucv_object_add(scope, #x, ucv_int64_new(UBUS_##x)) - ADD_CONST(STATUS_OK);