Commit Graph

59 Commits

Author SHA1 Message Date
goldsimon
fa4b711495 Added some ASSERTS and casts to prevent warnings when assigning to smaller types. 2007-07-02 20:13:45 +00:00
goldsimon
9abbb581c5 Changed tcp_pcb->snd_queuelen from u8_t to u16_t to prevent overflowing when sending many small packets with big send buffer, added assertions and oveflow checks for snd_queuelen. 2007-07-01 15:56:04 +00:00
goldsimon
6c3c184bc7 Added check to prevent tcp_pcb->snd_queuelen from overflowing. 2007-06-29 17:09:47 +00:00
goldsimon
2b02db2675 Remove warning in tcp_enqueue (cast from u32_t to u16_t) 2007-06-27 16:42:20 +00:00
goldsimon
bb9e9e5480 Changed the expression of LWIP_ERROR to the same as for LWIP_ASSERT 2007-06-22 20:50:21 +00:00
goldsimon
6784fd64f3 Done some work on task #6933: converted some LWIP_ASSERTs to LWIP_ERROR to give back an error return value for LWIP_NOASSERT=1 2007-06-17 15:20:21 +00:00
fbernon
1d7caed340 tcp_out.c: Fix for bug #20075 : "A problem with keep-alive timer and TCP flags" where TCP flags wasn't initialized in tcp_keepalive. Reported by Srinivas Gollakota with help of Oleg Tyshev. 2007-06-11 13:59:10 +00:00
goldsimon
837cb42679 Done some work on task #1549 (function documentation) 2007-06-08 20:59:17 +00:00
goldsimon
255d5a748f Included patch #5920: Create define to override C-library memcpy. 2 Defines are created: MEMCPY() for normal memcpy, SMEMCPY() for situations where some compilers might inline the copy and save a function call. Also replaced all calls to memcpy() with calls to (S)MEMCPY(). 2007-05-10 05:20:05 +00:00
kieranm
79be888b6f * tcp.c, tcp_in.c, tcp_out.c, tcp.h: Modify way the retransmission
timer is reset to fix bug#19434, with help from Oleg Tyshev.
2007-04-12 14:56:07 +00:00
fbernon
5368a760cf most of files: prefix all debug.h define with "LWIP_" to avoid any conflict with others environment defines (these were too "generic"). 2007-03-30 08:47:04 +00:00
kieranm
7294cb080b * Fix all uses of pbuf_header to check the return value. In some
cases just assert if it fails as I'm not sure how to fix them, but
    this is no worse than before when they would carry on regardless
    of the failure.
2007-03-21 12:55:00 +00:00
fbernon
5c65d4733b Keepalive values can be configured at run time with LWIP_TCP_KEEPALIVE, but don't change this unless you know what you're doing (default are RFC1122 compliant). Note that TCP_KEEPIDLE and TCP_KEEPINTVL have to be set in seconds.
Old TCP_KEEPALIVE can always be used, and its only difference with TCP_KEEPIDLE is this last use seconds and not milliseconds with setsockopt.

Some documentation (not perfect, but...):

http://publib.boulder.ibm.com/infocenter/pseries/v5r3/index.jsp?topic=/com.ibm.aix.commtechref/doc/commtrf2/setsockopt.htm
2007-03-11 15:53:43 +00:00
christiaans
cdb7557d88 Added SNMP counters. 2006-08-18 10:18:42 +00:00
likewise
0b3b713123 Removed 'even sndbuf' fix in TCP, this fix was a ugly hack for the incomplete checksum routine that does not work now that the checksum routine is fixed. 2006-03-01 16:53:41 +00:00
christiaans
e1b215aa73 Introduced cc.h formatters and removed SO_REUSE from transport layers. 2005-11-25 12:03:38 +00:00
likewise
533fc217d4 4 February 2004, Leon Woestenberg <leon.woestenberg@gmx.net>
tcp_in.c: Applied fix patch for bug #2679.
tcp_out.c: Applied fix patch for bug #2679.
http://savannah.nongnu.org/bugs/?func=detailitem&item_id=2679
2005-02-04 13:43:13 +00:00
likewise
3160488352 queue was referenced before initialization in first goto memerr branch code. Replaced goto branch by its minimal equivalent error handling code. 2005-02-04 13:28:50 +00:00
likewise
6880fa62f8 Added some missing string.h includes. 2005-01-24 21:05:47 +00:00
likewise
a549ec0382 Added inline source documentation. 2004-12-27 14:42:02 +00:00
likewise
c61f01b206 tcp_write(): optimize order of valid states checks, most common first.
added assertion: when the queues are NULL, queuelen must be zero.
remove ACK flags from a PCB, only when we could succesfully sent
an empty ACK packet.
2004-12-26 01:36:37 +00:00
kieranm
2ed5bc5195 Kieran Mansley - kjm25@cam.ac.uk - 12th September 2004
Applied patch from Sam Jansen as detailed in
http://lists.gnu.org/archive/html/lwip-users/2004-07/msg00106.html
to correctly handle retransmission after a retransmission timeout
2004-09-12 16:34:06 +00:00
softins
a4f5673ff3 Small corrections to some debugging statements, to pacify compiler. 2004-07-22 08:06:00 +00:00
likewise
58b64d42f1 Additional fix for TCP retransmit fix (as discussed by Sam Jansen en Kieran Mansley on lwip-devel, July 13 2004). 2004-07-14 23:21:53 +00:00
kieranm
8273b54108 Kieran Mansley - 14th July 2004
* Only move a single segment from the unacked queue to the unsent queue when performing a retransmit
2004-07-14 09:48:27 +00:00
likewise
8f309a3fec Clean-up source comment documentation for Doxygen. 2004-04-29 21:50:39 +00:00
likewise
82f852abf3 Fix cyclic dependencies by careful re-ordering of #includes.
This is really nasty. Can we forward-declare pointers to structs?
2004-03-12 00:10:07 +00:00
kieranm
f9dea9d35b Kieran Mansley - kieranm@gtemail.net - 9th Mar 2004
- Added comment to tcp_write() to remind of the importance of call to
   tcp_output() to send any enqueued data.
