Message ID | 20240305-elf2dmp-v2-8-86ff2163ad32@daynix.com |
---|---|
State | New |
Headers | show |
Series | contrib/elf2dmp: Improve robustness | expand |
On Tue, 5 Mar 2024 at 07:36, Akihiko Odaki <akihiko.odaki@daynix.com> wrote: > > This resolved UBSan warnings. > > Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com> > --- > contrib/elf2dmp/pdb.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/contrib/elf2dmp/pdb.c b/contrib/elf2dmp/pdb.c > index 1c5051425185..492aca4434c8 100644 > --- a/contrib/elf2dmp/pdb.c > +++ b/contrib/elf2dmp/pdb.c > @@ -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 + Same comment still applies as on v1 version of this patch. thanks -- PMM
diff --git a/contrib/elf2dmp/pdb.c b/contrib/elf2dmp/pdb.c index 1c5051425185..492aca4434c8 100644 --- a/contrib/elf2dmp/pdb.c +++ b/contrib/elf2dmp/pdb.c @@ -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 +
This resolved UBSan warnings. Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com> --- contrib/elf2dmp/pdb.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)