* [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
* Re: [PATCH 1/1] EmbeddedPkg: Fixed Asserts in SCT Runtime Services test.
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
0 siblings, 0 replies; 4+ messages in thread
From: Ard Biesheuvel @ 2020-02-17 8:31 UTC (permalink / raw)
To: Gaurav Jain; +Cc: edk2-devel-groups-io, Leif Lindholm, Pankaj Bansal
On Mon, 17 Feb 2020 at 08:31, Gaurav Jain <gaurav.jain@nxp.com> wrote:
>
> 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>
If this is a followup that supersedes your previous submission, it
would be helpful to label this one as v2, and mention (below the ---)
what the changes are wrt v1.
> ---
> 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 [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
* Re: [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, 0 replies; 4+ messages in thread
From: Ard Biesheuvel @ 2020-01-30 9:21 UTC (permalink / raw)
To: Gaurav Jain; +Cc: devel@edk2.groups.io, Leif Lindholm, Pankaj Bansal
On Thu, 30 Jan 2020 at 06:08, Gaurav Jain <gaurav.jain@nxp.com> wrote:
>
> ASSERT in SetTime_Conf and SetWakeupTime_Conf Consistency Test.
> SCT Test expect return as Invalid Parameter.
> So removed ASSERT().
>
This is not all this patch does.
> 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 ||
That original range is based on the UEFI spec. On what basis are you
making this change?
If your RTC hardware cannot represent the original values, this is not
the place to fix that.
> 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 [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