2004-03-09 15:55:37 +00:00
lukem
4bf3359574 Added ability to disable checksum generation and checking at compile-time 2004-02-20 01:46:03 +00:00
likewise
e1c4bfad05 Merged from DEVEL, except for the API change in etharp.c. 2004-02-07 00:30:03 +00:00
uid67528
eed8ea5bc1 Merged from DEVEL. etharp prepared for queueing feature. DHCP fix. 2003-12-28 02:38:51 +00:00
likewise
e4a6d199fe Merged from DEVEL into main tree. 2003-11-14 13:17:23 +00:00
likewise
93dfcdce93 Fixes wrongly cast LWIP_DEBUGF arguments (patch #1596 and more). 2003-06-11 22:34:51 +00:00
kieranm
8014551908 Changed DEBUGF to LWIP_DEBUGF 2003-06-10 10:45:29 +00:00
likewise
df99ce9d98 Replaced all tabs with two spaces (regardless of indentation is correct). 2003-06-09 21:14:47 +00:00
jani
6719f10034 put LWIP_MAX and LWIP_MIN macros in def.h and use these instead of locally declaring them in .c files 2003-05-27 13:44:08 +00:00
likewise
30d5b11628 Cleanup of some formatting and comments. 2003-05-20 08:16:29 +00:00
jani
cd65d36822 patches 1492, 1493 and 1494 from Marc 2003-05-19 14:41:54 +00:00
likewise
03bc7c868b Major stylo search/replace for "One space between keyword and opening bracket." 2003-05-01 13:24:01 +00:00
likewise
ac2b4c2174 Debug levels set on some serious debug messages. 2003-04-15 12:43:15 +00:00
davidhaas
50f47f18c1 Fix memory leaks.
When pbufs are chained, the second pbuf must be freed, if no higher level
application refers to it any longer.
2003-04-09 20:28:15 +00:00
likewise
a4a7a7a47e TCP data can be safely referenced as PBUF_ROM instead of PBUF_REF. 2003-04-07 21:28:16 +00:00
likewise
fa34d51b7e Added documentation and comments. 2003-03-25 12:59:42 +00:00
jani
859f06a91e if LWIP_TCP is 0 do not link in TCP code.putting ugly ifdefs in api and core :(.Also only udp_init if LWIP_UDP is on 2003-03-21 10:48:21 +00:00
davidhaas
32d9f25a6f Fixed up and made work a PBUF_REF type. Most of the code uses this now
instead of PBUF_ROM. This addition allows support of copy-on-demand where the
lower layers can call pbuf_unref() which tests for any PBUF_REF buffers and
replaces them with PBUF_POOL buffers. This is now used
everywhere. pbuf_unref() is called in ARP queueing and in the coldfire
driver, which puts frames on a DMA queue and frees them later.

Along with this change pbuf_free() now goes through the entire chain of
buffers and tests all the ref counters, not just the first one. Generally now
pbuf_ref_chain() should be called and not pbuf_ref(). This change was made
because it is possible for the head of the pbuf chain to have a different
count than the payload pbuf which might have been passed by the application.
2003-03-19 22:14:49 +00:00
jani
18df3961e9 byte-order handling functions are in inet.c now and the uperrcase counterparts are gone. opt.h has all the
configurable items debug does not need to be directly included.
2003-02-21 16:43:46 +00:00
jani
451926e5c3 don't include arch/lib.h 2003-02-07 10:23:15 +00:00
davidhaas
dd2fa15e8a Add the following features and bugfixes:
Added select() functionality to sockets library.
Support for errno in sockets library.
Byte ordering fixes.
basic lwip_ioctl(), FIONREAD, get/setsockopt() etc. support

- added additional argument to netif_add to pass state pointer so that the
if_init function has access to context information before
the interface is added, without accessing globals.

- added netif_remove()

- to conserve cpu load the tcpip_tcp_timer should only be active
when tcbs that need it exist.

- pass length of available data to callbacks for NETCONN_EVT_RCV events

- added tcpip_link_input(), a hack to allow processing of PPP
packets in tcpip_thread() context. This saves threads and context
switches.

- renamed incompatible ASSERT() macro to LWIP_ASSERT() to avoid name
collision.

- changed a bunch of %d's to %u's in format strings for unsigned values.

- added ip_frag to lwip_stats.

- changed IP_REASS_MAXAGE and IP_REASS_TMO defaults to more realistic
values.

- added sys_timeout_remove() function to cancel timeouts (needed by PPP
amongst other things).

- tolerate NULL returns from sys_arch_timeouts() since some threads might
not need to use or have timeouts.

- added sys_sem_wait_timeout()

- moved mem_malloc() function to end of mem.c to work around tasking
compiler bug.

- automatically bind to local tcp port if 0.

- allow customization of port ranges for automatic local bindings.

- corrected various typos, spelling errors, etc..

Thanks to Marc Boucher for many of these changes.
2003-02-06 22:18:56 +00:00
jani
3e6202f614 do not set rtime too many times to 0.it's enough to do it in tcp_output_segment 2003-01-14 08:37:01 +00:00
jani
a993e962f5 fix compiler warnings in DEBUGF 2003-01-14 08:22:05 +00:00