base: return valid completion code

According to the PLDM base specification, completion code `0x21`
corresponds to `PLDM_ERROR_INVALID_TRANSFER_CONTEXT`. However, the
current implementation in `libpldm` incorrectly maps `0x21` to
`PLDM_INVALID_TRANSFER_OPERATION_FLAG`, which is not aligned with the
specification.

To maintain consistency with the standard, we should instead use
`PLDM_ERROR_UNEXPECTED_TRANSFER_FLAG_OPERATION` (`0x23`) to represent
this error condition more accurately. However, since
`PLDM_INVALID_TRANSFER_OPERATION_FLAG` is currently in use by `libpldm`
clients (such as `pldm`), removing it immediately would introduce
compatibility issues. Therefore, we will first migrate client code to
use `PLDM_ERROR_UNEXPECTED_TRANSFER_FLAG_OPERATION` (`0x23`) before
removing the incorrect definition from `libpldm`.

Change-Id: I7e2130c1f132dc6c8b426dd373b4a8a73507ac22
Signed-off-by: Manojkiran Eda <manojkiran.eda@gmail.com>
diff --git a/tests/dsp/base.cpp b/tests/dsp/base.cpp
index 25536ec..c544766 100644
--- a/tests/dsp/base.cpp
+++ b/tests/dsp/base.cpp
@@ -686,7 +686,7 @@
                                            &pldm_type, &flag, &transfer_ctx,
                                            &transfer_handle, &section_offset,
                                            &section_length),
-              PLDM_INVALID_TRANSFER_OPERATION_FLAG);
+              PLDM_ERROR_UNEXPECTED_TRANSFER_FLAG_OPERATION);
 }
 
 TEST(MultipartReceive, testDecodeRequestFailBadOffset)