Hints DB: harden against corrupt files by ignoring unexpected size records
[exim.git] / src / src / transports / smtp.c
index 2a600d4806cffa0226a22af3d655c69797adaa4e..301d84c2e4415aabff5fbe0a370764395be64be9 100644 (file)
@@ -805,7 +805,7 @@ else
   uschar * ehlo_resp_key = ehlo_cache_key(sx);
   dbdata_ehlo_resp * er;
 
-  if (!(er = dbfn_read(dbm_file, ehlo_resp_key)))
+  if (!(er = dbfn_read_enforce_length(dbm_file, ehlo_resp_key, sizeof(dbdata_ehlo_resp))))
     { DEBUG(D_transport) debug_printf("no ehlo-resp record\n"); }
   else if (time(NULL) - er->time_stamp > retry_data_expire)
     {