![Pierre-Jean Texier](/assets/img/avatar_default.png)
New features in this release: - Improved documentation - delta updates based on rdiff library - support for libubootenv - dry-run option - CA certificates for signed images - Fix security leak in parser This commit also: - introduce BR2_PACKAGE_LIBRSYNC for 'rdiff' Handler. No HAVE_* is needed, it just declares the functions locally and links with -lrsync. - introduce BR2_PACKAGE_LIBUBOOTENV - drop upstreamed patch - backport upstream patches (important fix) - regenerate the default swupdate.config. Now CONFIG_GUNZIP is always enabled because gunzip is provided by the default busybox config. Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io> [Arnout: don't mention ZLIB in help text for libubootenv, since it is select'ed by libubootenv.] Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
43 lines
1.5 KiB
Diff
43 lines
1.5 KiB
Diff
From ee17493d470ae7fd7b34241f263cfa6d790ce1b3 Mon Sep 17 00:00:00 2001
|
|
From: Christian Storm <christian.storm@siemens.com>
|
|
Date: Tue, 21 May 2019 14:45:51 +0200
|
|
Subject: [PATCH] Lua: fix segfault in image property handling
|
|
|
|
table2image() calls lua_dump_table() with the 'key' parameter being
|
|
NULL and the 'img' parameter set. Subsequently, dict_insert_value() is
|
|
called with key == NULL if the Lua stack key's type is string or number,
|
|
segfaulting SWUpdate.
|
|
|
|
Signed-off-by: Christian Storm <christian.storm@siemens.com>
|
|
Reported-by: Akihiro Suzuki <akihiro27.suzuki@toshiba.co.jp>
|
|
Acked-by: Stefano Babic <sbabic@denx.de>
|
|
[Backported from: ee17493d470ae7fd7b34241f263cfa6d790ce1b3]
|
|
Signed-off-by: Pierre-Jean Texier <pjtexier@koncepto.io>
|
|
---
|
|
corelib/lua_interface.c | 8 ++++----
|
|
1 file changed, 4 insertions(+), 4 deletions(-)
|
|
|
|
diff --git a/corelib/lua_interface.c b/corelib/lua_interface.c
|
|
index d4ebe4a..443f149 100644
|
|
--- a/corelib/lua_interface.c
|
|
+++ b/corelib/lua_interface.c
|
|
@@ -80,11 +80,11 @@ static void lua_dump_table(lua_State *L, char *str, struct img_type *img, const
|
|
lua_tostring(L, -1),
|
|
lua_tostring(L, -2));
|
|
if (img) {
|
|
- TRACE("Inserting property %s[%s] = %s",
|
|
- key,
|
|
- lua_tostring(L, -1),
|
|
+ TRACE("Inserting property %s = %s",
|
|
+ key ? key : lua_tostring(L, -1),
|
|
lua_tostring(L, -2));
|
|
- dict_insert_value(&img->properties, key,
|
|
+ dict_insert_value(&img->properties,
|
|
+ key ? key : lua_tostring(L, -1),
|
|
lua_tostring(L, -2));
|
|
}
|
|
break;
|
|
--
|
|
2.7.4
|
|
|