public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [PATCH 1/1] EmbeddedPkg: Fixed Asserts in SCT Runtime Services test.
@ 2020-02-17 12:51 Gaurav Jain
  2020-02-17  8:31 ` Ard Biesheuvel
  0 siblings, 1 reply; 4+ messages in thread
From: Gaurav Jain @ 2020-02-17 12:51 UTC (permalink / raw)
  To: devel; +Cc: Leif Lindholm, Ard Biesheuvel, Pankaj Bansal, Gaurav Jain

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@nxp.com>
---
 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


^ permalink raw reply related	[flat|nested] 4+ messages in thread
* [PATCH 1/1] EmbeddedPkg: Fixed Asserts in SCT Runtime Services test.
@ 2020-01-30  5:08 Gaurav Jain
  2020-01-30  9:21 ` Ard Biesheuvel
  0 siblings, 1 reply; 4+ messages in thread
From: Gaurav Jain @ 2020-01-30  5:08 UTC (permalink / raw)
  To: devel@edk2.groups.io
  Cc: Leif Lindholm, Ard Biesheuvel, Pankaj Bansal, Gaurav Jain

ASSERT in SetTime_Conf and SetWakeupTime_Conf Consistency Test.
SCT Test expect return as Invalid Parameter.
So removed ASSERT().

Signed-off-by: Gaurav Jain <gaurav.jain@nxp.com>
---
 EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClock.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClock.c b/EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClock.c
index 08fb9b0100b6..9bfb7756f0cb 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)) {
@@ -105,14 +101,15 @@ IsTimeValid(
   )
 {
   // Check the input parameters are within the range specified by UEFI
-  if (Time->Year   < 1900               ||
-      Time->Year   > 9999               ||
+  if (Time->Year   < 1998               ||
+      Time->Year   > 2099               ||
       Time->Month  < 1                  ||
       Time->Month  > 12                 ||
       !IsDayValid (Time)                ||
       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


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-02-17  8:31 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-02-17 12:51 [PATCH 1/1] EmbeddedPkg: Fixed Asserts in SCT Runtime Services test Gaurav Jain
2020-02-17  8:31 ` Ard Biesheuvel
  -- strict thread matches above, loose matches on Subject: below --
2020-01-30  5:08 Gaurav Jain
2020-01-30  9:21 ` Ard Biesheuvel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox