Re: [PATCH] eif: cope with huge section offsets

2024-11-06 Thread Dorjoy Chowdhury
On Wed, Nov 6, 2024 at 11:58 PM Paolo Bonzini wrote: > > On Wed, Nov 6, 2024 at 6:54 PM Pierrick Bouvier > wrote: > > > > On 11/6/24 09:49, Paolo Bonzini wrote: > > > On Wed, Nov 6, 2024 at 6:47 PM Pierrick Bouvier > > > wrote: > > > > > >>>for (int i = 0; i < MAX_SECTIONS; ++i) { > > >>

Re: [PATCH] eif: cope with huge section offsets

2024-11-06 Thread Paolo Bonzini
On Wed, Nov 6, 2024 at 6:54 PM Pierrick Bouvier wrote: > > On 11/6/24 09:49, Paolo Bonzini wrote: > > On Wed, Nov 6, 2024 at 6:47 PM Pierrick Bouvier > > wrote: > > > >>>for (int i = 0; i < MAX_SECTIONS; ++i) { > >>>header->section_offsets[i] = > >>> be64_to_cpu(header->secti

Re: [PATCH] eif: cope with huge section offsets

2024-11-06 Thread Pierrick Bouvier
On 11/6/24 09:49, Paolo Bonzini wrote: On Wed, Nov 6, 2024 at 6:47 PM Pierrick Bouvier wrote: for (int i = 0; i < MAX_SECTIONS; ++i) { header->section_offsets[i] = be64_to_cpu(header->section_offsets[i]); +if (header->section_offsets[i] > OFF_MAX) { Maybe we could a

Re: [PATCH] eif: cope with huge section offsets

2024-11-06 Thread Paolo Bonzini
On Wed, Nov 6, 2024 at 6:47 PM Pierrick Bouvier wrote: > > for (int i = 0; i < MAX_SECTIONS; ++i) { > > header->section_offsets[i] = > > be64_to_cpu(header->section_offsets[i]); > > +if (header->section_offsets[i] > OFF_MAX) { > > Maybe we could add a comment that section

Re: [PATCH] eif: cope with huge section offsets

2024-11-06 Thread Pierrick Bouvier
On 11/6/24 09:42, Paolo Bonzini wrote: Check for overflow to avoid that fseek() receives a sign-extended value. Signed-off-by: Paolo Bonzini --- include/qemu/osdep.h | 4 hw/core/eif.c| 4 2 files changed, 8 insertions(+) diff --git a/include/qemu/osdep.h b/include/qem

[PATCH] eif: cope with huge section offsets

2024-11-06 Thread Paolo Bonzini
Check for overflow to avoid that fseek() receives a sign-extended value. Signed-off-by: Paolo Bonzini --- include/qemu/osdep.h | 4 hw/core/eif.c| 4 2 files changed, 8 insertions(+) diff --git a/include/qemu/osdep.h b/include/qemu/osdep.h index fe7c3c5f673..fdff07fd992 100644