ltrace/ppc64le-use-after-free.patch

17 lines
642 B
Diff

Index: ltrace-0.7.91+git20230705.8eabf68/sysdeps/linux-gnu/ppc/plt.c
===================================================================
--- ltrace-0.7.91+git20230705.8eabf68.orig/sysdeps/linux-gnu/ppc/plt.c
+++ ltrace-0.7.91+git20230705.8eabf68/sysdeps/linux-gnu/ppc/plt.c
@@ -688,10 +688,10 @@ arch_elf_add_func_entry(struct process *
|| library_symbol_init(libsym, addr, full_name, 1,
LS_TOPLT_NONE) < 0) {
delete_symbol_chain(libsym);
- free(libsym);
libsym = NULL;
fprintf(stderr, "Couldn't add symbol %s"
"for tracing.\n", name);
+ return PLT_FAIL;
}
full_name = NULL;
libsym->next = *ret;