PR 33385 EOM
Alan Modra
amodra@gmail.com
Mon Sep 8 12:40:18 GMT 2025
Another PR 21813 modification.
* vmd-alpha.c (_bfd_vms_slurp_eeom): Allow 10 byte EOM.
Don't set has_transfer or access fields past 10 bytes unless
the entire EEOM is there.
diff --git a/bfd/vms-alpha.c b/bfd/vms-alpha.c
index 09d343762b0..d963ff7bb48 100644
--- a/bfd/vms-alpha.c
+++ b/bfd/vms-alpha.c
@@ -2649,7 +2649,7 @@ _bfd_vms_slurp_eeom (bfd *abfd)
vms_debug2 ((2, "EEOM\n"));
/* PR 21813: Check for an undersized record. */
- if (PRIV (recrd.buf_size) < sizeof (* eeom))
+ if (PRIV (recrd.rec_size) < 10)
{
_bfd_error_handler (_("corrupt EEOM record - size is too small"));
bfd_set_error (bfd_error_bad_value);
@@ -2666,7 +2666,7 @@ _bfd_vms_slurp_eeom (bfd *abfd)
}
PRIV (eom_data).eom_has_transfer = false;
- if (PRIV (recrd.rec_size) > 10)
+ if (PRIV (recrd.rec_size) >= sizeof (*eeom))
{
PRIV (eom_data).eom_has_transfer = true;
PRIV (eom_data).eom_b_tfrflg = eeom->tfrflg;
--
Alan Modra
More information about the Binutils
mailing list