lwIP - A Lightweight TCP/IP stack - Bugs: bug #43739, Accept not reporting errors about...
You are not allowed to post comments on this tracker with your current authentication level.
bug #43739: Accept not reporting errors about aborted connections
| Submitter: | Joel Cunningham <jcunningham> | ||
| Submitted: | Tue 02 Dec 2014 05:18:26 PM UTC | ||
| Category: | sockets/netconn | Severity: | 2 - Minor |
| Item Group: | Change Request | Status: | Fixed |
| Privacy: | Public | Assigned to: | goldsimon |
| Open/Closed: | Closed | Planned Release: | None |
| lwIP version: | 1.4.1 | ||
|
Tue 05 Apr 2016 07:43:52 PM UTC, comment #5: |
Simon Goldschmidt <goldsimon> |
|
Wed 23 Mar 2016 08:59:54 PM UTC, comment #4: I've started to work on this by passing 'tcp_alloc()' failures on listen-input to the accept-callback (this is the first time the accept callback is called with err != ERR_OK).
|
Simon Goldschmidt <goldsimon> |
|
Wed 25 Feb 2015 09:09:53 PM UTC, comment #3:
|
Simon Goldschmidt <goldsimon> |
|
Wed 03 Dec 2014 03:46:10 PM UTC, comment #2: I would agree out-of-pcbs should be included in this failure (also out-of-sockets). The accept() call in sockets.c will return ENFILE if out of sockets.
|
Joel Cunningham <jcunningham> |
|
Tue 02 Dec 2014 08:45:29 PM UTC, comment #1: Well... what's the big difference between "out-of-netconns" (internally: connection is established and then aborted) and "out-of-pcbs" (internally: SYN is RST directly)?
|
Simon Goldschmidt <goldsimon> |
|
Tue 02 Dec 2014 05:18:26 PM UTC, original submission:
I've discovered what appears to be a bug in accept's handling of aborted connections due to exhaustion of netconns.
|
Joel Cunningham <jcunningham> |
No files currently attached
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 |
|---|---|---|---|---|---|
| 2016-04-05 | goldsimon | Status | In Progress | Fixed | |
| Open/Closed | Open | Closed | |||
| 2016-03-23 | goldsimon | Status | None | In Progress | |
| Assigned to | None | goldsimon | |||
| 2015-02-25 | goldsimon | Severity | 3 - Normal | 2 - Minor | |
| Item Group | Faulty Behaviour | Change Request |
Powered by Savane 3.12.
Corresponding source code

Fixed: netconn_accept() returns ERR_ABRT (sockets: ECONNABORTED) for aborted connections, ERR_CLSD (sockets: EINVAL) if the listening netconn is closed, which better seems to follow the standard.
The only downside is that ERR_ABRT is not stored in conn->last_err (since that would block further acceptes: ERR_ABRT is fatal) -> task #13922 Remove fatal error handling