Merge "Replace firmware build time with epoch" into main
diff --git a/src/adaptations/device-layer/include/Weave/DeviceLayer/internal/GenericConfigurationManagerImpl.ipp b/src/adaptations/device-layer/include/Weave/DeviceLayer/internal/GenericConfigurationManagerImpl.ipp
index 9551759..db8c880 100644
--- a/src/adaptations/device-layer/include/Weave/DeviceLayer/internal/GenericConfigurationManagerImpl.ipp
+++ b/src/adaptations/device-layer/include/Weave/DeviceLayer/internal/GenericConfigurationManagerImpl.ipp
@@ -143,15 +143,25 @@
 {
     WEAVE_ERROR err = WEAVE_NO_ERROR;
 
-    // TODO: Allow build time to be overridden by compile-time config (e.g. WEAVE_DEVICE_CONFIG_FIRMWARE_BUILD_TIME).
+    // See http://fxbug.dev/128466.
+    //
+    // Report that the firmware build time is epoch. This time is used in
+    // OpenWeave's CASEAuth implementation as a fallback when real time cannot
+    // be acquired. In Fuchsia's implementation
+    // (src/connectivity/weave/adapatation/platform_auth_delegate.cpp), we
+    // override that CASEAuth function with our own implementation, so this
+    // fallback is not used.
+    //
+    // In general, this function should not be used for load-bearing certificate
+    // checks and will always return the epoch.
+    year = 1970;
+    month = 1;
+    dayOfMonth = 1;
 
-    err = ParseCompilerDateStr(__DATE__, year, month, dayOfMonth);
-    SuccessOrExit(err);
+    hour = 0;
+    minute = 0;
+    second = 0;
 
-    err = Parse24HourTimeStr(__TIME__, hour, minute, second);
-    SuccessOrExit(err);
-
-exit:
     return err;
 }