From 1b5d39bfbc48c33a0ea0924b60e48448c8b45dd4 Mon Sep 17 00:00:00 2001 From: Cyrille Bagard Date: Thu, 29 Dec 2016 11:39:41 +0100 Subject: Validated a safety check. --- ChangeLog | 5 +++++ src/analysis/disass/limit.c | 9 ++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8fec1ea..68ece4c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 16-12-29 Cyrille Bagard + * src/analysis/disass/limit.c: + Validate a safety check. + +16-12-29 Cyrille Bagard + * src/arch/arm/v7/core.c: * src/arch/arm/v7/core.h: * src/core/processors.c: diff --git a/src/analysis/disass/limit.c b/src/analysis/disass/limit.c index 18d089a..d0959b7 100644 --- a/src/analysis/disass/limit.c +++ b/src/analysis/disass/limit.c @@ -58,11 +58,14 @@ void compute_routine_limit(GBinRoutine *routine, GBinRoutine *prev, GArchProcess start = g_arch_processor_find_instr_by_address(proc, &addr); - - /* FIXME ? */ + /** + * On considère que les symboles chargés à partir du format peuvent + * être corrompus, potentiellement pour faire planter un analyseur. + * + * Donc on s'autorise à être prudent. + */ if (start == NULL) goto crl_skip; - g_arch_instruction_set_flag(start, AIF_ROUTINE_START); g_object_unref(G_OBJECT(start)); -- cgit v0.11.2-87-g4458