* [edk2-devel] [PATCH 1/1] uefi-sct/SctPkg: SNP ReceiveFilters may be unsupported
@ 2019-09-17 5:09 Heinrich Schuchardt
0 siblings, 0 replies; only message in thread
From: Heinrich Schuchardt @ 2019-09-17 5:09 UTC (permalink / raw)
To: EDK II Development
Cc: Eric Jin, Supreeth Venkatesh, Stephano Cetola,
Heinrich Schuchardt
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=2197
If EFI_SIMPLE_NETWORK.ReceiveFilters() is not supported, it will return
EFI_UNSUPPORTED. In this case do not expect input parameters to be checked
for conformance.
Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
---
.../SimpleNetworkBBTestConformance.c | 223 +++++++++++-------
1 file changed, 138 insertions(+), 85 deletions(-)
diff --git a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleNetwork/BlackBoxTest/SimpleNetworkBBTestConformance.c b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleNetwork/BlackBoxTest/SimpleNetworkBBTestConformance.c
index 9bd21a76..09b47ee6 100644
--- a/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleNetwork/BlackBoxTest/SimpleNetworkBBTestConformance.c
+++ b/uefi-sct/SctPkg/TestCase/UEFI/EFI/Protocol/SimpleNetwork/BlackBoxTest/SimpleNetworkBBTestConformance.c
@@ -626,22 +626,31 @@ BBTestReceiveFilterConformanceTest (
// Call ReceiveFilters() function if network interface not start.
//
Status = SnpInterface->ReceiveFilters (SnpInterface, 0, 0, FALSE, 0, NULL);
- if ((Status == EFI_NOT_STARTED) && (SnpInterface->Mode->State == EfiSimpleNetworkStopped)) {
- AssertionType = EFI_TEST_ASSERTION_PASSED;
+ if (Status == EFI_UNSUPPORTED) {
+ StandardLib->RecordMessage(
+ StandardLib,
+ EFI_VERBOSE_LEVEL_QUIET,
+ L"ReceiveFilters isn't supported, Status - %r\n",
+ Status
+ );
} else {
- AssertionType = EFI_TEST_ASSERTION_FAILED;
- }
+ if ((Status == EFI_NOT_STARTED) && (SnpInterface->Mode->State == EfiSimpleNetworkStopped)) {
+ AssertionType = EFI_TEST_ASSERTION_PASSED;
+ } else {
+ AssertionType = EFI_TEST_ASSERTION_FAILED;
+ }
- StandardLib->RecordAssertion (
- StandardLib,
- AssertionType,
- gSimpleNetworkBBTestConformanceAssertionGuid006,
- L"EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invoke ReceiveFilters() when network interface not start.",
- L"%a:%d:Status - %r",
- __FILE__,
- (UINTN)__LINE__,
- Status
- );
+ StandardLib->RecordAssertion (
+ StandardLib,
+ AssertionType,
+ gSimpleNetworkBBTestConformanceAssertionGuid006,
+ L"EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invoke ReceiveFilters() when network interface not start.",
+ L"%a:%d:Status - %r",
+ __FILE__,
+ (UINTN)__LINE__,
+ Status
+ );
+ }
//
// Assertion Point 5.6.2.2
@@ -653,22 +662,31 @@ BBTestReceiveFilterConformanceTest (
}
Status = SnpInterface->ReceiveFilters (SnpInterface, 0, 0, FALSE, 0, NULL);
- if (Status == EFI_DEVICE_ERROR) {
- AssertionType = EFI_TEST_ASSERTION_PASSED;
+ if (Status == EFI_UNSUPPORTED) {
+ StandardLib->RecordMessage(
+ StandardLib,
+ EFI_VERBOSE_LEVEL_QUIET,
+ L"ReceiveFilters isn't supported, Status - %r\n",
+ Status
+ );
} else {
- AssertionType = EFI_TEST_ASSERTION_FAILED;
- }
+ if (Status == EFI_DEVICE_ERROR) {
+ AssertionType = EFI_TEST_ASSERTION_PASSED;
+ } else {
+ AssertionType = EFI_TEST_ASSERTION_FAILED;
+ }
- StandardLib->RecordAssertion (
- StandardLib,
- AssertionType,
- gSimpleNetworkBBTestConformanceAssertionGuid007,
- L"EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invoke ReceiveFilters() when network interface not initialized.",
- L"%a:%d:Status - %r",
- __FILE__,
- (UINTN)__LINE__,
- Status
- );
+ StandardLib->RecordAssertion (
+ StandardLib,
+ AssertionType,
+ gSimpleNetworkBBTestConformanceAssertionGuid007,
+ L"EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invoke ReceiveFilters() when network interface not initialized.",
+ L"%a:%d:Status - %r",
+ __FILE__,
+ (UINTN)__LINE__,
+ Status
+ );
+ }
//
// Assertion Point 5.6.2.3
@@ -683,22 +701,31 @@ BBTestReceiveFilterConformanceTest (
// Call ReceiveFilters with invalide Enable
//
Status = SnpInterface->ReceiveFilters (SnpInterface, ~(SnpInterface->Mode->ReceiveFilterMask), 0, FALSE, 0, NULL);
- if (Status == EFI_INVALID_PARAMETER) {
- AssertionType = EFI_TEST_ASSERTION_PASSED;
+ if (Status == EFI_UNSUPPORTED) {
+ StandardLib->RecordMessage(
+ StandardLib,
+ EFI_VERBOSE_LEVEL_QUIET,
+ L"ReceiveFilters isn't supported, Status - %r\n",
+ Status
+ );
} else {
- AssertionType = EFI_TEST_ASSERTION_FAILED;
- }
+ if (Status == EFI_INVALID_PARAMETER) {
+ AssertionType = EFI_TEST_ASSERTION_PASSED;
+ } else {
+ AssertionType = EFI_TEST_ASSERTION_FAILED;
+ }
- StandardLib->RecordAssertion (
- StandardLib,
- AssertionType,
- gSimpleNetworkBBTestConformanceAssertionGuid008,
- L"EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invoke ReceiveFilters() with invalid Enable.",
- L"%a:%d:Status - %r",
- __FILE__,
- (UINTN)__LINE__,
- Status
- );
+ StandardLib->RecordAssertion (
+ StandardLib,
+ AssertionType,
+ gSimpleNetworkBBTestConformanceAssertionGuid008,
+ L"EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invoke ReceiveFilters() with invalid Enable.",
+ L"%a:%d:Status - %r",
+ __FILE__,
+ (UINTN)__LINE__,
+ Status
+ );
+ }
//
// Call ReceiveFilters with invalide MCastFilterCnt
@@ -713,59 +740,85 @@ BBTestReceiveFilterConformanceTest (
MAC.Addr[5] = 0x02;
Status = SnpInterface->ReceiveFilters (SnpInterface, EFI_SIMPLE_NETWORK_RECEIVE_MULTICAST, 0, FALSE, SnpInterface->Mode->MaxMCastFilterCount + 1, &MAC);
- if (Status == EFI_INVALID_PARAMETER) {
- AssertionType = EFI_TEST_ASSERTION_PASSED;
+ if (Status == EFI_UNSUPPORTED) {
+ StandardLib->RecordMessage(
+ StandardLib,
+ EFI_VERBOSE_LEVEL_QUIET,
+ L"ReceiveFilters isn't supported, Status - %r\n",
+ Status
+ );
} else {
- AssertionType = EFI_TEST_ASSERTION_FAILED;
+ if (Status == EFI_INVALID_PARAMETER) {
+ AssertionType = EFI_TEST_ASSERTION_PASSED;
+ } else {
+ AssertionType = EFI_TEST_ASSERTION_FAILED;
+ }
+
+ StandardLib->RecordAssertion (
+ StandardLib,
+ AssertionType,
+ gSimpleNetworkBBTestConformanceAssertionGuid009,
+ L"EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invoke ReceiveFilters() with invalid MCastFilterCnt is greater than Snp->Mode->MaxMCastFilterCount.",
+ L"%a:%d:Status - %r",
+ __FILE__,
+ (UINTN)__LINE__,
+ Status
+ );
}
- StandardLib->RecordAssertion (
- StandardLib,
- AssertionType,
- gSimpleNetworkBBTestConformanceAssertionGuid009,
- L"EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invoke ReceiveFilters() with invalid MCastFilterCnt is greater than Snp->Mode->MaxMCastFilterCount.",
- L"%a:%d:Status - %r",
- __FILE__,
- (UINTN)__LINE__,
- Status
- );
-
Status = SnpInterface->ReceiveFilters (SnpInterface, EFI_SIMPLE_NETWORK_RECEIVE_MULTICAST, 0, FALSE, 0, &MAC);
- if (Status == EFI_INVALID_PARAMETER) {
- AssertionType = EFI_TEST_ASSERTION_PASSED;
+ if (Status == EFI_UNSUPPORTED) {
+ StandardLib->RecordMessage(
+ StandardLib,
+ EFI_VERBOSE_LEVEL_QUIET,
+ L"ReceiveFilters isn't supported, Status - %r\n",
+ Status
+ );
} else {
- AssertionType = EFI_TEST_ASSERTION_FAILED;
+ if (Status == EFI_INVALID_PARAMETER) {
+ AssertionType = EFI_TEST_ASSERTION_PASSED;
+ } else {
+ AssertionType = EFI_TEST_ASSERTION_FAILED;
+ }
+
+ StandardLib->RecordAssertion (
+ StandardLib,
+ AssertionType,
+ gSimpleNetworkBBTestConformanceAssertionGuid043,
+ L"EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invoke ReceiveFilters() with invalid MCastFilterCnt is 0.",
+ L"%a:%d:Status - %r",
+ __FILE__,
+ (UINTN)__LINE__,
+ Status
+ );
}
- StandardLib->RecordAssertion (
- StandardLib,
- AssertionType,
- gSimpleNetworkBBTestConformanceAssertionGuid043,
- L"EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invoke ReceiveFilters() with invalid MCastFilterCnt is 0.",
- L"%a:%d:Status - %r",
- __FILE__,
- (UINTN)__LINE__,
- Status
- );
-
Status = SnpInterface->ReceiveFilters (SnpInterface, EFI_SIMPLE_NETWORK_RECEIVE_MULTICAST, 0, FALSE, 1, NULL);
- if (Status == EFI_INVALID_PARAMETER) {
- AssertionType = EFI_TEST_ASSERTION_PASSED;
+ if (Status == EFI_UNSUPPORTED) {
+ StandardLib->RecordMessage(
+ StandardLib,
+ EFI_VERBOSE_LEVEL_QUIET,
+ L"ReceiveFilters isn't supported, Status - %r\n",
+ Status
+ );
} else {
- AssertionType = EFI_TEST_ASSERTION_FAILED;
+ if (Status == EFI_INVALID_PARAMETER) {
+ AssertionType = EFI_TEST_ASSERTION_PASSED;
+ } else {
+ AssertionType = EFI_TEST_ASSERTION_FAILED;
+ }
+
+ StandardLib->RecordAssertion (
+ StandardLib,
+ AssertionType,
+ gSimpleNetworkBBTestConformanceAssertionGuid010,
+ L"EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invoke ReceiveFilters() with MCastFilterCnt not match MCastFilter.",
+ L"%a:%d:Status - %r",
+ __FILE__,
+ (UINTN)__LINE__,
+ Status
+ );
}
-
- StandardLib->RecordAssertion (
- StandardLib,
- AssertionType,
- gSimpleNetworkBBTestConformanceAssertionGuid010,
- L"EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invoke ReceiveFilters() with MCastFilterCnt not match MCastFilter.",
- L"%a:%d:Status - %r",
- __FILE__,
- (UINTN)__LINE__,
- Status
- );
-
}
//
--
2.23.0
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2019-09-17 5:09 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-09-17 5:09 [edk2-devel] [PATCH 1/1] uefi-sct/SctPkg: SNP ReceiveFilters may be unsupported Heinrich Schuchardt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox