From 7c8f8725724a54538ddd4ae03404276725f4fb8f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timo=20Ter=C3=A4s?= Date: Mon, 8 Nov 2021 14:25:13 +0200 Subject: [PATCH] adbdump: fix dumping signatures give a fake trust root allowing anything. adbdump code will verify and dump each signature individually. --- src/adb_walk_adb.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/adb_walk_adb.c b/src/adb_walk_adb.c index 1127487..3ceac56 100644 --- a/src/adb_walk_adb.c +++ b/src/adb_walk_adb.c @@ -154,6 +154,9 @@ static int adb_walk_block(struct adb *db, struct adb_block *b, struct apk_istrea int adb_walk_adb(struct adb_walk *d, struct apk_istream *is, struct apk_trust *trust) { + struct apk_trust allow_untrusted = { + .allow_untrusted = 1, + }; struct adb_walk_ctx ctx = { .d = d, .trust = trust, @@ -162,7 +165,7 @@ int adb_walk_adb(struct adb_walk *d, struct apk_istream *is, struct apk_trust *t if (IS_ERR(is)) return PTR_ERR(is); - r = adb_m_process(&ctx.db, is, 0, 0, adb_walk_block); + r = adb_m_process(&ctx.db, is, 0, &allow_untrusted, adb_walk_block); adb_free(&ctx.db); return r; }