From 9a93f9e340c011dcd45e3a9c18bd8f85898a14c5 Mon Sep 17 00:00:00 2001 From: Nick Chan Date: Sun, 12 Feb 2023 23:11:16 +0800 Subject: [PATCH] uaf fix --- src/dfuhelper.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/dfuhelper.c b/src/dfuhelper.c index 67c0876..66169e1 100644 --- a/src/dfuhelper.c +++ b/src/dfuhelper.c @@ -96,12 +96,13 @@ void* connected_recovery_mode(struct irecv_device_info* info) { cpid = info->cpid; ecid = info->ecid; bdid = info->bdid; - if (!cpid_is_arm64(info->cpid)) { + info = NULL; + if (!cpid_is_arm64(cpid)) { LOG(LOG_WARNING, "Ignoring non-arm64 device..."); return NULL; } sleep(1); - ret = autoboot_cmd(info->ecid); + ret = autoboot_cmd(ecid); if (ret) { LOG(LOG_ERROR, "Cannot set auto-boot back to true"); return NULL; @@ -113,9 +114,8 @@ void* connected_recovery_mode(struct irecv_device_info* info) { step(4, 2, "Hold volume down + side button", NULL, 0); else step(4, 2, "Hold home + power button", NULL, 0); - set_ecid_wait_for_dfu(info->ecid); - ret = exitrecv_cmd(info->ecid); - info = NULL; + set_ecid_wait_for_dfu(ecid); + ret = exitrecv_cmd(ecid); if (ret) { LOG(LOG_ERROR, "Cannot exit recovery mode"); set_ecid_wait_for_dfu(0);