contrib/elf2dmp: Use lduw_le_p() to read PDB

The relevant value may be unaligned and is little-endian.

Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Tested-by: Viktor Prutyanov <viktor.prutyanov@phystech.edu>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-id: 20240307-elf2dmp-v4-13-4f324ad4d99d@daynix.com
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
master
Akihiko Odaki 2024-03-07 19:20:56 +09:00 committed by Peter Maydell
parent 667909478b
commit 2aa501af35
1 changed files with 2 additions and 1 deletions

View File

@ -19,6 +19,7 @@
*/
#include "qemu/osdep.h"
#include "qemu/bswap.h"
#include "pdb.h"
#include "err.h"
@ -186,7 +187,7 @@ static bool pdb_init_symbols(struct pdb_reader *r)
r->symbols = symbols;
r->segments = *(uint16_t *)((const char *)symbols + sizeof(PDB_SYMBOLS) +
r->segments = lduw_le_p((const char *)symbols + sizeof(PDB_SYMBOLS) +
symbols->module_size + symbols->offset_size +
symbols->hash_size + symbols->srcmodule_size +
symbols->pdbimport_size + symbols->unknown2_size +