diff --git a/tests/unit/test_routing_manager.cpp b/tests/unit/test_routing_manager.cpp index 5f1ac2f96..6fc0a37d5 100644 --- a/tests/unit/test_routing_manager.cpp +++ b/tests/unit/test_routing_manager.cpp @@ -342,6 +342,36 @@ otError otPlatInfraIfSendIcmp6Nd(uint32_t aInfraIfIndex, return OT_ERROR_NONE; } +//---------------------------------------------------------------------------------------------------------------------- + +Array sHeapAllocatedPtrs; + +#if OPENTHREAD_CONFIG_HEAP_EXTERNAL_ENABLE + +void *otPlatCAlloc(size_t aNum, size_t aSize) +{ + void *ptr = calloc(aNum, aSize); + + SuccessOrQuit(sHeapAllocatedPtrs.PushBack(ptr)); + + return ptr; +} + +void otPlatFree(void *aPtr) +{ + if (aPtr != nullptr) + { + void **entry = sHeapAllocatedPtrs.Find(aPtr); + + VerifyOrQuit(entry != nullptr, "A heap allocated item is freed twice"); + sHeapAllocatedPtrs.Remove(*entry); + } + + free(aPtr); +} + +#endif + } // extern "C" //--------------------------------------------------------------------------------------------------------------------- @@ -536,35 +566,6 @@ exit: //---------------------------------------------------------------------------------------------------------------------- -Array sHeapAllocatedPtrs; - -#if OPENTHREAD_CONFIG_HEAP_EXTERNAL_ENABLE - -void *otPlatCAlloc(size_t aNum, size_t aSize) -{ - void *ptr = calloc(aNum, aSize); - - SuccessOrQuit(sHeapAllocatedPtrs.PushBack(ptr)); - - return ptr; -} - -void otPlatFree(void *aPtr) -{ - if (aPtr != nullptr) - { - void **entry = sHeapAllocatedPtrs.Find(aPtr); - - VerifyOrQuit(entry != nullptr, "A heap allocated item is freed twice"); - sHeapAllocatedPtrs.Remove(*entry); - } - - free(aPtr); -} -#endif - -//---------------------------------------------------------------------------------------------------------------------- - void LogRouterAdvert(const Icmp6Packet &aPacket) { Ip6::Nd::RouterAdvertMessage raMsg(aPacket);