dsp: firmware_update: Reimplement decode_firmware_device_id_record_errno()

Do so in terms of the msgbuf APIs for safety, correctness, ergonomics
and performance.

decode_firmware_device_id_record() is reimplemented in terms of the
updated API for decode_firmware_device_id_record_errno(). This provides
a common implementation that will be exploited by future changes, while
keeping accommodations on the exceptional path.

gitlint-ignore: T1
Change-Id: I80aa5404b5dba34bc1c0319e19b3beffd752048e
Signed-off-by: Andrew Jeffery <andrew@codeconstruct.com.au>
diff --git a/tests/dsp/firmware_update.cpp b/tests/dsp/firmware_update.cpp
index e12b4de..05b7546 100644
--- a/tests/dsp/firmware_update.cpp
+++ b/tests/dsp/firmware_update.cpp
@@ -369,7 +369,7 @@
         &deviceIdRecHeader, &applicableComponents, &outCompImageSetVersionStr,
         &recordDescriptors, &outFwDevicePkgData);
 
-    EXPECT_EQ(rc, PLDM_SUCCESS);
+    ASSERT_EQ(rc, PLDM_SUCCESS);
     EXPECT_EQ(deviceIdRecHeader.record_length, recordLen);
     EXPECT_EQ(deviceIdRecHeader.descriptor_count, descriptorCount);
     EXPECT_EQ(deviceIdRecHeader.device_update_option_flags.value,