lwIP - A Lightweight TCP/IP stack - Bugs: bug #22530, api_msg.c's recv_raw() does not...
You are not allowed to post comments on this tracker with your current authentication level.
bug #22530: api_msg.c's recv_raw() does not consume data
Submitter: | Jonathan Larmour <jifl> | ||
Submitted: | Mon 10 Mar 2008 01:17:11 PM UTC | ||
Category: | None | Severity: | 3 - Normal |
Item Group: | Faulty Behaviour | Status: | Fixed |
Privacy: | Public | Assigned to: | fbernon |
Open/Closed: | Closed | Planned Release: | None |
lwIP version: | None |
Jump to the original submission
Wed 12 Mar 2008 04:59:53 PM UTC, comment #11: |
Simon Goldschmidt <goldsimon> |
Wed 12 Mar 2008 11:52:27 AM UTC, comment #10: Uhmm, there is always a "small" problem: the netbuf::addr is initialized with an address inside the "p" packet, and not inside the "q" one.
|
Frédéric Bernon <fbernon> |
Wed 12 Mar 2008 11:01:50 AM UTC, comment #9: It's check in. I think we can close it if there is no objections...
|
Frédéric Bernon <fbernon> |
Wed 12 Mar 2008 10:51:13 AM UTC, comment #8: Answer : the lwip_recvfrom for a SOCK_RAW should also returns the IP header (thank you jifl)
|
Frédéric Bernon <fbernon> |
Wed 12 Mar 2008 10:27:00 AM UTC, comment #7: I see a "problem" during my tests: what is supposed to return a raw pcb at the netconn/socket layer? Should the payload have to point on the IP header, or on the IP payload ?
|
Frédéric Bernon <fbernon> |
Mon 10 Mar 2008 07:47:53 PM UTC, comment #6: Definitively should go in for 1.3.0 since this is a real bug fix! Good work! |
Simon Goldschmidt <goldsimon> |
Mon 10 Mar 2008 03:10:27 PM UTC, comment #5: Looks good to me. If it's to be checked in before 1.3.0 it would probably be good to test it just in case, as there won't be much more testing after now.
|
Jonathan Larmour <jifl> |
Mon 10 Mar 2008 02:31:21 PM UTC, comment #4: I attach a patch file. Since I have the case with ping sender&ping receive in my application, I will test it if you want...
|
Frédéric Bernon <fbernon> |
Mon 10 Mar 2008 02:14:44 PM UTC, comment #3: Yes, which is why I don't think the API layer should eat the packet, as it's not definite that the API user is the proper (and only) place for the packet. |
Jonathan Larmour <jifl> |
Mon 10 Mar 2008 02:03:05 PM UTC, comment #2: If we return 1 in recv_raw (in api_msg.c), I suppose the stack would stop to response to "ping" if one of the application open a raw pcb with IP_PROTO_ICMP proto (by example, to send ping), right?
|
Frédéric Bernon <fbernon> |
Mon 10 Mar 2008 01:25:29 PM UTC, comment #1: I agree that this is a bug. recv_raw should not assume that if it hasn't "eaten" the data it will continue unmodified.
|
Jonathan Larmour <jifl> |
Mon 10 Mar 2008 01:17:11 PM UTC, original submission:
From lwip-users:
|
Jonathan Larmour <jifl> |
Depends on the following items: None found
Items that depend on this one: None found
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
Follow 6 latest changes.
Date | Changed by | Updated Field | Previous Value | => | Replaced by |
---|---|---|---|---|---|
2008-03-12 | fbernon | Status | Confirmed | Fixed | |
Open/Closed | Open | Closed | |||
2008-03-12 | fbernon | Assigned to | None | fbernon | |
Planned Release | 1.3.0 | ||||
2008-03-10 | fbernon | Attached File | - | Added recv_raw.patch, #15219 | |
2008-03-10 | jifl | Carbon-Copy | - | Added -email is unavailable- |
Powered by Savane 3.13-d3ae.
Corresponding source code
If that's the case, everything looks fine to me.