lwip-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lwip-users] [LwIP 1.4.1] Ping length of 92 bytes via PPP crashes Lw


From: Marco Jakobs
Subject: Re: [lwip-users] [LwIP 1.4.1] Ping length of 92 bytes via PPP crashes LwIP core/pbuf.c
Date: Mon, 15 May 2017 15:39:09 +0200

>Have you checked the definition of LWIP_ERROR()?
>That line should return ERR_ARG if to is NULL but from is not (in other words, 
>to is not large enough).

Good point! :-) Thanks for getting me to it.

Indeed, coming from PPP and the length does exactly fills the last from_pbuf up 
to the last byte, there is another pbuf in the from_chain allocated, but with 
len=0. So the error check "thinks" there are more data but no more to_pbuf's.

That one deals with this:

LWIP_ERROR("p_to != NULL", (p_to != NULL) || (p_from == NULL) || (p_from->len 
== NULL) , return ERR_ARG;);



The assert comes from the ICMP routine ;-) :

      if (pbuf_copy(r, p) != ERR_OK) {
        LWIP_ASSERT("icmp_input: copying to new pbuf failed\n", 0);
        goto memerr;
      }

There's no such thing as pushing into 1.4.1 :-)

Understand ;-))





reply via email to

[Prev in Thread] Current Thread [Next in Thread]