buglwIP - A Lightweight TCP/IP stack - Bugs: bug #37955, LWIP_ERROR fails with...


You are not allowed to post comments on this tracker with your current authentication level.

bug #37955: LWIP_ERROR fails with "message", doesn't call "handler"

Submitted by:  Valery Ushakov <uwe>
Submitted on:  Wed 19 Dec 2012 04:44:00 AM UTC  
Category:  None Severity:  3 - Normal
Item Group:  Faulty Behaviour Status:  Invalid
Privacy:  Public Assigned to:  Simon Goldschmidt <goldsimon>
Open/Closed:  Closed Planned Release:  None
lwIP version:  CVS Head

Thu 20 Dec 2012 07:44:39 AM UTC, comment #1: 

This is intended behaviour. The default should be assert but anyone not wanting this can disable the assert and define LWIP_ERROR to execute the handler instead. This is rather an advanced option. We could discuss whether we just use ASSERT, but some vote against it some years ago...

Anyway, the actual bug is that incoming packet handling should not fail on malicious packets. I've added a task to check this.

Simon Goldschmidt <goldsimon>
Project AdministratorIn charge of this item.
Wed 19 Dec 2012 04:44:00 AM UTC, original submission:  

LWIP_ERROR calls LWIP_PLATFORM_ASSERT(message) which is fatal.

This is probably not intended for innocuous error like calling netconn_api on a netconn in a wrong state.  Since LWIP_ERROR is also used e.g. in code that handles DHCP replies, a bad (malicious?) reply will be fatal too.

What's intended is probably some form of LWIP_PLATFORM_DIAG.  May be LWIP_DEBUGF with a special flag?

Valery Ushakov <uwe>


No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by goldsimon (Posted a comment)
  • -email is unavailable- added by uwe (Submitted the item)

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.




    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2012-12-20 goldsimon StatusNone => Invalid
        Assigned toNone => goldsimon
        Open/ClosedOpen => Closed

    Back to the top

    Powered by Savane 3.5