forked from acouzens/open5gs
[SBI] Fix possible crash when handling PatchItems in NFProfile PATCH req
This commit is contained in:
parent
cef5b38087
commit
dfcd3431c3
|
@ -1211,9 +1211,9 @@ ogs_sbi_request_t *ogs_nnrf_nfm_build_update(void)
|
||||||
ogs_sbi_message_t message;
|
ogs_sbi_message_t message;
|
||||||
ogs_sbi_request_t *request = NULL;
|
ogs_sbi_request_t *request = NULL;
|
||||||
|
|
||||||
OpenAPI_list_t *PatchItemList;
|
OpenAPI_list_t *PatchItemList = NULL;
|
||||||
OpenAPI_patch_item_t StatusItem;
|
OpenAPI_patch_item_t StatusItem = { 0 };
|
||||||
OpenAPI_patch_item_t LoadItem;
|
OpenAPI_patch_item_t LoadItem = { 0 };
|
||||||
|
|
||||||
nf_instance = ogs_sbi_self()->nf_instance;
|
nf_instance = ogs_sbi_self()->nf_instance;
|
||||||
ogs_assert(nf_instance);
|
ogs_assert(nf_instance);
|
||||||
|
@ -1235,7 +1235,6 @@ ogs_sbi_request_t *ogs_nnrf_nfm_build_update(void)
|
||||||
goto end;
|
goto end;
|
||||||
}
|
}
|
||||||
|
|
||||||
memset(&StatusItem, 0, sizeof(StatusItem));
|
|
||||||
StatusItem.op = OpenAPI_patch_operation_replace;
|
StatusItem.op = OpenAPI_patch_operation_replace;
|
||||||
StatusItem.path = (char *)"/nfStatus";
|
StatusItem.path = (char *)"/nfStatus";
|
||||||
StatusItem.value = OpenAPI_any_type_create_string(
|
StatusItem.value = OpenAPI_any_type_create_string(
|
||||||
|
@ -1247,7 +1246,6 @@ ogs_sbi_request_t *ogs_nnrf_nfm_build_update(void)
|
||||||
|
|
||||||
OpenAPI_list_add(PatchItemList, &StatusItem);
|
OpenAPI_list_add(PatchItemList, &StatusItem);
|
||||||
|
|
||||||
memset(&LoadItem, 0, sizeof(LoadItem));
|
|
||||||
LoadItem.op = OpenAPI_patch_operation_replace;
|
LoadItem.op = OpenAPI_patch_operation_replace;
|
||||||
LoadItem.path = (char *)"/load";
|
LoadItem.path = (char *)"/load";
|
||||||
LoadItem.value = OpenAPI_any_type_create_number(ogs_sbi_self()->nf_instance->load);
|
LoadItem.value = OpenAPI_any_type_create_number(ogs_sbi_self()->nf_instance->load);
|
||||||
|
@ -1264,9 +1262,12 @@ ogs_sbi_request_t *ogs_nnrf_nfm_build_update(void)
|
||||||
ogs_expect(request);
|
ogs_expect(request);
|
||||||
|
|
||||||
end:
|
end:
|
||||||
OpenAPI_list_free(PatchItemList);
|
if (LoadItem.value)
|
||||||
OpenAPI_any_type_free(StatusItem.value);
|
OpenAPI_any_type_free(LoadItem.value);
|
||||||
OpenAPI_any_type_free(LoadItem.value);
|
if (StatusItem.value)
|
||||||
|
OpenAPI_any_type_free(StatusItem.value);
|
||||||
|
if (PatchItemList)
|
||||||
|
OpenAPI_list_free(PatchItemList);
|
||||||
|
|
||||||
return request;
|
return request;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue