I found typos. Please see below. Regards, Nickle
> -----Original Message----- > From: abner.ch...@amd.com <abner.ch...@amd.com> > Sent: Friday, January 12, 2024 11:26 AM > To: devel@edk2.groups.io > Cc: Nickle Wang <nick...@nvidia.com>; Igor Kulchytskyy <ig...@ami.com> > Subject: [edk2-redfish-client][PATCH 3/3] RedfishClientPkg/ConverterLib: > Function to remove Redfish unchangeable properties > > External email: Use caution opening links or attachments > > > From: Abner Chang <abner.ch...@amd.com> > > Update RedfishCsCommon.c to add a function to remove Redfish unchangeable > properties. > > Signed-off-by: Abner Chang <abner.ch...@amd.com> > Cc: Nickle Wang <nick...@nvidia.com> > Cc: Igor Kulchytskyy <ig...@ami.com> > --- > .../ConverterLib/include/RedfishCsCommon.h | 20 +++++++ > .../ConverterLib/src/RedfishCsCommon.c | 55 +++++++++++++++++++ > 2 files changed, 75 insertions(+) > > diff --git a/RedfishClientPkg/ConverterLib/include/RedfishCsCommon.h > b/RedfishClientPkg/ConverterLib/include/RedfishCsCommon.h > index e454ab0b73..f5278015aa 100644 > --- a/RedfishClientPkg/ConverterLib/include/RedfishCsCommon.h > +++ b/RedfishClientPkg/ConverterLib/include/RedfishCsCommon.h > @@ -104,6 +104,26 @@ DestoryCsMemory ( > RedfishCS_void *rootCs > ); > > +/** > + This function removes the unchangeable Redfish properties from JSON > +raw text > + The content in JsonString is left unmodified, the caller has to give > +enoungh > + memory pointed by NewJsonBuffer in the size of BufferSize. > + > + JsonString Input JSON raw string > + NewJsonBuffer Pointer to memory for the updated JSON raw string in > + size of BuufferSize. > + BuufferSize The buffer size of NewJsonBuffer > + > + Return RedfishCS_status. > + > +**/ > +RedfishCS_status > +RemoveUnchangeableProperties ( > + RedfishCS_char *JsonString, > + RedfishCS_char *NewJsonBuffer, > + RedfishCS_uint32 BuufferSize > + ); BufferSize. You have double 'u' above. And how about to use ReadOnly instead of "Unchangeable"? > + > typedef struct _RedfishCS_char_Array RedfishCS_char_Array; > typedef struct _RedfishCS_int64_Array RedfishCS_int64_Array; > typedef struct _RedfishCS_bool_Array RedfishCS_bool_Array; > diff --git a/RedfishClientPkg/ConverterLib/src/RedfishCsCommon.c > b/RedfishClientPkg/ConverterLib/src/RedfishCsCommon.c > index fd31e5296b..c6996d7d5d 100644 > --- a/RedfishClientPkg/ConverterLib/src/RedfishCsCommon.c > +++ b/RedfishClientPkg/ConverterLib/src/RedfishCsCommon.c > @@ -1461,3 +1461,58 @@ CsEmptyPropLinkToJson ( > > return RedfishCS_status_success; > } > + > +/** > + This function removes the unchangeable Redfish properties from JSON > +raw text > + The content in JsonString is left unmodified, the caller has to give > +enoungh > + memory pointed by NewJsonBuffer in the size of BufferSize. > + > + JsonString Input JSON raw string > + NewJsonBuffer Pointer to memory for the updated JSON raw string in > + size of BuufferSize. > + BuufferSize The buffer size of NewJsonBuffer > + > + Return RedfishCS_status. > + > +**/ > +RedfishCS_status > +RemoveUnchangeableProperties ( > + RedfishCS_char *JsonString, > + RedfishCS_char *NewJsonBuffer, > + RedfishCS_uint32 BuufferSize > + ) BufferSize. You have double 'u' above. > +{ > + json_t *JsonObj; > + RedfishCS_char *TempChar; > + RedfishCS_status Status; > + > + if ((JsonString == NULL) || (NewJsonBuffer == NULL)) { > + return RedfishCS_status_invalid_parameter; > + } > + > + JsonObj = json_loads (JsonString, 0, NULL); if (JsonObj == NULL) { > + return RedfishCS_status_unknown_error; } > + > + json_object_del (JsonObj, "@odata.type"); json_object_del (JsonObj, > + "@odata.id"); json_object_del (JsonObj, "Id"); json_object_del > + (JsonObj, "Name"); > + > + TempChar = json_dumps ((json_t *)JsonObj, JSON_INDENT (2)); > + if (TempChar != NULL) { > + if ((strlen (TempChar) + 1) > BuufferSize) { > + Status = RedfishCS_status_insufficient_memory; > + } else { > + memcpy (NewJsonBuffer, TempChar, strlen (TempChar) + 1); > + free (TempChar); > + Status = RedfishCS_status_success; > + } > + } else { > + Status = RedfishCS_status_unknown_error; > + } > + json_decref(JsonObj); > + return Status; > +} > + > -- > 2.37.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#113863): https://edk2.groups.io/g/devel/message/113863 Mute This Topic: https://groups.io/mt/103676920/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-