diff --git a/src/pkt_normalizer.c b/src/pkt_normalizer.c index f9d0204c..1376ae40 100644 --- a/src/pkt_normalizer.c +++ b/src/pkt_normalizer.c @@ -124,6 +124,17 @@ void pn_deinit(struct PKTNORM* pn) { void pn_unpacker_reset_state(struct PKTNORM* pn) { DEBUG_TRACE(DEBUG_CATEGORY_NORMALIZER, ""); if (!pn) return; + + // Reset buffer + if (pn->data) { + memory_pool_free(pn->etcp->instance->data_pool, pn->data); + pn->data = NULL; + } + pn->data_ptr = 0; + pn->data_size = 0; + pn->frag_size = 0; + + // Reset recvpart if (pn->recvpart) { queue_dgram_free(pn->recvpart); queue_entry_free(pn->recvpart);