[OpenWrt-Devel] [PATCH fstools 1/2] blockd: fix vlist memory corruption

Rafał Miłecki zajec5 at gmail.com
Fri Dec 13 05:05:11 EST 2019

From: Rafał Miłecki <rafal at milecki.pl>

vlist_add() expects key to point a persistent memory as it doesn't make
its copy. Passing blob_attr of current message was resulting in
undefined/random behavior including list corruption and possible

Signed-off-by: Rafał Miłecki <rafal at milecki.pl>
 blockd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/blockd.c b/blockd.c
index 88fe168..7375b2b 100644
--- a/blockd.c
+++ b/blockd.c
@@ -255,7 +255,7 @@ block_hotplug(struct ubus_context *ctx, struct ubus_object *obj,
 		strcpy(_name, devname);
 		device->target = __target;
 		strcpy(__target, target);
-		vlist_add(&devices, &device->node, blobmsg_get_string(data[MOUNT_DEVICE]));
+		vlist_add(&devices, &device->node, device->name);

openwrt-devel mailing list
openwrt-devel at lists.openwrt.org

More information about the openwrt-devel mailing list