diff --git a/core/lb_proto_tcp.c b/core/lb_proto_tcp.c index 007974b..ef40bd9 100644 --- a/core/lb_proto_tcp.c +++ b/core/lb_proto_tcp.c @@ -440,6 +440,11 @@ tcp_response_rst(struct rte_mbuf *m, struct ipv4_hdr *iph, struct tcp_hdr *th, uint32_t seq, ack; uint8_t tcp_flags; + if (RST(th)) { + rte_pktmbuf_free(m); + return; + } + rte_pktmbuf_reset(m); m->pkt_len = m->data_len = ETHER_HDR_LEN + sizeof(struct ipv4_hdr) + sizeof(struct tcp_hdr);