-
Notifications
You must be signed in to change notification settings - Fork 91
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Lower or Upper Case in EFI_DEVICE_PATH_FROM_TEXT_PROTOCOL (Bugzilla Bug 4866) #235
Comments
Comment 23449Date: 2024-10-14 11:03:26 +0000
When running the SCT on U-Boot I see errors like: EFI_DEVICE_PATH_FROM_TEXT_PROTOCOL - ConvertDeviceNodeToText must correctly recover the converting ConvertTextToDeviceNode has acted on the device node string -- PASS EFI_DEVICE_PATH_FROM_TEXT_PROTOCOL - ConvertDeviceNodeToText must correctly recover the converting ConvertTextToDeviceNode has acted on the device node string -- PASS EFI_DEVICE_PATH_FROM_TEXT_PROTOCOL - ConvertDeviceNodeToText must correctly recover the converting ConvertTextToDeviceNode has acted on the device node string -- PASS Appendix A - GUID AND TIME FORMATS has So the "FAILED" in DevicePathToTextBBTestCoverage.c:342 is definitively a false positive. I could not see any statement for the EFI_DEVICE_PATH_FROM_TEXT_PROTOCOL requirement that hexadecimal numbers should be upper case. So the other two results seem to be false positives too. Best regards Heinrich |
Comment 23516Date: 2024-11-07 10:26:18 +0000 Thank you, Heinrich. Assigned to Sam Kaynor. |
Comment 23553Date: 2024-12-05 15:28:59 +0000 Hi Heinrich, After some offline discussion we've come to a couple conclusions about this issue. The function ConvertDeviceNodeToText comes from the edk2 core and as such can't be easily changed for the purposes of edk2-test. However, the SctCompareMem function used for the test result is passing correctly as it is a strict byte to byte memory comparison (SctPkg/Library/SctLib/Mem.c:133). As the passes are expected, the issue is in the output presented in the logs. This could be resolved by implementing a local function that simply converts the text output of ConvertDeviceNodeToText to all uppercase characters. Would this solution address your concerns? Thanks, Sam |
Comment 23567Date: 2024-12-15 05:19:40 +0000 Hello Sam, There is nothing wrong in the way the log is printed. The test results for U-Boot are wrong. The SCT test should be relaxed to accept both lower case and upper case hexadecimal numbers as the UEFI specification does not require the one or the other. The SCT should convert the actual and the expected result to the same case before calling memcmp(). Best regards Heinrich |
This issue was created automatically with bugzilla2github
Bugzilla Bug 4866
Date: 2024-10-14T11:03:26+00:00
From: Heinrich Schuchardt <<xypron.glpk>>
To: Sam Kaynor <<Sam.Kaynor>>
CC: edhaya.chandran, gaojie, ilias.apalodimas, samer.el-haj-mahmoud, xypron.glpk
Last updated: 2024-12-15T05:19:40+00:00
The text was updated successfully, but these errors were encountered: