PR 33385 EOM

Message ID aL7OsupLrvmHNeBe@squeak.grove.modra.org
State New
Headers
Series PR 33385 EOM |

Commit Message

Alan Modra Sept. 8, 2025, 12:40 p.m. UTC
  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.
  

Patch

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;