14. Network Protocols SNP, PXE and BISTest#
14.1. EFI_SIMPLE_NETWORK_PROTOCOL Test#
Reference Document:
UEFI Specification, EFI_SIMPLE_NETWORK_PROTOCOL Section..
14.1.1. Start()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.1.1.1 |
0x200d5d39, 0x8131, 0x434f, 0x95, 0x89, 0xc6, 0xbe, 0x88, 0x69, 0x5d, 0xf4 |
EFI_SIMPLE_NETWORK_PROTOCOL.Start - returns EFI_ALREADY_STARTED when calling Start() while the network interface is already started |
Call Start() when the network interface is already started. The return status should be EFI_ALREADY_STARTED and the state should be “Started”. |
5.11.1.1.2 |
0xf58651fe, 0x0538, 0x4407, 0x88, 0xe0, 0x88, 0xb8, 0xda, 0x18, 0x38, 0x3a |
EFI_SIMPLE_NETWORK_PROTOCOL.Start - returns EFI_SUCCESS when calling **Start()**to verify the interface state. |
Call **Start()**The return status should be EFI_SUCCESS and the interface state should be EfiSimpleNetworkStarted. |
14.1.2. Stop()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.1.2.1 |
0xda5a5aea, 0x0a26, 0x4b65, 0x90, 0x84, 0x92, 0x15, 0xc5, 0x43, 0x21, 0xa0 |
EFI_SIMPLE_NETWORK_PROTOCOL.Stop - Invokes Stop() when the network interface is not started returns EFI_NOT_STARTED. |
Call Stop() when the network interface is not started. The return status should be EFI_NOT_STARTED and the state should be “Stopped”. |
5.11.1.2.2 |
0xd0ecac27, 0xfa2e, 0x4b7d, 0x89, 0x2c, 0xc0, 0xff, 0x70, 0x54, 0x13, 0x44 |
EFI_SIMPLE_NETWORK_PROTOCOL.Stop - Invokes Stop() verifies the interface state and returns EFI_SUCCESS. |
Call Stop(). The return status should be EFI_SUCCESS and the interface state should be EfiSimpleNetworkStopped. |
14.1.3. Initialize()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.1.3.1 |
0xbaa11393, 0x2bfc, 0x43ef, 0xbd, 0xb7, 0x0a, 0xc5, 0x0e, 0x8a, 0x3a, 0x21 |
EFI_SIMPLE_NETWORK_PROTOCOL.Initialize - Invokes Initialize() when the network interface is not started returns EFI_NOT_STARTED. |
Call Initialize() when the network interface is not started. The return status should be EFI_NOT_STARTED and the state should be “Stopped”. |
5.11.1.3.2 |
0x9d4eec8d, 0xdf2f, 0x4f5e, 0x9f, 0x95, 0x7e, 0x51, 0x62, 0xc2, 0x51, 0x0d |
EFI_SIMPLE_NETWORK_PROTOCOL.Initialize - Invokes **Initialize()**to verify the interface state and returns EFI_SUCCESS. |
Call Initialize(). The return status should be EFI_SUCCESS and the interface state should be EfiSimpleNetworkInitialized. |
5.11.1.3.3 |
0x7b547661, 0xa0aa, 0x4041, 0x99, 0xf6, 0xe2, 0x07, 0x31, 0xf7, 0x98, 0x3c |
EFI_SIMPLE_NETWORK_PROTOCOL.Initialize - Invokes Initialize() with extra Tx/Rx specified to verify the interface state and returns EFI_SUCCESS. |
Call Initialize() with extra Tx/Rx specified. The return status should be EFI_SUCCESS and the interface state should be EfiSimpleNetworkInitialized. |
14.1.4. Reset()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.1.4.1 |
0xf2fed213, 0xb6ad, 0x4edc, 0x96, 0xd7, 0x4a, 0xdc, 0x2e, 0xbd, 0xbb, 0x1e |
EFI_SIMPLE_NETWORK_PROTOCOL.Reset - Invokes Reset() when the network interface is not started returns EFI_NOT_STARTED. |
Call Reset() when the network interface is not started. The return status should be EFI_NOT_STARTED and the state should be “Stopped”. |
5.11.1.4.2 |
0x30314e89, 0xdb26, 0x4b01, 0x90, 0xf3, 0x04, 0xd3, 0x1b, 0x19, 0xa6, 0x01 |
EFI_SIMPLE_NETWORK_PROTOCOL.Reset - Invokes Reset() with an ExtendedVerification value of FALSE verifies interface correctness and returns EFI_SUCCESS. |
Call Reset() with an ExtendedVerification value of FALSE. The return status should be EFI_SUCCESS and the interface mode should be correct. |
5.11.1.4.3 |
0xa3135b96, 0xf9c6, 0x45b6, 0xae, 0x87, 0x15, 0xca, 0xae, 0x31, 0x7e, 0xfb |
EFI_SIMPLE_NETWORK_PROTOCOL.Reset - Invokes Reset() with an ExtendedVerification value of TRUE verifies interface correctness and returns EFI_SUCCESS. |
Call Reset() with an ExtendedVerification value of TRUE. The return status should be EFI_SUCCESS and the interface mode should be correct. |
14.1.5. Shutdown()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.1.5.1 |
0x09bb5019, 0x1787, 0x4403, 0xb1, 0x2e, 0x91, 0x93, 0x5c, 0xbd, 0x08, 0xe3 |
EFI_SIMPLE_NETWORK_PROTOCOL.Shutdown - Invokes Shutdown() when the network interface is not started returns EFI_NOT_STARTED. |
Call Shutdown() when the network interface is not started. The return status should be EFI_NOT_STARTED and the state should be “Stopped”. |
5.11.1.5.2 |
0x49365eeb, 0xd66c, 0x4109, 0xb0, 0xcf, 0x36, 0xc8, 0x96, 0xc0, 0x07, 0xec |
EFI_SIMPLE_NETWORK_PROTOCOL.Shutdown - Invokes **Shutdown()**verifies the interface state and returns EFI_SUCCESS. |
Call Shutdown(). The return status should be EFI_SUCCESS and the interface state should be EfiSimpleNetworkStarted. |
14.1.6. ReceiveFilters()#
Number | GUID | Assertion | Test Description |
5.11.1.6.1 | 0x3f8d8e2a, 0xdbb1, 0x41b8, 0xb9, 0xd9, 0x5f, 0x79, 0x44, 0xf1, 0xd1, 0xf4 | EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invokes ReceiveFilters() when the network interface is not started returns EFI_NOT_STARTED. | Call ReceiveFilters() when the network interface is not started. The return status should be EFI_NOT_STARTED and the state should be “Stopped”. |
5.11.1.6.2 | 0x8b4ed1bb, 0xa4a4, 0x45e8, 0xbf, 0x32, 0x0d, 0x0d, 0x6d, 0x0b, 0xd0, 0x2e | EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invokes ReceiveFilters() when the network interface is not initialized returns EFI_DEVICE_ERROR. | Call ReceiveFilters() when the network interface is not initialized. The return status should be EFI_DEVICE_ERROR. |
5.11.1.6.3 | 0xb6f84e0b, 0x286b, 0x44a6, 0xa0, 0xf8, 0x6d, 0x11, 0x89, 0x7d, 0x56, 0x55 | EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invokes ReceiveFilters() with an invalid Enable returns EFI_INVALID_PARAMETER. | Call ReceiveFilters() with an invalid Enable. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.6.4 | 0xead4b950, 0xf0d6, 0x4195, 0x94, 0xaa, 0x81, 0x92, 0x56, 0x44, 0xb3, 0x2c | EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invokes ReceiveFilters() with an invalid McastFilterCnt returns EFI_INVALID_PARAMETER. | Call ReceiveFilters() with an invalid MCastFilterCnt. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.6.5 | 0x4497e853, 0xc54d, 0x409b, 0x85, 0x01, 0xd5, 0xfb, 0xd2, 0x7a, 0x95, 0xdc | EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invokes ReceiveFilters() with MCastFilterCnt not matching MCastFilter returns EFI_INVALID_PARAMETER. | Call ReceiveFilters() with MCastFilterCnt not matching MCastFilter. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.6.6 | 0xd82baa78, 0x2bf8, 0x49db, 0xb5, 0x7f, 0x92, 0x2e, 0xe5, 0x79, 0xc3, 0x7a | EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invokes ReceiveFilters() modifies the multicast receive filter mask (Disable Specified bit), verifies interface correctness, and returns EFI_SUCCESS. | Call ReceiveFilters() to modify the multicast receive filter mask (Disable Specified bit) and verify interface correctness. The return status should be EFI_SUCCESS. |
5.11.1.6.7 | 0x9605c24a, 0x2090, 0x490d, 0x89, 0x4f, 0xfc, 0xb8, 0xc1, 0xb9, 0xd4, 0xf8 | EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invokes ReceiveFilters() modifies the multicast receive filter mask (Enable Specified bit), verifies interface correctness, and returns EFI_SUCCESS. | Call ReceiveFilters() to modify the multicast receive filter mask (Enable Specified bit) and verify interface correctness. The return status should be EFI_SUCCESS. |
5.11.1.6.8 | 0xd9893cd3, 0x7269, 0x4931, 0x9e, 0xe8, 0x81, 0x62, 0x7a, 0x67, 0x45, 0xe9 | EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invokes ReceiveFilters() modifies the multicast receive filter masks (Enable and Disable Specified bit together), verifies interface correctness, and returns EFI_SUCCESS. | Call ReceiveFilters() to modify the multicast receive filter masks (Enable and Disable Specified bit together) and verify interface correctness. The return status should be EFI_SUCCESS. |
5.11.1.6.9 | 0x056e2680, 0xbcc9, 0x460a, 0x94, 0xb4, 0x9a, 0xe2, 0x99, 0xa7, 0x2c, 0x2c | EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invokes ReceiveFilters() modifies the multicast receive filters list, verifies interface correctness, and returns EFI_SUCCESS. | Call ReceiveFilters() to modify the multicast receive filters list and verify interface correctness. The return status should be EFI_SUCCESS. |
5.11.1.6.10 | 0x2143092e, 0x03dd, 0x4806, 0x9f, 0xd6, 0x08, 0xd4, 0x2b, 0x9a, 0xbf, 0xc6 | EFI_SIMPLE_NETWORK_PROTOCOL.ReceiveFilters - Invokes ReceiveFilters() resets the multicast receive filters list, verifies interface correctness within test case, and returns EFI_SUCCESS. | Call ReceiveFilters() to reset the multicast receive filters list and verify interface correctness within test case. The return status should be EFI_SUCCESS. |
14.1.7. StationAddress()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.1.7.1 |
0x4235215c, 0xfad0, 0x4865, 0xa9, 0x7b, 0xde, 0xe4, 0xb7, 0xee, 0xef, 0x98 |
EFI_SIMPLE_NETWORK_PROTOCOL.StationAddress - Invokes StationAddress() when the network interface is not started returns EFI_NOT_STARTED. |
Call StationAddress**()** when the network interface is not started. The return status should be EFI_NOT_STARTED and the state should be “Stopped”. |
5.11.1.7.2 |
0x9dfe127c, 0x14b0, 0x476d, 0x9d, 0x68, 0x69, 0x08, 0x15, 0x7e, 0x36, 0xa7 |
EFI_SIMPLE_NETWORK_PROTOCOL.StationAddress - Invokes StationAddress() when the network interface is not initialized returns EFI_DEVICE_ERROR. |
Call StationAddress**()** when the network interface is not initialized. The return status should be EFI_DEVICE_ERROR. |
5.11.1.7.3 |
0x6c6fb7ad, 0xf89c, 0x45d6, 0xb3, 0xa6, 0x15, 0x34, 0xfd, 0x72, 0xfb, 0x9d |
EFI_SIMPLE_NETWORK_PROTOCOL.StationAddress - Invokes StationAddress() with an invalid parameter returns EFI_INVALID_PARAMETER. |
Call StationAddress**()** to change the MAC address when the address is not allowed to be changed. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.7.4 |
0x29177bfa, 0x3775, 0x4d5a, 0x97, 0x37, 0x19, 0xd8, 0x34, 0xa7, 0xbb, 0x8e |
EFI_SIMPLE_NETWORK_PROTOCOL.StationAddress - Invokes StationAddress() resets MAC Address, verifies interface correctness, and returns EFI_SUCCESS. |
Call StationAddress**()** to reset MAC Address and verify interface correctness. The return status should be EFI_SUCCESS. |
5.11.1.7.5 |
0xbbbde63c, 0xa6f5, 0x4438, 0x8a, 0x82, 0xb4, 0xdf, 0xe8, 0xe8, 0x48, 0xfd |
EFI_SIMPLE_NETWORK_PROTOCOL.StationAddress - Invokes StationAddress() modifies MAC Address, verifies interface correctness, and returns EFI_SUCCESS. |
Call StationAddress**()** to modify MAC Address and verify interface correctness. The return status should be EFI_SUCCESS. |
14.1.8. Statistics()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.1.8.1 |
0x62a700f1, 0x075f, 0x4cc0, 0x85, 0x12, 0xee, 0x48, 0x0d, 0xbc, 0x69, 0x2c |
EFI_SIMPLE_NETWORK_PROTOCOL.Statistics - Invokes Statistics() when the network interface is not started returns EFI_NOT_STARTED. |
Call Statistics() when the network interface is not started. The return status should be EFI_NOT_STARTED and the state should be “Stopped”. |
5.11.1.8.2 |
0x71173afd, 0x5dc9, 0x42ea, 0xa8, 0xad, 0x6e, 0xc0, 0x97, 0x7a, 0xdc, 0xa6 |
EFI_SIMPLE_NETWORK_PROTOCOL.Statistics - Invokes Statistics() when the network interface is not initialized returns EFI_DEVICE_ERROR. |
Call Statistics() when the network interface is not initialized. The return status should be EFI_DEVICE_ERROR. |
5.11.1.8.3 |
0x743b75d1, 0xaf66, 0x495c, 0xaf, 0x5a, 0x1d, 0xdf, 0x7f, 0xe4, 0xa6, 0x82 |
EFI_SIMPLE_NETWORK_PROTOCOL.Statistics - Invokes Statistics() with small buffer returns EFI_BUFFER_TOO_SMALL or EFI_UNSUPPORTED. |
Call Statistics() with small buffer. The return status should be EFI_BUFFER_TOO_SMALL or EFI_UNSUPPORTED. |
5.11.1.8.4 |
0xace9fa20, 0xff34, 0x4fba, 0x8b, 0x95, 0x39, 0xae, 0xca, 0xd9, 0x78, 0x7c |
EFI_SIMPLE_NETWORK_PROTOCOL.Statistics - Invokes Statistics() without resetting the statistics and verifying interface correctness returns EFI_SUCCESSor EFI_UNSUPPORTED. |
Call Statistics() without resetting the statistics and verifying interface correctness. The return status should be EFI_SUCCESSor EFI_UNSUPPORTED. |
5.11.1.8.5 |
0x3de76704, 0x4bf5, 0x42cd, 0x8c, 0x89, 0x54, 0x7e, 0x4f, 0xad, 0x4f, 0x24 |
EFI_SIMPLE_NETWORK_PROTOCOL.Statistics - Invokes Statistics(), resetting the statistics, and verifying interface correctness returns EFI_SUCCESSor EFI_UNSUPPORTED. |
Call Statistics() and reset the statistics and verify interface correctness. The return status should be EFI_SUCCESSor EFI_UNSUPPORTED. |
14.1.9. MCastIPtoMAC()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.1.9.1 |
0x6880bd92, 0x7004, 0x41b8, 0x9e, 0x43, 0x7b, 0x27, 0x1f, 0xd9, 0xac, 0x2b |
EFI_SIMPLE_NETWORK_PROTOCOL.MCastIPtoMAC - Invokes MCastIPtoMAC() when the network interface is not started returns EFI_NOT_STARTED. |
Call MCastIPtoMAC() when the network interface is not started. The return status should be EFI_NOT_STARTED and the state should be “Stopped”. |
5.11.1.9.2 |
0x544b08c0, 0x1d26, 0x4462, 0x92, 0x07, 0xdd, 0x7e, 0xb7, 0x54, 0xdc, 0x9e |
EFI_SIMPLE_NETWORK_PROTOCOL.MCastIPtoMAC - Invokes **MCastIPtoMAC()**verifies interface correctness and returns EFI_SUCCESS. |
Call MCastIPtoMAC() and verify interface correctness. The return status should be EFI_SUCCESS. |
14.1.10. NvData()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.1.10.1 |
0x1a0250a2, 0xd085, 0x42ac, 0xb7, 0x42, 0x52, 0x35, 0x26, 0xa1, 0xa9, 0x4f |
EFI_SIMPLE_NETWORK_PROTOCOL.NvData - Invokes NvData() when the network interface is not started returns EFI_NOT_STARTED. |
Call NvData() when the network interface is not started. The return status should be EFI_NOT_STARTED and the state should be “Stopped”. |
5.11.1.10.2 |
0xd2aaff2b, 0x6632, 0x4d23, 0x98, 0xca, 0x78, 0xd9, 0x0d, 0xea, 0xfb, 0x2f |
EFI_SIMPLE_NETWORK_PROTOCOL.NvData - Invokes NvData() with Offset not a multiple of NvRamAccessSize returns EFI_INVALID_PARAMETER. |
Call NvData() with Offset not a multiple of NvRamAccessSize. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.10.3 |
0xfd0a8da6, 0xe94b, 0x45f0, 0x93, 0x92, 0xe4, 0x8f, 0x9d, 0x09, 0x92, 0xc7 |
EFI_SIMPLE_NETWORK_PROTOCOL.NvData - Invokes NvData() with BufferSize not a multiple of NvRamAccessSize returns EFI_INVALID_PARAMETER. |
Call NvData() with BufferSize not a multiple of NvRamAccessSize. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.10.4 |
0x75fc17ba, 0x5329, 0x4931, 0x96, 0x93, 0xc7, 0x83, 0xf6, 0xac, 0x59, 0xc4 |
EFI_SIMPLE_NETWORK_PROTOCOL.NvData - Invokes NvData() with BufferSize + Offset exceeding NvRamSize returns EFI_INVALID_PARAMETER. |
Call NvData() with BufferSize + Offset exceeding NvRamSize. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.10.5 |
0xba0b2393, 0x0078, 0x434b, 0x99, 0x13, 0xde, 0xa6, 0x6b, 0xdd, 0x83, 0xb3 |
EFI_SIMPLE_NETWORK_PROTOCOL.NvData - Invokes NvData() to read (0, n*NvRamAccessSize) returns EFI_SUCCESS. |
Call NvData() to read (0, n*NvRamAccessSize) and verify interface correctness. The return status should be EFI_SUCCESS. |
5.11.1.10.6 |
0xf9e2f307, 0x3f73, 0x4c00, 0xbc, 0x31, 0xd5, 0x88, 0xf2, 0x6f, 0x5e, 0xd6 |
EFI_SIMPLE_NETWORK_PROTOCOL.NvData - Invokes NvData() to read (NvRamAccessSize, (n‑1)*NvRamAccessSize) returns EFI_SUCCESS. |
Call NvData() to read (NvRamAccessSize, (n‑1)*NvRamAccessSize) and verify interface correctness. The return status should be EFI_SUCCESS. |
5.11.1.10.7 |
0x8f18c1d9, 0xbcb2, 0x4e15, 0xaa, 0x16, 0x58, 0xe8, 0x3c, 0x31, 0xd5, 0xe4 |
EFI_SIMPLE_NETWORK_PROTOCOL.NvData - Invokes NvData() to read ((n‑1)*NvRamAccessSize, NvRamAccessSize) returns EFI_SUCCESS. |
Call NvData() to read ((n‑1)*NvRamAccessSize, NvRamAccessSize) and verify interface correctness. The return status should be EFI_SUCCESS. |
5.11.1.10.8 |
0x443b58d6, 0x683c, 0x4018, 0x89, 0xc9, 0x2e, 0x70, 0xe8, 0x53, 0x6b, 0x7d |
EFI_SIMPLE_NETWORK_PROTOCOL.NvData - Invokes NvData() writes and verifies interface correctness, returning EFI_SUCCESS. |
Call NvData() to write and verify interface correctness. The return status should be EFI_SUCCESS. |
14.1.11. GetStatus()#
Number | GUID | Assertion | Test Description |
5.11.1.11.1 | 0x21837ad9, 0x942b, 0x4b2b, 0x89, 0x6e, 0xc7, 0xb1, 0xe8, 0xa3, 0x6a, 0xaa | EFI_SIMPLE_NETWORK_PROTOCOL.GetStatus - Invokes GetStatus() when the network interface is not started returns EFI_NOT_STARTED. | Call GetStatus() when network interface is not started. The return status should be EFI_NOT_STARTED and the state should be “Stopped”. |
5.11.1.11.2 | 0xce6f3aba, 0x9d91, 0x4ab4, 0xaa, 0x96, 0x01, 0x14, 0x3e, 0xea, 0xf8, 0x29 | EFI_SIMPLE_NETWORK_PROTOCOL.GetStatus - Invokes GetStatus() when the network interface is not initialized returns EFI_DEVICE_ERROR. | Call GetStatus() when the network interface is not initialized. The return status should be EFI_DEVICE_ERROR. |
5.11.1.11.3 | 0xa1ee7ee5, 0x2b46, 0x4da0, 0xb8, 0x19, 0x0d, 0x10, 0xe1, 0xd0, 0x6f, 0xc0 | EFI_SIMPLE_NETWORK_PROTOCOL.GetStatus - Invokes GetStatus() with an invalid parameter returns EFI_INVALID_PARAMETER. | Call GetStatus() when both InterruptStuts and TxBuf are NULL. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.11.4 | 0x8e8f1517, 0x330e, 0x45fd, 0x8d, 0x84, 0x33, 0xff, 0xf1, 0x60, 0x00, 0xf2 | EFI_SIMPLE_NETWORK_PROTOCOL.GetStatus - Invokes GetStatus() verifies interface correctness and returns EFI_SUCCESS. | Call GetStatus() and verify interface correctness. The return status should be EFI_SUCCESS. |
5.11.1.11.5 | 0xa32b5f48, 0x8215, 0x4024, 0x80, 0x31, 0x33, 0x70, 0x5, 0x20, 0x37, 0x54 | EFI_SIMPLE_NETWO RK_PROTOCOL.GetS tatus - Invokes GetStatus() to verify the transmitted buffer should be shown up in the recycled transmit buffer. | 1. The transmitted buffer should be shown up in the recycled transmit buffer. |
14.1.12. Transmit()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.1.12.1 |
0xfe70e127, 0x6ea1, 0x4ff8, 0xa0, 0x41, 0x1f, 0x96, 0xad, 0x0c, 0xe8, 0x9d |
EFI_SIMPLE_NETWORK_PROTOCOL.Transmit - Invokes Transmit() when the network interface is not started returns EFI_NOT_STARTED. |
Call Transmit() when the network interface is not started. The return status should be EFI_NOT_STARTED and the state should be “Stopped”. |
5.11.1.12.2 |
0xfdcadacb, 0x71cd, 0x416c, 0x9a, 0xa6, 0x8c, 0xf5, 0x3a, 0x85, 0x92, 0x05 |
EFI_SIMPLE_NETWORK_PROTOCOL.Transmit - Invokes Transmit() when the network interface is not initialized returns EFI_DEVICE_ERROR. |
Call Transmit() when the network interface is not initialized. The return status should be EFI_DEVICE_ERROR. |
5.11.1.12.3 |
0xea3773ea, 0x0e0f, 0x45a3, 0x82, 0xa0, 0x64, 0xd4, 0x85, 0xa1, 0x0b, 0x52 |
EFI_SIMPLE_NETWORK_PROTOCOL.Transmit - Invokes Transmit() with a HeaderSize value of non‑0 and not equal to MediaHeaderSize returns EFI_INVALID_PARAMETER. |
Call Transmit() with a HeaderSize value of non‑0 and not equal to MediaHeaderSize. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.12.4 |
0xde544de1, 0x178e, 0x4b5f, 0x97, 0xd7, 0x19, 0x11, 0x9b, 0x1b, 0x7b, 0x18 |
EFI_SIMPLE_NETWORK_PROTOCOL.Transmit - Invokes Transmit() with a BufferSize value of less than MediaHeaderSize. |
Call Transmit() with a BufferSize value of less than MediaHeaderSize. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.12.5 |
0x4b33c0b2, 0x4ab8, 0x44a0, 0x8c, 0x0b, 0xd9, 0x8b, 0x70, 0x9d, 0xd1, 0x64 |
EFI_SIMPLE_NETWORK_PROTOCOL.Transmit - Invokes Transmit() with a Buffer value of NULL returns EFI_INVALID_PARAMETER. |
Call Transmit() with a Buffer value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.12.6 |
0xa449842c, 0xf5f8, 0x47e9, 0x98, 0x7b, 0x4b, 0x61, 0x41, 0xae, 0xbd, 0x45 |
EFI_SIMPLE_NETWORK_PROTOCOL.Transmit - Invokes Transmit() with a HeaderSize value of non‑0 and DestAddr value of NULL returns EFI_INVALID_PARAMETER. |
Call Transmit() with a HeaderSize value of non‑0 and a DestAddr value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.12.7 |
0x2e3dd087, 0xdd0c, 0x426e, 0x85, 0xba, 0x65, 0xe5, 0x83, 0x10, 0xb1, 0xde |
EFI_SIMPLE_NETWORK_PROTOCOL.Transmit - Invokes Transmit() with a HeaderSize value of non‑0 and a Protocol value of NULL returns EFI_INVALID_PARAMETER.. |
Call Transmit() with a HeaderSize value of non‑0 and a Protocol value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.12.8 |
0x10e4090b, 0x284b, 0x4886, 0xba, 0x9b, 0x9f, 0x50, 0xc7, 0xff, 0xc5, 0x74 |
EFI_SIMPLE_NETWORK_PROTOCOL.Transmit - Invokes Transmit() with a HeaderSize value of non‑0 and a Protocol value of not in accordance with IfType returning EFI_INVALID_PARAMETER. |
Call Transmit() with a HeaderSize value of non‑0 and a Protocol value of not in accordance with IfType. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.12.9 |
0xdaafbb2a, 0x434b, 0x452f, 0xa6, 0x44, 0xa7, 0x39, 0x2c, 0xf3, 0x59, 0x37 |
EFI_SIMPLE_NETWORK_PROTOCOL.Transmit - Calling **Transmit()**sends Over Sized Packets and returns EFI_INVALID_PARAMETER. |
Call Transmit() to send Over Sized Packets. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.12.10 |
0x8f8ec6d7, 0x41b5, 0x4e06, 0x87, 0x12, 0xdb, 0x77, 0xba, 0xc6, 0x1a, 0x1f |
EFI_SIMPLE_NETWORK_PROTOCOL.Transmit - Calling Transmit() sends Under Sized Packets and returns EFI_INVALID_PARAMETER. |
Call Transmit() to send Under Sized Packets. The return status should be EFI_INVALID_PARAMETER. |
14.1.13. Receive()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.1.13.1 |
0x6c2503ce, 0x7952, 0x4740, 0x88, 0xd2, 0xe1, 0xb3, 0xa2, 0xd9, 0x5d, 0x2e |
EFI_SIMPLE_NETWORK_PROTOCOL.Receive - Invokes Receive() when the network interface is not started returns EFI_NOT_STARTED. |
Call Receive() when the network interface is not started. The return status should be EFI_NOT_STARTED and the state should be “Stopped”. |
5.11.1.13.2 |
0xb0def89e, 0xbb48, 0x4829, 0xb5, 0x8e, 0x12, 0x7a, 0xf3, 0x7a, 0x38, 0x9d |
EFI_SIMPLE_NETWORK_PROTOCOL.Receive - Invokes Receive() when the network interface is not initialized returns EFI_DEVICE_ERROR. |
Call Receive() when the network interface is not initialized. The return status should be EFI_DEVICE_ERROR. |
5.11.1.13.3 |
0xa6783502, 0xf69b, 0x4091, 0xac, 0x09, 0xf0, 0x10, 0x42, 0xa5, 0x93, 0x5e |
EFI_SIMPLE_NETWORK_PROTOCOL.Receive - Invokes Receive() with a Buffer value of NULL returns EFI_INVALID_PARAMETER. |
Call Receive() with a Buffer value of NULL. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.13.4 |
0xb61dd219, 0x0b04, 0x49b7, 0x9a, 0xf9, 0x8c, 0x5f, 0x27, 0x0c, 0x44, 0x9b |
EFI_SIMPLE_NETWORK_PROTOCOL.Receive - Invokes Receive() when BufferSize is smaller than the received Packets returns EFI_INVALID_PARAMETER. |
Call Receive() when BufferSize is smaller than the received Packets. The return status should be EFI_INVALID_PARAMETER. |
5.11.1.13.5 |
0x6a319f34, 0x0e40, 0x41aa, 0xae, 0x50, 0x16, 0x9c, 0x4d, 0xe7, 0xb8, 0xc7 |
EFI_SIMPLE_NETWORK_PROTOCOL.Receive - Invokes Receive() when no packet is received returns EFI_NOT_READY. |
Call Receive() when no packet is received. The return status should be EFI_NOT_READY. |
14.2. EFI_PXE_BASE_CODE_PROTOCOL Test#
Reference Document:
UEFI Specification, EFI_PXE_BASE_CODE_PROTOCOL Section.
14.2.1. Start()#
Number | GUID | Assertion | Test Description |
5.11.2.1.1 | 0x0a483bd1, 0x80cf, 0x463b, 0x8b, 0xb1, 0x2a, 0x33, 0x32, 0x90, 0xcc, 0x08 | EFI_PXE_BASE_CODE_PROTOCOL.Start - Calling Start() when PXE Protocol is already started returns EFI_ALREADY_STARTED. | Call Start() when the EFI_PXE_BASE_CODE_PROTOCOL is already started. The return code should be EFI_ALREADY_STARTED. |
5.11.2.1.2 | 0xc1505aee, 0xd73a, 0x416c, 0x9a, 0x3f, 0x9c, 0x00, 0x5d, 0x01, 0xd6, 0xeb | EFI_PXE_BASE_CODE_PROTOCOL.Start - Calling Start() using IPV6 when PXE Protocol does not support IPV6 returns EFI_NOT_SUPPORTED. | Call Start() when EFI_PXE_BASE_CODE_PROTOCOL does not support IPV6, but require its use. The return code should be EFI_NOT_SUPPORTED. |
5.11.2.1.3 | 0x13a4a599, 0xb35b, 0x4465, 0xa2, 0xdb, 0xc1, 0xe8, 0xa4, 0xca, 0x9a, 0x93 | EFI_PXE_BASE_CODE_PROTOCOL.Start – Calling Start() without using IPv6 returns EFI_SUCCESS. | Call Start() without using IPv6. The return status code should be EFI_SUCCESS. Call Start() with using IPv6 if Ipv6Supported is FALSE. The return status code should be EFI_UNSUPPORTED. |
5.11.2.1.4 | 0x33067ad5, 0xb3a5, 0x44f4, 0x9f, 0xf5, 0xf8, 0x63, 0xda, 0x1f, 0xbd, 0xb3 | EFI_PXE_BASE_CODE_PROTOCOL.Start – Calling Start() returns correct mode without using IPv6. | Call Start() without using IPv6. The return mode should be correct, including Started is TRUE, UsingIpv6 is FALSE, AutoArp is TRUE, and Route Table is Empty. |
14.2.2. Stop()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.2.2.1 |
0x8d75ffa1, 0xdfab, 0x4aff, 0x9f, 0xf7, 0xbb, 0x49, 0x49, 0x08, 0xdc, 0xa3 |
EFI_PXE_BASE_CODE_PROTOCOL.Stop – Calling Stop() while the PXE protocol is already stopped returns EFI_NOT_STARTED. |
Call Stop() when the EFI_PXE_BASE_CODE_PROTOCOL is already stopped. The return code should be EFI_NOT_STARTED. |
5.11.2.2.2 |
0xf88713ff, 0xf149, 0x4e9f, 0x8c, 0xf5, 0x6d, 0x63, 0x55, 0x8f, 0xf2, 0xbd |
EFI_PXE_BASE_CODE_PROTOCOL.Stop – Calling Stop() to disable PXE protocol when it is enabled returns EFI_SUCCESS. |
Enable PXE protocol, and call Stop() to disable PXE protocol. The return code should be EFI_SUCCESS. |
14.2.3. Dhcp()#
No automatic test is designed to verify this function.
14.2.4. Discover()#
No automatic test is designed to verify this function.
14.2.5. Mtftp()#
No automatic test is designed to verify this function.
14.2.6. UdpWrite()#
No automatic test is designed to verify this function.
14.2.7. UdpRead()#
No automatic test is designed to verify this function.
14.2.8. SetIpFilter()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.2.8.1 |
0x670cf69f, 0x530a, 0x4bec, 0xaa, 0xb8, 0x41, 0xd3, 0x58, 0x9e, 0x91, 0x99 |
EFI_PXE_BASE_CODE_PROTOCOL.SetIpFilter –Calling SetIpFilter() returns EFI_SUCCESS. |
Enable PXE protocol, and call SetIpFilter(). The returned code should be EFI_SUCCESS. |
5.11.2.8.2 |
0xe9ed28b0, 0x0b88, 0x4e4e, 0xa2, 0xdb, 0xe5, 0xc4, 0xea, 0xd2, 0x00, 0x87 |
EFI_PXE_BASE_CODE_PROTOCOL.SetIpFilter – Calling SetIpFilter() updates IpFilter Mode setting. |
Enable PXE protocol, and call SetIpFilter(). The IpFilter filed at EFI_PXE_BASE_CODE_MODE is updated to the new setting. |
5.11.2.8.3 |
0x13317b8d, 0x5d0d, 0x400f, 0x87, 0x4f, 0xaf, 0xe5, 0x08, 0xf1, 0x35, 0x86 |
EFI_PXE_BASE_CODE_PROTOCOL.SetIpFilter – Calling SetIpFilter() with PXE protocol not started returns EFI_NOT_STARTED. |
Disable PXE protocol, and call SetIpFilter(). The return code should be EFI_NOT_STARTED. |
14.2.9. Arp()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.2.13.1 |
0xdc8b9346, 0xc5c8, 0x4ef5, 0xaf, 0x22, 0xcd, 0xef, 0x81, 0x6d, 0xf6, 0x13 |
EFI_PXE_BASE_CODE_PROTOCOL.Arp – Arp() returns EFI_INVALID_PARAMETER when IpAddr is NULL |
1.Call Arp() with IpAddr = NULL. The return code must be EFI_INVALID_PARAMETER |
5.11.2.13.2 |
0xe893562b, 0xcb51, 0x409c, 0xa0, 0x93, 0x7c, 0xad, 0xe1, 0x43, 0xd6, 0xc0 |
EFI_PXE_BASE_CODE_PROTOCOL.Arp – Arp() returns EFI_UNSUPPORTED when UsingIpv6 is TRUE |
1.Call Arp() when UsingIpv6 is TRUE. The return code must be EFI_UNSUPPORTED |
14.2.10. SetParameters()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.2.10.1 |
0x3395102a, 0x1b16, 0x4267, 0xb8, 0x5e, 0x88, 0x4b, 0xd6, 0x56, 0xb8, 0x69 |
EFI_PXE_BASE_CODE_PROTOCOL.SetParameters – Calling SetParameters() with PXE protocol not started returns EFI_NOT_STARTED. |
Disable PXE protocol, and call SetParameters(). The return code should be EFI_NOT_STARTED. |
14.2.11. SetStationIp()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.2.11.1 |
0xe20afad4, 0x04e5, 0x4b09, 0xa2, 0x3a, 0xc0, 0xc1, 0xd5, 0x7f, 0x8b, 0x1b |
EFI_PXE_BASE_CODE_PROTOCOL.SetStationIp – Calling SetStationIp() and modifying IP address and subnet mask returns EFI_SUCCESS. |
Enable PXE protocol, and call SetStationIp() to modify IP address and subnet mask. The returned status code is EFI_SUCCESS. |
5.11.2.11.2 |
0x47feb998, 0x7d0d, 0x4381, 0xae, 0x31, 0x71, 0xbe, 0xdf, 0xb0, 0x73, 0x23 |
EFI_PXE_BASE_CODE_PROTOCOL.SetStationIp – Calling SetStationIp() and only modifying IP address returns EFI_SUCCESS. |
Enable PXE protocol, and call SetStationIp() only to modify IP address. The returned status code is EFI_SUCCESS. |
5.11.2.11.3 |
0x78014f26, 0x0196, 0x4d38, 0xb6, 0xbd, 0x0c, 0x7c, 0x41, 0xf8, 0x5e, 0xa1 |
EFI_PXE_BASE_CODE_PROTOCOL.SetStationIp – Calling SetStationIp() and only modifying subnet mask returns EFI_SUCCESS. |
Enable PXE protocol, and call SetStationIp() only to modify subnet mask of the network device. The returned status code is EFI_SUCCESS. |
5.11.2.11.4 |
0x518491e5, 0xd4ab, 0x42c6, 0x8c, 0x73, 0x90, 0xc1, 0xeb, 0xc2, 0xf1, 0x78 |
EFI_PXE_BASE_CODE_PROTOCOL.SetStationIp – Calling SetStationIp() with PXE not started returns EFI_NOT_STARTED. |
Disable PXE protocol, and call SetStationIp(). The return code should be EFI_NOT_STARTED. |
14.2.12. SetPackets()#
Number |
GUID |
Assertion |
Test Description |
---|---|---|---|
5.11.2.12.1 |
0x66c10d09, 0x2578, 0x48b7, 0x80, 0x5b, 0x75, 0xd7, 0x17, 0xcf, 0x71, 0x49 |
EFI_PXE_BASE_CODE_PROTOCOL.SetPackets – Calling SetPackets() with PXE protocol not started returns EFI_NOT_STARTED. |
Disable PXE protocol, and call SetPackets(). The return code should be EFI_NOT_STARTED. |
14.3. EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL Test#
Reference Document:
UEFI Specification, EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL Section.
The EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL Test is covered in the test for the EFI PXE Base Code Protocol.
14.4. EFI_BIS_PROTOCOL Test#
Reference Document:
UEFI Specification, EFI_BIS_PROTOCOL Section.
No automatic test is designed to verify this protocol.