[edk2-devel] [PATCH v2 1/1] EmbeddedPkg: Fixed Asserts in SCT Runtime Services test.
Gaurav Jain
gaurav.jain at nxp.com
Tue Feb 18 12:23:54 UTC 2020
ASSERT in SetTime_Conf and SetWakeupTime_Conf Consistency Test.
SCT Test expect return as Invalid Parameter.
So removed ASSERT().
Added Time Validity Checks in SetWakeupTime.
Signed-off-by: Gaurav Jain <gaurav.jain at nxp.com>
---
Changes in v2:
- reverted changes related to valid range of years.
---
EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClock.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClock.c b/EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClock.c
index 08fb9b0100b6..70a0d78125b9 100644
--- a/EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClock.c
+++ b/EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClock.c
@@ -85,10 +85,6 @@ IsDayValid (
IN EFI_TIME *Time
)
{
- ASSERT (Time->Day >= 1);
- ASSERT (Time->Day <= mDayOfMonth[Time->Month - 1]);
- ASSERT (Time->Month != 2 || IsLeapYear (Time) || Time->Day <= 28);
-
if (Time->Day < 1 ||
Time->Day > mDayOfMonth[Time->Month - 1] ||
(Time->Month == 2 && !IsLeapYear (Time) && Time->Day > 28)) {
@@ -113,6 +109,7 @@ IsTimeValid(
Time->Hour > 23 ||
Time->Minute > 59 ||
Time->Second > 59 ||
+ Time->Nanosecond > 999999999 ||
!IsValidTimeZone (Time->TimeZone) ||
!IsValidDaylight (Time->Daylight)) {
return FALSE;
@@ -254,6 +251,9 @@ SetWakeupTime (
OUT EFI_TIME *Time
)
{
+ if (Time == NULL || !IsTimeValid (Time)) {
+ return EFI_INVALID_PARAMETER;
+ }
return LibSetWakeupTime (Enabled, Time);
}
--
2.17.1
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#54571): https://edk2.groups.io/g/devel/message/54571
Mute This Topic: https://groups.io/mt/71367009/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list