diff --git a/sys/net/gnrc/network_layer/icmpv6/echo/gnrc_icmpv6_echo.c b/sys/net/gnrc/network_layer/icmpv6/echo/gnrc_icmpv6_echo.c index 39eea8a97d..a48ac04f37 100644 --- a/sys/net/gnrc/network_layer/icmpv6/echo/gnrc_icmpv6_echo.c +++ b/sys/net/gnrc/network_layer/icmpv6/echo/gnrc_icmpv6_echo.c @@ -93,6 +93,12 @@ void gnrc_icmpv6_echo_req_handle(gnrc_netif_t *netif, ipv6_hdr_t *ipv6_hdr, pkt = hdr; hdr = gnrc_netif_hdr_build(NULL, 0, NULL, 0); + if (hdr == NULL) { + DEBUG("icmpv6_echo: no space left in packet buffer\n"); + gnrc_pktbuf_release(pkt); + return; + } + if (netif != NULL) { ((gnrc_netif_hdr_t *)hdr->data)->if_pid = netif->pid; }