Ignore log files with corrupted headers too

When trying to sort log files, it is worth the extra cost to confirm
that the header is valid before reading it.  Verify all headers and
ignore any log files which don't match.

Change-Id: Ief2f43ba53ab9454b80bfb097a0ec72710a38389
diff --git a/aos/events/logging/logfile_utils.cc b/aos/events/logging/logfile_utils.cc
index 9316795..98527dc 100644
--- a/aos/events/logging/logfile_utils.cc
+++ b/aos/events/logging/logfile_utils.cc
@@ -362,7 +362,11 @@
   ResizeableBuffer data;
   data.resize(config_data.size());
   memcpy(data.data(), config_data.begin(), data.size());
-  return SizePrefixedFlatbufferVector<LogFileHeader>(std::move(data));
+  SizePrefixedFlatbufferVector<LogFileHeader> result(std::move(data));
+  if (!result.Verify()) {
+    return std::nullopt;
+  }
+  return result;
 }
 
 std::optional<SizePrefixedFlatbufferVector<MessageHeader>> ReadNthMessage(
@@ -382,7 +386,11 @@
   ResizeableBuffer data;
   data.resize(data_span.size());
   memcpy(data.data(), data_span.begin(), data.size());
-  return SizePrefixedFlatbufferVector<MessageHeader>(std::move(data));
+  SizePrefixedFlatbufferVector<MessageHeader> result(std::move(data));
+  if (!result.Verify()) {
+    return std::nullopt;
+  }
+  return result;
 }
 
 MessageReader::MessageReader(std::string_view filename)