Commit Graph

2621 Commits

Author SHA1 Message Date
goldsimon
6777ae2ada Another modification for patch #6683 (Customizable AUTOIP seed address) 2008-12-10 17:08:42 +00:00
goldsimon
2cf3e6e9bc Corrected the range calculation of LWIP_AUTOIP_CREATE_SEED_ADDR, corrected comments 2008-12-04 18:34:48 +00:00
goldsimon
491b73d5f2 Checked in (slightly modified) patch #6683: Customizable AUTOIP "seed" address. This should reduce AUTOIP conflicts if LWIP_AUTOIP_CREATE_SEED_ADDR is overridden. 2008-12-03 15:13:21 +00:00
goldsimon
299e2a7077 fixed bug ##24596: Vulnerability on faulty TCP options length in tcp_parseopt 2008-10-18 15:24:06 +00:00
goldsimon
13a139eef7 fixed bug #24517: IP reassembly crashes on unaligned IP headers by packing the struct ip_reass_helper. 2008-10-15 18:20:23 +00:00
jifl
ba98bcdc60 * dns.c: Hard-code structure sizes, to avoid issues on some compilers where
padding is included.
2008-10-02 13:53:16 +00:00
jifl
c231e95cce * tcp.c: Fix bug #24227, wrong error message in tcp_bind. 2008-09-30 13:50:39 +00:00
jifl
6f6c8c5434 * pbuf.c (pbuf_copy_partial): Improve function description comment. Thanks to Luca Ceresoli 2008-09-30 13:40:41 +00:00
goldsimon
edf72a7dfb fixed one small warning (compared u16_t to <= 0) 2008-08-26 19:57:20 +00:00
goldsimon
6374766a55 Added 2 asserts in pbuf_realloc to prevent dereferencing a null pointer in invalid pbuf queues 2008-08-26 19:34:18 +00:00
goldsimon
c779a9f29f Fixed some warnings, changed some debug defines to include better names 2008-07-16 20:36:12 +00:00
goldsimon
13d8ae859d fixed bug #21433: Calling mem_free/pbuf_free from interrupt context isn't safe: LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT allows mem_free to run between mem_malloc iterations. Added illegal counter for mem stats. 2008-06-30 18:16:51 +00:00
goldsimon
779938ea68 patch #6483: stats module improvement: Added defines to display each module's statistic individually, added stats defines for MEM, MEMP and SYS modules, removed (unused) rexmit counter. 2008-06-27 18:37:53 +00:00
jifl
139944a3ac * tcp_in.c: Fix for bug #23693 as suggested by Art R. Ensure cseg is unused
if tcp_seg_copy fails.
2008-06-24 15:46:38 +00:00
goldsimon
3d8e5003af Fixed includes in netif.c, removed loop_cnt_max member in struct netif (instead the define LWIP_LOOPBACK_MAX_PBUFS is used directly) 2008-06-19 16:27:18 +00:00
goldsimon
c93cfb2c74 Changed two MEMCPY calls to SMEMCPY 2008-06-17 20:16:23 +00:00
goldsimon
ef3666ef26 Checked in some ideas of patch #6460 (loop optimizations) and created defines for swapping bytes and folding u32 to u16. 2008-06-17 20:06:25 +00:00
goldsimon
eba83ab740 Changed loopback code (less difference between NO_SYS = 0 / 1), added setting LWIP_LOOPBACK_MAX_PBUFS to limit loopback-queued pbufs 2008-06-17 19:39:22 +00:00
goldsimon
88ff8c83e9 Checked in slightly modified version of patch # 6370: Moved loopif code to netif.c so that loopback traffic is supported on all netifs (all local IPs). 2008-06-12 20:10:08 +00:00
kieranm
24e0b25215 Remove redundant "if" statement, and use real rcv_wnd
rather than rcv_ann_wnd when deciding if packets are in-window.
Contributed by <arasmussen@consultant.datasys.swri.edu>
2008-05-30 12:21:29 +00:00
goldsimon
9ccd31a12e fixed bug #22804: dhcp_stop doesn't clear NETIF_FLAG_DHCP (flag now cleared) 2008-04-15 17:24:54 +00:00
goldsimon
a9aefcc1be Fixed comments for pbuf_copy() and find_entry() as proposed by Luca Ceresoli on lwip-users 2008-04-01 19:05:40 +00:00
goldsimon
43dd38df0a fixed bug #21433 (Calling mem_free/pbuf_free from interrupt context isn't safe): set LWIP_USE_HEAP_FROM_INTERRUPT to 1 in lwipopts.h or use tcpip_callback_nonblocking(pbuf_free_int, p)/ tcpip_callback_nonblocking(mem_free, m) to free pbufs or heap memory from interrupt context 2008-03-27 19:29:35 +00:00
goldsimon
aee9c4c8e6 fixed bug #22249: division by zero could occur if a remote host sent a zero mss as TCP option. 2008-03-26 11:57:12 +00:00
fbernon
7fa9010f35 igmp.h, igmp.c: Fix bug #22613 "IGMP iphdr problem" (could have some problems to fill the IP header on some targets, use now the ip.h macros to do it). 2008-03-17 13:40:00 +00:00
jifl
a48370d5e9 * inet_chksum.c: Allow choice of one of the sample algorithms to be
made from lwipopts.h. Fix comment on how to override LWIP_CHKSUM.
2008-03-10 16:12:31 +00:00
jifl
f067d34392 * pbuf.c, ppp.c: Fix warnings on some systems with mem_malloc. 2008-03-04 16:37:46 +00:00
jifl
30d4c243ec * mem.c, stats.c, mem.h: apply patch #6414 to avoid compiler errors
and/or warnings on some systems where mem_size_t and size_t differ.
2008-03-04 16:31:31 +00:00
fbernon
2637f2ad3a inet_chksum.c: minor change for coding style 2008-03-04 14:26:44 +00:00
fbernon
9b92f4c882 dhcp.c: minor change for coding style 2008-03-04 14:25:58 +00:00
kieranm
42344ce20c 2008-03-04 Kieran Mansley (contributions by others)
* Numerous small compiler error/warning fixes from contributions to
    mailing list after 1.3.0 release candidate made.
2008-03-04 13:41:23 +00:00
goldsimon
c54777d957 Coding style: use named constants instead of numbers only 2008-01-27 11:22:14 +00:00
fbernon
7b11fb75d9 Minor changes: replace directy call to memcpy by MEMCPY macro. 2008-01-26 16:11:39 +00:00
fbernon
e937521014 dns.c: Fix bug #22108 "DNS problem" caused by unaligned structures. 2008-01-25 13:12:12 +00:00
fbernon
f02c39a402 tcp.c, tcp_in.c, tcp.h, opt.h: Rename LWIP_CALCULATE_EFF_SEND_MSS in TCP_CALCULATE_EFF_SEND_MSS to have coherent TCP options names. 2008-01-22 21:15:14 +00:00
fbernon
c580c2be75 Minor changes: fix a warning: "src\core\ipv4\ip_frag.c (782) : warning: potential uninitialized reference to "newpbuflen" in func "_ip_frag"" 2008-01-22 18:56:40 +00:00
fbernon
bfd96264e6 Minor changes: fix warning in dhcp_unfold_reply when LWIP_DEBUG=0 2008-01-21 16:55:26 +00:00
fbernon
baab7c04f7 Minor changes: fix some traces in ip_frag.c (coding style and end of lines) 2008-01-21 16:53:10 +00:00
kieranm
6f00cbb6ef 2008-01-15 Kieran Mansley
* tcp_out.c: BUG20511.  Modify persist timer to start when we are
    prevented from sending by a small send window, not just a zero
    send window.
2008-01-15 13:00:51 +00:00
fbernon
7518acf634 rawapi.txt, api_msg.c, tcp.c, tcp_in.c, tcp.h: changes for task #7675 "Enable to refuse data on a TCP_EVENT_RECV call". Important, behavior changes for the tcp_recv callback (see rawapi.txt). 2008-01-14 21:07:08 +00:00
fbernon
52e6922e5a ip.c: Integrate patch #6369" ip_input : checking before realloc". 2008-01-14 20:53:23 +00:00
fbernon
82ddf82866 Minor change: add comment 2008-01-12 16:46:40 +00:00
jifl
886cfbe12d Minor spelling typos and formatting fixes. 2008-01-11 14:28:58 +00:00
jifl
b333b7c9dc * opt.h, ip.c: Rename IP_OPTIONS define to IP_OPTIONS_ALLOWED to avoid
conflict with Linux system headers.
2008-01-09 10:05:23 +00:00
fbernon
de4b9b584c Fix DHCP build problem. 2008-01-06 22:07:03 +00:00
jifl
bf924118de * dhcp.c: fix bug #19927: "DHCP NACK problem" by clearing any existing set IP
address entirely on receiving a DHCPNAK, and restarting discovery.
2008-01-06 21:09:11 +00:00
fbernon
caa1834b70 Minor changes in lwip folder: fix some warnings. 2008-01-05 00:13:33 +00:00
fbernon
c61262d839 Minor changes in lwip folder: fix some warnings. 2008-01-04 23:24:05 +00:00
fbernon
9c4daa312d Minor changes in lwip folder: fix some warnings, coding style, and rename "internal" netconn_alloc function. 2008-01-04 23:07:44 +00:00
fbernon
32005617b9 rawapi.txt, api.h, api_lib.c, api_msg.h, api_msg.c, sockets.c, tcp.h, tcp.c, tcp_in.c, init.c, opt.h: rename backlog options with TCP_ prefix, limit the "backlog" parameter in an u8_t, 0 is interpreted as "smallest queue", add documentation in the rawapi.txt file. 2008-01-04 22:18:27 +00:00
jifl
7e616ea71c * core/ipv4/ip.c (ip_input): Rename ipsrcchecking -> check_ip_src, to make
purpose clearer.
2008-01-03 17:49:25 +00:00
kieranm
99afb15ced Add persist timer 2007-12-31 13:34:47 +00:00
fbernon
22e2540eb6 autoip.c, etharp.c: ip_addr.h: Integrate patch #6348: "Broadcast ARP packets in autoip". The change in etharp_raw could be removed, since all calls to etharp_raw use ethbroadcast for the "ethdst_addr" parameter. But it could be wrong in the future. 2007-12-31 13:22:03 +00:00
fbernon
8d39b1a152 ip.c: Fix bug #21846 "LwIP doesn't appear to perform any IP Source Address Filtering" reported by Tom Evans. 2007-12-30 01:09:11 +00:00
goldsimon
1ed34774c8 tcp.h, opt.h, api.h, api_msg.h, tcp.c, tcp_in.c, api_lib.c, api_msg.c, sockets.c, init.c: task #7252: Implement TCP listen backlog: Warning: raw API applications have to call 'tcp_accepted(pcb)' in their accept callback to keep accepting new connections. 2007-12-21 16:47:56 +00:00
kieranm
1cb470662b Whitespace fix. 2007-12-20 15:05:09 +00:00
kieranm
add4874801 2007-12-20 Kieran Mansley (based on patch from Oleg Tyshev)
* tcp_in.c: fix bug# 21535 (nrtx not reset correctly in SYN_SENT stat)e
2007-12-20 14:58:43 +00:00
kieranm
8cc32bc29c 2007-12-20 Kieran Mansley (based on patch from Per-Henrik Lundbolm)
* tcp.c, tcp_in.c, tcp_out.c, tcp.h: fix bug #20199 (better handling
    of silly window avoidance and prevent lwIP from shrinking the window)
2007-12-20 14:51:35 +00:00
goldsimon
a3ef33c56f Removed debug code 2007-12-16 16:24:10 +00:00
fbernon
2b54da5070 api_msg.c, err.h, err.c, sockets.c, dns.c, dns.h: replace "enum dns_result" by err_t type. Add a new err_t code "ERR_INPROGRESS". 2007-12-13 23:06:49 +00:00
goldsimon
d2fa5c91a7 Fix bug #21699: segment leak in ooseq processing when last data packet was lost (free last segment if FIN is already received) 2007-12-13 20:24:39 +00:00
fbernon
4653974c2a Minor change: move DNS_MSG_SIZE in opt.h, add comments. 2007-12-12 19:22:20 +00:00
fbernon
de11e7fd75 dns.h, dns.c, opt.h: move DNS options to the "right" place. Most visibles are the ones which have ram usage. 2007-12-12 17:56:03 +00:00
goldsimon
8d3d08e814 fix bug #21699 (segment leak in ooseq): add assert that all segment lists are empty in tcp_pcb_remove before setting pcb to CLOSED state; don't directly set CLOSED state from LAST_ACK in tcp_process 2007-12-04 20:41:12 +00:00
goldsimon
22f51f953b Added short comment in file description about how to handle MEM_USE_POOLS / MEM_LIBC_MALLOC 2007-12-03 18:01:28 +00:00
goldsimon
f3f7bd00e5 ip_input: check if a packet is for inp first before checking all other netifs on netif_list (speeds up packet receiving in most cases) 2007-12-03 17:55:01 +00:00
fbernon
dde6ddfd7c process "localhost" name in dns_gethostbyname 2007-12-02 17:15:28 +00:00
goldsimon
081e4d9209 Minor change: use goto instead of redundant code to return on error in dhcp_rev(). 2007-12-02 14:40:32 +00:00
fbernon
2942157ca4 Minor changes: dnsserver initialization with DNS_SERVER_ADDRESS in dns_init 2007-11-30 16:40:46 +00:00
goldsimon
92aa004b75 connect the UDP pcb to the DNS server (IPaddress and port) to receive faster (unconnected pcbs are very inefficient in udp_input) 2007-11-30 12:46:30 +00:00
goldsimon
b28cd02149 task #7497: Sort lists (pcb, netif, ...) for faster access UDP: move a (connected) pcb selected for input to the front of the list of pcbs so that it is found faster next time. Same for RAW pcbs that have eaten a packet. 2007-11-30 09:44:18 +00:00
goldsimon
cedd5c21e6 first attempt to fix bug #21655 (DHCP doesn't work reliably with multiple netifs): if LWIP_DHCP is enabled, UDP packets to DHCP_CLIENT_PORT are passed to netif->dhcp->pcb only (if that exists) and not to any other pcb for the same port (only solution to let UDP pcbs 'bind' to a netif instead of an IP address) 2007-11-30 08:55:15 +00:00
goldsimon
788892ee7c Minor coding style changes 2007-11-28 21:44:17 +00:00
goldsimon
1b07fecbf3 Introduced ETHARP_STATS 2007-11-28 21:25:06 +00:00
goldsimon
4a01122fb7 Use ICMP_STATS_INC instead of #if ICMP_STATS... 2007-11-28 21:21:06 +00:00
goldsimon
4211da00b3 Use IP_STATS_INC instead of #if IP_STATS... 2007-11-28 21:18:37 +00:00
goldsimon
6e612e5def mem_malloc with MEM_USE_POOLS=1: if size > size of biggest pool and custom pools (in addition to the MEM_POOLs) were defined, the first custom pool was used instead of asserting 2007-11-28 18:24:08 +00:00
jgrubb
472407c719 Fix typo (MEMP_POOL_START/END to FIRST/LAST) 2007-11-28 17:19:15 +00:00
goldsimon
f07c1cf874 fixed bug #21643 (udp_send/raw_send don't fail if netif is down) by letting ip_route only use netifs that are up. 2007-11-28 06:48:50 +00:00
jgrubb
ce7c311ecf Add two more sanity checks on memory settings 2007-11-28 00:11:05 +00:00
goldsimon
b4741332e0 Implemented new function udp_sendto_if which takes the netif to send as an argument (to be able to send on netifs that are down). 2007-11-27 20:13:16 +00:00
goldsimon
3874f5f5e8 Minor coding style changes 2007-11-27 19:55:31 +00:00
fbernon
8c19f9a57e Fix to be able to build SNMP with LWIP_ARP=0. It's not a perfect solution, but I put some @todo points to review them later. 2007-11-27 19:53:47 +00:00
goldsimon
f57c2424cf Fixed bug #21582: pcb->acked accounting can be wrong when ACKs arrive out-of-order 2007-11-26 19:08:39 +00:00
goldsimon
5743b11925 Check state == CLOSED in tcp_bind and tcp_connect to prevent binding/connecting twice (using LWIP_ERROR: can be disabled) 2007-11-25 18:37:34 +00:00
goldsimon
511cdfb951 Minor coding style changes, added some comments 2007-11-25 14:23:59 +00:00
goldsimon
e1f49d990b Fix some warnings discovered by compiling the unixsim under cygwin (gcc pedantic) 2007-11-25 13:57:05 +00:00
goldsimon
1b208d0954 dhcp_unfold_reply() uses pbuf_copy_partial instead of its own copy algorithm; corrected some assert messages 2007-11-25 11:51:44 +00:00
goldsimon
4ac4d56b53 Added documentation / minor code layout changes 2007-11-25 10:43:28 +00:00
goldsimon
be0686d905 Added some more comments and function documentation 2007-11-25 10:01:22 +00:00
fbernon
9940b049ec Minor changes (documentation). 2007-11-25 00:28:06 +00:00
fbernon
3d9c76a69c Minor change (doxygen tags) 2007-11-24 22:13:25 +00:00
fbernon
32c6893081 Minor changes (typo and wrong defines names in sanity checks) 2007-11-22 10:17:16 +00:00
goldsimon
95425552d7 Implemented calculating the effective send-mss based on the MTU of the netif used to send. Enabled by default. Disable by setting LWIP_CALCULATE_EFF_SEND_MSS to 0. This fixes bug #21535. 2007-11-21 18:37:23 +00:00
goldsimon
dc515c7ad3 Fixed bug #20287: tcp_output_nagle sends too early. This fixes the nagle algorithm; nagle now also works for all raw API applications and has to be explicitly disabled with 'tcp_pcb->flags |= TF_NODELAY' 2007-11-21 17:59:03 +00:00
fbernon
c31b405af6 Minor changes in DNS client. 2007-11-20 21:37:04 +00:00
goldsimon
b3c52f574a Added function documentation to dns.c, removed function documentation from dns.h (functions should be documented where they are implemented!), dns_table_entry doesn't have to be packed (slower, bigger code for most machines), converted dns_init to return void, dns_table is implicitly initialized to zero, dns_lookup can be static, dns_send returns correct error values, added some asserts, compacted dns_recv using some (ugly) gotos, compacted dns_gethostbyname by combining the same return value 2007-11-20 20:28:01 +00:00
fbernon
f58515b51e api_msg.c, dns.h, dns.c: Implement DNS_DOES_NAME_CHECK option (check if name received match the name query), implement DNS_USES_STATIC_BUF (the place where copy dns payload to parse the response), return an error if there is no place for a new query, and fix some minor problems. 2007-11-19 22:42:01 +00:00
fbernon
da4df1f414 Fix DNS client TTL processing. 2007-11-18 21:30:45 +00:00
fbernon
7f0640b040 Minor changes on DNS. 2007-11-18 21:04:53 +00:00
fbernon
8c0e6de00a fix DNS problem with pbuf chain. 2007-11-18 20:54:44 +00:00
fbernon
8ff1194b6a Changes on DNS client. Add multiples dns servers support. 2007-11-18 20:30:12 +00:00
fbernon
4e398e2aa9 Minor changes on DNS client. Coding style & add "response" checking 2007-11-18 15:51:34 +00:00
fbernon
92401faa72 Minor changes on DNS client. Note that "compressed answers are fixed". 2007-11-18 15:01:45 +00:00
fbernon
edc46281a4 Minor changes on DNS client. 2007-11-18 14:19:27 +00:00
goldsimon
6c8b3e3b58 Deleted old inet.c/inet6.c files 2007-11-16 19:32:19 +00:00
goldsimon
1faf0ab9e3 Moved inet files into ipv4/ipv6 directory; splitted inet.c/inet.h into inet and chksum part; changed includes in all lwIP files as appropriate 2007-11-16 19:31:10 +00:00
goldsimon
7e447c83fb Turned all hostname variables and parameters into (const char*) 2007-11-16 17:08:03 +00:00
fbernon
0c0e8d6544 opt.h, init.c, tcpip.c, dhcp.c, dns.h, dns.c: add DNS client for simple name requests with RAW api interface. Initialization is done in lwip_init() with build time options. DNS timer is added in tcpip_thread context. DHCP can set DNS server ip addresses when options are received. You need to set LWIP_DNS=1 in your lwipopts.h file (LWIP_DNS=0 in opt.h). DNS_DEBUG can be set to get some traces with LWIP_DEBUGF. Sanity check have been added. There is a "todo" list with points to improve. 2007-11-14 23:27:13 +00:00
goldsimon
8020ba2dc5 tcp_send_ctrl(): call tcp_enqueue with the new flag TCP_WRITE_FLAG_COPY instead of 1 2007-11-12 19:38:25 +00:00
goldsimon
bfe24b138d Patch #6215: added ifAdminStatus write support (if explicitly enabled by defining SNMP_SAFE_REQUESTS to 0); added code to check link status for ifOperStatus if LWIP_NETIF_LINK_CALLBACK is defined. 2007-11-06 20:53:37 +00:00
fbernon
cbe9b050a9 sockets.h, sockets.c, api.h, api_lib.c, api_msg.h, api_msg.c, tcp.h, tcp_out.c: Integrate "patch #6250 : MSG_MORE flag for send". MSG_MORE is used at socket api layer, NETCONN_MORE at netconn api layer, and TCP_WRITE_FLAG_MORE at raw api layer. This option enable to delayed TCP PUSH flag on multiple "write" calls. Note that previous "copy" parameter for "write" APIs is now called "apiflags". 2007-11-01 17:37:50 +00:00
goldsimon
2d5908f4de Fixed bug #21494: The send mss (pcb->mss) is set to 536 (or TCP_MSS if that is smaller) as long as no MSS option is received from the remote host. 2007-11-01 16:53:43 +00:00
goldsimon
298d5cf042 Fixed bug #21491: The MSS option sent (with SYN) is now based on TCP_MSS instead of pcb->mss (on passive open now effectively sending our configured TCP_MSS instead of the one received). 2007-11-01 16:23:32 +00:00
goldsimon
853765954e Fixed bug #21181: On active open, the initial congestion window was calculated based on the configured TCP_MSS, not on the MSS option received with SYN+ACK. 2007-11-01 15:51:43 +00:00
goldsimon
7a99d73092 Added some explaining comments. 2007-10-28 17:43:21 +00:00
fbernon
86dc53b72a Minor change (coding style, #if/#endif to include icmp.h is not necessary) 2007-10-16 07:11:35 +00:00
goldsimon
6d9b44e243 IP_REASSEMBLY: send ICMP time exceeded when discarding datagrams for which the first fragment was received; try to keep the header of the first (octet 0) fragment; combined code to make it smaller; fixed bug in timer: when freeing packets, counter was not updated correctly 2007-10-15 19:33:16 +00:00
goldsimon
e864ba6c91 IP_REASSEMBLY: Changed 'packet' to 'datagram' to match the names used in the RFCs 2007-10-15 19:28:09 +00:00
goldsimon
0686380302 Removed bug on memory failure introduced 3 months ago in rev 1.34 (input pbuf was freed on puf_alloc failure) 2007-10-15 19:18:02 +00:00
fbernon
282e9ead17 Minor change (sanity check for MEMP_NUM_REASSDATA only done if IP_REASSEMBLY=1) 2007-10-12 06:50:16 +00:00
goldsimon
1f08a5e5f5 Added code to free the oldest packets if the IP_REASS_MAX_PBUFS limit is reached or MEMP_REASSDATA is empty. 2007-10-11 19:49:06 +00:00
goldsimon
c41508cc8d Added check that MEMP_NUM_REASSDATA is bigger than IP_REASS_MAX_PBUFS (because each MEMP_NUM_REASSDATA has one pbuf at least!) 2007-10-11 19:26:04 +00:00
fbernon
ebd167b658 Add sanity checking on TCP_MAXRTX and TCP_SYNMAXRTX 2007-10-09 20:48:28 +00:00
goldsimon
c13ec867c9 Forgot two explicit initializations... 2007-10-09 20:00:55 +00:00
goldsimon
199648ff37 Changed initialization: many init functions are not needed any more since we now rely on the compiler initializing global and static variables to zero! 2007-10-09 19:59:56 +00:00
goldsimon
536f2e42d2 Fixed UDPLite receive: checksum was calculated wrong if checksum coverage != tot_len 2007-10-09 19:43:29 +00:00
goldsimon
0f9799d7e0 Added todo: free the oldest entry when the MEMP_REASSDATA pool is empty or the IP_REASS_MAX_PBUFS limit is reached 2007-10-09 19:31:54 +00:00
goldsimon
8980c3f74e Typo in chain_frag_into_packet_and_validate (but obviously worked anyway...) 2007-10-09 06:13:12 +00:00
goldsimon
418f57dd6a Removed type conversion warning in debug statement. 2007-10-08 19:06:58 +00:00
goldsimon
9ef005454a lfree was not updated in mem_realloc! 2007-10-08 18:39:44 +00:00
goldsimon
2ca113a218 Fixed UDPLite SENDING: Checksum was always generated too short and also was generated wrong if checksum coverage != tot_len. 2007-10-07 20:19:23 +00:00
fbernon
911ee4d9f9 Minor change (coding style) 2007-10-07 17:41:21 +00:00
goldsimon
e561c7b49d Added check for overlapping or duplicate fragments. ip_reass_init() is not needed any more (the check is done in chain_frag_into_packet_and_validate()). 2007-10-07 11:52:32 +00:00
goldsimon
8cd65eaf46 Check for TCP_SND_QUEUELEN overflow. 2007-10-07 11:27:45 +00:00
goldsimon
b7ef6077df Changed IP_REASSEMBLY to enqueue the received pbufs so that multiple packets can be reassembled simultaneously and no static reassembly buffer is needed. 2007-10-06 15:24:43 +00:00
jifl
c1bbcf5ed3 Add further checking that MEMP_NUM_SYS_TIMEOUT is high enough 2007-09-21 14:39:03 +00:00
fbernon
87c5a61d07 Minor changes by Andrew Dennison: add sanity check, improve debug messages for memp, fix some warnings... 2007-09-21 12:36:35 +00:00
goldsimon
0aa3d89134 Fixed bug #21080 (tcp_bind without check pcbs in TIME_WAIT state) by checking tcp_tw_pcbs also 2007-09-20 18:27:50 +00:00
goldsimon
0bf32b957d Fixed bug #21107 (didn't reset IP TTL in ICMP echo replies) 2007-09-19 06:12:34 +00:00
fbernon
2bdd916b06 udp.h, udp.c, sockets.c: Changes for "#20503 IGMP Improvement". Add IP_MULTICAST_IF option in socket API, and a new field "multicast_ip" in "struct udp_pcb" (for netconn and raw API users), only if LWIP_IGMP=1. Add getsockopt processing for IP_MULTICAST_TTL and IP_MULTICAST_IF. 2007-09-15 15:19:41 +00:00
kleshov
93c487fb75 Fix bug #21077: inaccuracy in calculation of lwip_stat.mem.used 2007-09-15 11:34:06 +00:00
fbernon
8c847a85ae Add a sanity check for PPP, and a #if !NO_SYS/#endif for slipif_loop 2007-09-12 19:16:44 +00:00
fbernon
47ae677652 enable to remove SNMP timer (which consumne several cycles even when it's not necessary). snmp_agent.txt tell to call snmp_inc_sysuptime() each 10ms (but, it's intrusive if you use sys_timeout feature). Now, you can decide to call snmp_add_sysuptime(100) each 1000ms (which is bigger "step", but call to a lower frequency). Or, you can decide to not call snmp_inc_sysuptime() or snmp_add_sysuptime(), and to define the SNMP_GET_SYSUPTIME(sysuptime) macro. This one is undefined by default in mib2.c. SNMP_GET_SYSUPTIME is called inside snmp_get_sysuptime(u32_t *value), and enable to change "sysuptime" value only when it's queried (any direct call to "sysuptime" is changed by a call to snmp_get_sysuptime). 2007-09-10 18:50:44 +00:00
jgrubb
54e1b79ac5 Make pbuf_alloc a bit easier to read (change parameter name from "l" to "layer" and use LWIP_MIN instead of ternary operatory) 2007-09-10 18:25:15 +00:00
fbernon
4466260480 Remove CVS keyword 2007-09-10 07:56:16 +00:00
fbernon
939180c1a1 igmp.h, igmp.c, netif.h, netif.c, ip.c: To enable to have interfaces with IGMP, and others without it, there is a new NETIF_FLAG_IGMP flag to set in netif->flags if you want IGMP on an interface. igmp_stop() is now called inside netif_remove(). igmp_report_groups() is now called inside netif_set_link_up() (need to have LWIP_NETIF_LINK_CALLBACK=1) to resend reports once the link is up (avoid to wait the next query message to receive the matching multicast streams). 2007-09-09 20:46:33 +00:00
fbernon
75d4c9b446 Add some deprecated options from "task #7142 : Sanity check user-configurable values". 2007-09-07 23:28:02 +00:00
fbernon
e3cd1ac1f9 Minor changes (but in lot of files): add #if/#endif for options where they could miss. #if LWIP_xxx if always put after #include "lwip/opt.h" (note this one indirectly include cc.h). Move others includes inside #if/#endif block. 2007-09-07 23:01:59 +00:00
fbernon
027a70a415 Last sanity checking centralization for "task #7142 : Sanity check user-configurable values". 2007-09-07 17:59:30 +00:00
fbernon
3dfe5f993b DON'T WORRY, it's just a test on CVS keywords (I will remove) 2007-09-07 12:32:40 +00:00
fbernon
f5991dd9b6 DON'T WORRY, it's just a test on CVS keywords (I will remove) 2007-09-07 12:31:50 +00:00
fbernon
58c5d008d5 DON'T WORRY, it's just a test on CVS keywords (I will remove) 2007-09-07 09:23:51 +00:00
fbernon
ac1149156d several-files: replace some #include "arch/cc.h" by "lwip/arch.h", or simply remove it as long as "lwip/opt.h" is included before (this one include "lwip/debug.h" which already include "lwip/arch.h"). Like that, default defines are provided by "lwip/arch.h" if they are not defined in cc.h, in the same spirit than "lwip/opt.h" for lwipopts.h. 2007-09-06 16:43:43 +00:00
fbernon
ca866c0d7d Integrate "task #7272 : LWIP_ICMP option". The new option LWIP_ICMP enable/disable ICMP module inside the IP stack (enable per default). Be careful, disabling ICMP make your product non-compliant to RFC1122, but help to reduce footprint, and to reduce "visibility" on the Internet. 2007-09-05 17:20:45 +00:00
fbernon
c1f89c5640 Move some build time checkings inside init.c for task #7142 "Sanity check user-configurable values". 2007-09-05 13:19:25 +00:00
fbernon
d4616a7fc6 Replace mem_malloc call by memp_malloc, and use a new MEMP_NUM_IGMP_GROUP option (see opt.h to define the value). It will avoid potential fragmentation problems, use a counter to know how many times a group is used on an netif, and free it when all applications leave it. MEMP_NUM_IGMP_GROUP got 8 as default value (and init.c got a sanity check if LWIP_IGMP!=0). 2007-09-04 15:15:20 +00:00
fbernon
79b0484e20 Minor changes (fix some warnings like "function declaration isn't a prototype" and "no previous prototype for 'lwip_init'"...) 2007-09-04 13:51:48 +00:00
fbernon
62b4741b19 Changes for "#20503 IGMP Improvement". Initialize igmp_mac_filter to NULL in netif_add (this field should be set in the netif's "init" function). Use the "imr_interface" field (for socket layer) and/or the "interface" field (for netconn layer), for join/leave operations. The igmp_join/leavegroup first parameter change from a netif to an ipaddr. This field could be a netif's ipaddr, or "any" (same meaning than ip_addr_isany). 2007-09-03 14:53:18 +00:00
fbernon
327f06bbaf Replace "netif_default = NULL;" by "netif_set_default(NULL);" in netif_remove (do some processing, like for SNMP...) 2007-09-03 12:22:00 +00:00
fbernon
d7cd90b5b8 Add in igmp_joingroup & igmp_leavegroup a LWIP_ERROR checking on netif value. 2007-09-03 09:56:38 +00:00
fbernon
fca25479ad Minor fix (else, cause build error). Since SO_REUSE is always used in the code (even if the current code is not working), it is defined in opt.h with 0 as default value (it's normal). So, the error is not if it is defined, but if it is defined to 1. 2007-08-31 09:42:32 +00:00
jgrubb
cb399272fd Move deprecated options from opt.h to init.c 2007-08-30 22:33:55 +00:00
fbernon
3101bdf127 Add some others sanity checkings 2007-08-30 16:06:51 +00:00
fbernon
384ae9c407 Minor change (ident, remove comment, change trace text) 2007-08-30 15:53:15 +00:00
fbernon
c671f8e7ef Replace API programmation error checking for IGMP join/leave (ismulticast(addr)) by LWIP_ERROR checking. 2007-08-30 15:48:14 +00:00
jifl
f39b9c85fe Add further checks. Move compile-time checks out of LWIP_DEBUG ifdef 2007-08-30 15:33:51 +00:00
fbernon
ab36270885 igmp.h, igmp.c: Some changes to remove some redundant code, add some traces, and fix some coding style. 2007-08-30 14:20:54 +00:00
fbernon
bd65dd8098 init.c: Add first version of lwip_sanity_check for task #7142 "Sanity check user-configurable values". 2007-08-30 10:15:17 +00:00
fbernon
36b6f308e6 Minor fix (coding style, comments, spaces, endline...) 2007-08-30 09:14:28 +00:00
fbernon
cd208314e0 igmp.h, igmp.c, tcpip.c, init.c, netif.c: change igmp_init and add igmp_start. igmp_start is call inside netif_add. Now, igmp initialization is in the same spirit than the others modules. Modify some IGMP debug traces. 2007-08-29 21:12:32 +00:00
fbernon
48db3a3e92 Add init.h, init.c, Change opt.h, tcpip.c: Task #7213 "Add a lwip_init function" Add lwip_init function to regroup all modules initializations, and to provide a place to add code for task #7142 "Sanity check user-configurable values". Ports maintainers should remove direct initializations calls from their code, and add init.c in their makefiles. Note that lwip_init() function is called inside tcpip_init, but can also be used by raw api users since all calls are disabled when matching options are disabled. Also note that their is new options in opt.h, you should configure in your lwipopts.h (they are enabled per default). 2007-08-29 08:11:06 +00:00
fbernon
d7da390ae9 Fix coding style (use #if and not #ifdef) for IPv6 2007-08-28 16:03:53 +00:00
jifl
5e7b7cba31 "Fix" a few more cases where Paradigm C++ may mis-compile 16-bit right shifts on 32-bit quantities 2007-08-27 01:59:52 +00:00
fbernon
acbf25f2eb netif.h, netif.c: Integrate "patch #6163 : Function to check if link layer is up". Add a netif_is_link_up() function if LWIP_NETIF_LINK_CALLBACK option is set. 2007-08-25 10:43:19 +00:00
kieranm
7c90cc6aac inet.c Modify (acc >> 16) test to ((acc >> 16) != 0) to help buggy
compiler (Paradigm C++)
2007-08-24 14:31:53 +00:00
fbernon
261af8dc07 netif.h, netif.c, opt.h: Rename LWIP_NETIF_CALLBACK in LWIP_NETIF_STATUS_CALLBACK to be coherent with new LWIP_NETIF_LINK_CALLBACK option before next release. 2007-08-22 11:26:01 +00:00
fbernon
4f76bc42d7 Rename pbuf's "flgs" in "flags" (see in [lwip-devel] Last changes by Marc) 2007-08-20 19:15:43 +00:00
jgrubb
baca292f47 Task #7136: Fix bug of wrong file name for centralized mempool settings. 2007-08-20 16:42:16 +00:00
jgrubb
cc7d1226ee Task #7136: Centralize mempool settings into new memp_std.h and optional user file lwippools.h. 2007-08-17 17:49:17 +00:00
marcbou
0167bbb89a Per Frederic's suggestion, renamed
[MEMP_[NUM_]]TCPIP_MSG to [MEMP_[NUM_]]TCPIP_MSG_API
and
    [MEMP_[NUM_]]TCPIP_MSG_INPUT to [MEMP_[NUM_]]TCPIP_MSG_INPKT.

Added defines in opt.h for temporary compatibility with older lwipopts.h.
2007-08-17 02:46:43 +00:00
marcbou
0471aaec52 Use enum pbuf_flag as pbuf_type.
Renumber PBUF_FLAG_*.
2007-08-17 02:09:43 +00:00
fbernon
2be122875a Minor changes (tabs, ident, coding style...) 2007-08-17 00:30:27 +00:00
marcbou
0b8b9e8033 Changed // style comment to /* style */ comment. 2007-08-16 20:41:56 +00:00
marcbou
4236699052 Split pbuf flags in pbuf type and flgs.
Improved lwip_recvfrom(). TCP push now propagated.
2007-08-16 20:22:15 +00:00
marcbou
1b98df4a0d Added distinct memp (MEMP_TCPIP_MSG_INPUT) for input packets to prevent
floods from consuming all of MEMP_TCPIP_MSG and starving other message types.
2007-08-16 19:49:08 +00:00
marcbou
95cbf95c50 Added mem_calloc(). 2007-08-16 18:37:15 +00:00
kieranm
a6ca9aa306 * tcp_in.c: Fix for bug #19953 - correct TCP state machine when
* receiving FIN+ACK in SYN_RECV state
2007-08-16 15:57:31 +00:00
fbernon
40ef282982 Minor change: add in tcp_in.c in tcp_input(), some calls to handle error statistics (stats & snmp) 2007-08-14 18:01:34 +00:00
fbernon
9152d6671c Comments Fix for Doxygen documentation 2007-08-09 22:21:44 +00:00
fbernon
d057e95ce3 Minor Fix (remove unused USE_ROUTER_ALERT and some coding style) 2007-08-09 20:21:59 +00:00
fbernon
ac2932bac3 stats.h, stats.c, igmp.h, igmp.c, opt.h: Fix for bug #20503 : IGMP Improvement. Introduce IGMP_STATS to centralize statistics management. 2007-08-09 20:09:22 +00:00
fbernon
118331207b udp.c: Fix for bug #20503 : IGMP Improvement. Enable to receive a multicast packet on a udp pcb binded on an netif's IP address, and not on "any". 2007-08-09 18:34:03 +00:00
fbernon
7c104c8fbb igmp.h, igmp.c, ip.c: Fix minor changes from bug #20503 : IGMP Improvement. This is mainly on using lookup/lookfor, and some coding styles... 2007-08-09 16:53:47 +00:00
jgrubb
c555b532a2 Add NETIF_LINK_CALLBACK into the netif_set_link_up/down functions 2007-08-08 18:22:08 +00:00
fbernon
fdc4c25e67 Minor fix (warnings on unused args, wrong type, cast u32_t to u16_t...) 2007-08-01 13:41:31 +00:00
fbernon
f1c4a9ebfa Minor fix (warning when LWIP_DEBUG is undefined) 2007-07-29 08:31:31 +00:00
jifl
f0b33f5ced Make pbuf_init() call be an empty macro for now 2007-07-27 15:06:03 +00:00
fbernon
42eead8f41 igmp.c: Fix bug #20595 to accept IGMPv3 "Query" messages. 2007-07-26 17:10:56 +00:00
goldsimon
33054a18db Added a better comment to explain why tcp_close doesn't care for the return value of tcp_output 2007-07-26 09:31:09 +00:00
goldsimon
f4036e8352 Another fix for bug #20021: by not returning an error if tcp_output fails in tcp_close, the code in do_close_internal gets simpler (tcp_output is called again later from tcp timers). 2007-07-25 19:24:27 +00:00
goldsimon
f9c30017b0 Fixed bug #20429: use the new pbuf_copy_partial instead of the old copy_from_pbuf, which illegally modified the given pbuf; Introduced pbuf_copy_partial, making netbuf_copy_partial use this function. 2007-07-25 18:53:45 +00:00
goldsimon
8be76ed450 tcp_enqueue: pcb->snd_queuelen didn't work for chaine PBUF_RAMs: changed snd_queuelen++ to snd_queuelen += pbuf_clen(p). 2007-07-25 08:46:41 +00:00
goldsimon
9eff9676e9 Fix bug #20506: Slow start / initial congestion window starts with 2 * mss (instead of 1 * mss previously) to comply with some newer RFCs and other stacks. 2007-07-25 07:31:29 +00:00
goldsimon
62c3de30b9 Fix bug #20480: Check the pcb passed to tcp_listen() for the correct state (must be CLOSED). 2007-07-24 07:41:55 +00:00
goldsimon
ebcb46cd48 Included the mem_malloc pools in memp_names if MEM_USE_POOLS=1 2007-07-18 20:30:21 +00:00
goldsimon
1689361ff2 Another change for fixing bug #20478 (put the memp += MEMP_SIZE in another place) 2007-07-15 10:54:24 +00:00
jgrubb
eb998bda62 Bug fix #20478: memp_malloc returns NULL+MEMP_SIZE rather than NULL on a failed allocation 2007-07-14 00:07:43 +00:00
fbernon
116bcb9dfb opt.h, netif.h, netif.c, ethernetif.c: Add new configuration option to add a link callback in the netif struct, and functions to handle it. Be carefull for port maintainers to add the NETIF_FLAG_LINK_UP flag (like in ethernetif.c) if you want to be sure to be compatible with future changes... 2007-07-13 15:00:40 +00:00
fbernon
a2dffd430b Fix minor patch #5741 build error... 2007-07-13 13:12:07 +00:00
kieranm
4ac0580aa0 2007-07-13 Kieran Mansley
* src/core/tcp_in.c Apply patch#5741 from Oleg Tyshev to fix bug in
    out of sequence processing of received packets
2007-07-13 12:24:32 +00:00
goldsimon
8d2c8065eb Removed old debug variables from pbuf_copy() 2007-07-04 16:43:54 +00:00
fbernon
bf176ed712 Minor fix (indent) 2007-07-03 21:27:59 +00:00
goldsimon
eb875de67e Added assertions where PBUF_RAM pbufs are used and an assumption is made that this pbuf is in one piece (i.e. not chained). These assumptions clash with the possibility of converting to fully pool-based pbuf implementations, where PBUF_RAM pbufs might be chained. 2007-07-03 20:28:35 +00:00
goldsimon
96e4ec4a15 Added option LWIP_NETIF_HWADDRHINT (default=off) to cache ARP table indices with each pcb instead of single-entry cache for the complete stack. 2007-07-02 20:41:22 +00:00
goldsimon
fa4b711495 Added some ASSERTS and casts to prevent warnings when assigning to smaller types. 2007-07-02 20:13:45 +00:00
goldsimon
0113b735ad Fixed a little cast-warning from u32_t to u16_t 2007-07-02 20:07:19 +00:00
goldsimon
d228ff0f43 Removed warning when assigning from u32_t to u16_t by casting to u16_t. 2007-07-01 16:04:35 +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
fbernon
ab4c3a326f autoip.c: replace most of rand() calls by a macro LWIP_AUTOIP_RAND which compute a "pseudo-random" value based on netif's MAC and some autoip fields. It's always possible to define this macro in your own lwipopts.h to always use C library's rand(). Note that autoip_create_rand_addr doesn't use this macro. 2007-06-28 18:05:38 +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
dcc2247a90 Fixed bug #20253: icmp_dest_unreach was called with a wrong p->payload for udp packets with no matching pcb. 2007-06-25 17:30:16 +00:00
goldsimon
00b7aeb49b Fixed bug #20220: UDP PCB search in udp_input(): a non-local match could get udp input packets if the remote side matched. 2007-06-25 17:24:31 +00:00
goldsimon
88b1cebe1d Sorry, checked in some of my local changes with the LWIP_ERROR modification! 2007-06-23 13:09:58 +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
786a7fbaf4 no-pool-big-enough was not correctly caught 2007-06-22 20:26:30 +00:00
goldsimon
0ce27296aa ASSERTS were using old MEM_ALIGN define, therefore, was not compilable without LWIP_NOASSERT defined 2007-06-22 20:23:26 +00:00
fbernon
a1d176b643 autoip.h/.c: change autoip_init & autoip_create_rand_addr to use netif's MAC address and tried_llipaddr to generate an "autoip"... 2007-06-22 18:54:34 +00:00
goldsimon
0c18e653e8 Introduced the option MEM_USE_POOLS to use 4 pools with different sized elements instead of a heap. This both prevents memory fragmentation and gives a higher speed at the cost of more memory consumption. Turned off by default. 2007-06-21 20:12:11 +00:00
fbernon
4c07b1606c Minor changes: fix some comments for Doygen documentation 2007-06-21 07:17:29 +00:00
fbernon
ec7333d406 Some changes for AutoIP integration in tcpip.c, and some comments. 2007-06-19 10:11:27 +00:00
fbernon
6a40426421 Minor fix: warning, type... for patch #5952 : Integration of AutoIP module 2007-06-18 21:45:34 +00:00
goldsimon
c9ebb895a1 Removed warning "empty body in an if statement" in tcp_receive() for LWIP_DEBUG=0 2007-06-18 20:08:31 +00:00
goldsimon
f66bbda8b1 Ooops, checked in a wrong (test-) version before! 2007-06-18 19:52:55 +00:00
fbernon
e89f5983be tcp_in.c: Fix bug #20126 : Zero ssthresh bug (by Per-Henrik Lundblom and Kieran Mansley). 2007-06-17 16:15:34 +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
goldsimon
ced2543be0 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 14:39:50 +00:00
goldsimon
55bd48dc10 Always align PBUF_POOL_BUFSIZE, pbuf_init is not needed any more, minor changes to meet coding style requirements 2007-06-17 14:36:19 +00:00
goldsimon
10f4604939 Corrected some copy & paste errors 2007-06-16 14:09:27 +00:00
goldsimon
cbf281589b Fixed bug #20180 (TCP pcbs listening on IP_ADDR_ANY could get changed in netif_set_ipaddr if previous netif->ip_addr.addr was 0. 2007-06-16 13:32:10 +00:00
goldsimon
f1d95379bc Changed all references to old debug defines to the new ones (e.g. LWIP_DBG_TRACE) 2007-06-16 11:39:01 +00:00
goldsimon
7c4377af0e Added debug output for icmp_input if ip_output_if worked or not. 2007-06-16 11:23:26 +00:00
goldsimon
f93b8fe377 pbuf_copy(): removed copy & paste error which did not copy pbuf chains correctly 2007-06-14 17:40:39 +00:00
goldsimon
978c68dcf8 pbuf_copy: chained pbufs were not copied correctly because of wrong packet-queue-check 2007-06-14 07:22:43 +00:00
goldsimon
c0925d2d04 minor fix in assertion text 2007-06-14 07:21:55 +00:00
fbernon
bdbc96f453 opt.h, mem.h, mem.c, memp.c, pbuf.c, ip_frag.c, vj.c: Fix bug #20162. Rename MEM_ALIGN in LWIP_MEM_ALIGN and MEM_ALIGN_SIZE in LWIP_MEM_ALIGN_SIZE to avoid some macro names collision with some OS macros. 2007-06-13 17:17:26 +00:00
goldsimon
6336279ce0 In udp_input, for UDP Lite, chksum_len_tx was used instead of chksum_len_rx 2007-06-12 07:03:32 +00:00
goldsimon
046a270156 Added UDP lite support for sockets 2007-06-11 18:43:16 +00:00
goldsimon
2f293d53ba UDP Lite: corrected the use of chksum_len (based on RFC3828: if it's 0, create checksum over the complete packet. On RX, if it's < 8 (and not 0), discard the packet. Also removed the duplicate 'udphdr->chksum = 0' for both UDP & UDP Lite. 2007-06-11 18:03:57 +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
fbernon
5993c816d8 Minor fix. Add "static" to IGMP's global variables, and rename group_list to igmp_group_list... 2007-06-11 07:27:12 +00:00
fbernon
15ccac78d9 Minor fix. Add comments in source file from documentation text file by Dominik Spies. 2007-06-11 07:26:10 +00:00
fbernon
d81841f54e Minor fix (coding style) 2007-06-10 20:02:43 +00:00
goldsimon
95f4c02381 Included switch LWIP_UDPLITE (enabled by default) to switch off UDP-Lite support if not needed (reduces udp.c code size) 2007-06-10 12:02:24 +00:00
fbernon
e01f342048 Contrib module by Dominik Spies: autoip.h, autoip.c, dhcp.h, dhcp.c, netif.h, netif.c, etharp.h, etharp.c, opt.h: AutoIP implementation available for IPv4, with new options LWIP_AUTOIP and LWIP_DHCP_AUTOIP_COOP if you want to cooperate with DHCP. Some tips to adapt (see TODO mark in the source code). 2007-06-09 16:57:04 +00:00
fbernon
792f5b3f22 Patch from Jared Momose (j.momose@ieee.org) for bug #19699 : "Bug in SNMP ASN1 decode; submitted patch" 2007-06-09 10:36:21 +00:00
goldsimon
3a09de82e3 Corrected #if ... when to include copy_from_pbuf() 2007-06-08 22:20:59 +00:00
goldsimon
837cb42679 Done some work on task #1549 (function documentation) 2007-06-08 20:59:17 +00:00
fbernon
090aaefb39 Add LWIP_TCPIP_CORE_LOCKING option (0 as default value) to experiment "locking" as feature to communicate with tcpip_thread for sequential API (netconn & socket layers). Add a alternative code for lwip_sendto to how the code can be optimized with such feature.... 2007-06-08 19:27:59 +00:00
goldsimon
0b9c9f9ede pbuf_copy(): Corrected a wrong comment & try to behave correctly if LWIP_NOASSERT is defined 2007-06-08 17:27:36 +00:00
fbernon
9768657fc7 Minor fix (spaces) 2007-06-08 16:24:28 +00:00
goldsimon
a185e19bc1 Let lookup_group() call lookfor_group() to reduce code size, done some work on task #1549 (function documentation) and minor changes to meet coding standard 2007-06-08 12:54:40 +00:00
goldsimon
b7603f8600 Done some work on task #1549 (function documentation) 2007-06-08 12:52:46 +00:00
goldsimon
d8d281281c Done some work on task #1549 (function documentation) 2007-06-08 12:08:44 +00:00
goldsimon
fb5a1a2c0f Minor changes to meet coding standard 2007-06-08 11:51:57 +00:00
goldsimon
4a5a7ee922 Done some work on task #1549 (function documentation) 2007-06-08 11:49:59 +00:00
goldsimon
d258bc263a Done some work on task #1549 (function documentation) 2007-06-08 11:35:54 +00:00
fbernon
75adf4bac6 Fix typo and remove RAW_STATS (not used) 2007-06-08 07:22:21 +00:00
goldsimon
8d6013454c Done some work on task #1549 (function documentation) 2007-06-07 21:36:20 +00:00
goldsimon
1a25062af0 Done some work on task #1549 (function documentation) 2007-06-07 21:29:44 +00:00
goldsimon
8aedcadd3e Done some work on task #1549 (function documentation) and minor changes to meet coding standard 2007-06-07 21:29:13 +00:00
goldsimon
027d59fd46 Done some work on task #1549 (function documentation) 2007-06-07 20:56:48 +00:00
goldsimon
3a429eabcd Set q to NULL after freeing it before returning: cleaner code! 2007-06-04 10:42:03 +00:00
goldsimon
3a607a197e opt.h, ip_frag.c, ip_frag.h, ip.c: Added option IP_FRAG_USES_STATIC_BUF (defaulting to off for now) that can be set to 0 to send fragmented packets by passing PBUF_REFs down the stack. 2007-06-03 18:36:42 +00:00
goldsimon
3639daa329 IPv6: #define IPH_PROTO(hdr) (iphdr->nexthdr) to remove #ifdef IPv6 in udp_input() 2007-06-03 18:10:33 +00:00
goldsimon
8fd6a61df6 Done some work on task #1549 (function documentation) 2007-06-03 18:05:52 +00:00
goldsimon
a6b0d40f9d Converted some DEBUGFs that should never happen to LWIP_ASSERTs 2007-06-03 17:18:33 +00:00
goldsimon
974cf08e5d udp_input(): Input pbuf was not freed if pcb had no recv function registered, p->payload was modified without modifying p->len if sending icmp_dest_unreach() (had no negative effect but was definitively wrong). 2007-06-03 11:32:03 +00:00
goldsimon
75fd6fc4a4 Needed for patch to bug #19937: pbuf_copy is always compiled, not only if ARP_QUEUEING is enabled 2007-06-03 11:28:25 +00:00
goldsimon
4f7dc3c76c Done some work on task #1549 (function documentation) 2007-06-03 11:26:55 +00:00
goldsimon
7abfe74fa4 Corrected bug #19937: ICMP assumes p_buf has space for ethernet header. Allocating new pbuf if the input pbuf isn't big enough. 2007-06-03 10:48:23 +00:00
goldsimon
d5a159d7af Done some work on task #1549 (function documentation) 2007-06-02 17:12:36 +00:00
goldsimon
c43ab76bbe Use TCP_RMV instead of tcp_pcb_remove when removing pcbs from tcp_bound_pcbs list (bug introduced while fixing bug #1895) 2007-05-29 11:02:53 +00:00
goldsimon
98df3c6e0a Removed LWIP_DEBUG_ASSERT 2007-05-24 07:19:34 +00:00
fbernon
2ff620e1b5 sys.h, sys.c, api_lib.c, tcpip.c: remove sys_mbox_fetch_timeout() (was only used for LWIP_SO_RCVTIMEO option) and use sys_arch_mbox_fetch() instead of sys_mbox_fetch() in api files. Now, users SHOULD NOT use internal lwIP features like "sys_timeout" in their application threads. 2007-05-22 20:51:34 +00:00
goldsimon
0aaf69769f Fixed bug #1895 (tcp_bind not correct) by introducing a list of bound but unconnected (and non-listening) tcp_pcbs. 2007-05-22 20:48:36 +00:00
goldsimon
78201c0146 Added some comments, better max-size-check, removed Adams original mem_malloc. 2007-05-22 19:38:12 +00:00
goldsimon
81ac03a28b Included patch #5938: changed raw_pcb.protocol from u16_t to u8_t since for IPv4 and IPv6, proto is only 8 bits wide. This affects the api, as there, the protocol was u16_t, too. 2007-05-22 07:31:06 +00:00
fbernon
980af63b8d Remove warning (missing include) 2007-05-21 16:55:57 +00:00
fbernon
c899097802 Remove warning in snmp/msg_in.c 2007-05-19 10:19:14 +00:00
goldsimon
70187bd47e Gave the overflow functions some better names which correspond to the (future) mem.c function names 2007-05-18 21:10:33 +00:00
goldsimon
018efc9631 Check the user-overridable defines MEMP_SANITY_REGION_BEFORE and MEMP_SANITY_REGION_AFTER for aligment. 2007-05-18 20:25:27 +00:00
goldsimon
a4f4e6e71d Addition to patch #5913: decrease size of memp_memory.
Added option MEMP_OVERFLOW_CHECK to check for memp elements to overflow.
2007-05-18 19:48:44 +00:00
goldsimon
4192df97ec Corrected check of PBUF_POOL overflow 2007-05-18 11:13:34 +00:00
goldsimon
874415a193 Added comments whether fields are host or network byte order (task #1568) 2007-05-17 12:21:32 +00:00
goldsimon
2740a81103 If a udp_pcb has a local_ip set, check if it is the same as the one of the netif used for sending to prevent sending from old addresses after a netif address gets changed (partly fixes bug #3168). 2007-05-16 18:55:25 +00:00
goldsimon
e9abfa6602 Removed PBUF_STATS and related code from opt.h & msg_in.c 2007-05-16 14:15:54 +00:00
fbernon
0f8a2d6418 tcpip.c, igmp.h, igmp.c: Fixed bug "#19800 : IGMP: igmp_tick() will not work with NO_SYS=1". Note that igmp_init is always in tcpip_thread (and not in tcpip_init) because we have to be sure that network interfaces are already added (mac filter is updated only in igmp_init for the moment). 2007-05-16 14:12:52 +00:00
goldsimon
2e479b88a8 Updated stats.h/.c to reflect the integration of pbuf pool into memp 2007-05-16 13:49:44 +00:00
goldsimon
fd982597fe Removed semaphores from memp, changed sys_sem_wait calls into sys_arch_sem_wait calls to prevent timers from running while waiting for the heap. This fixes bug #19167. 2007-05-16 11:02:07 +00:00
goldsimon
887077b5a4 pbuf_alloc(PBUF_POOL): Added asserts to make sure payload+len is still in bound of the pbuf (also to make sure bug #15659 is fixed). 2007-05-16 10:45:28 +00:00
fbernon
4e71ec4480 Minor fix (tabs) 2007-05-15 16:34:30 +00:00
goldsimon
8ef712787a Aligned MIN_SIZE, memset(0) the complete ram_heap instead of only the used area, only to be on the safe side... 2007-05-15 10:35:48 +00:00
goldsimon
62d705903e task #6831: removed the option PBUF_POOL_USES_MEMP and removed the old pbuf pool code, pbuf pool now always allocates from a memp pool 2007-05-13 18:17:22 +00:00
goldsimon
a5e2e9ea03 (see task #6831): Included new option PBUF_POOL_USES_MEMP to use a memp pool for PBUF_POOL pbufs instead of the old pool implementation in pbuf.c to remove redundant code. 2007-05-13 16:16:03 +00:00
goldsimon
055e3d52b6 Modified struct pbuf size determination so that sizeof(struct pbuf) does not necessarily be a multiple of MEM_ALIGNMENT 2007-05-13 16:12:29 +00:00
goldsimon
bd570561e8 Fix for bug #19740: 2 static functions are unused, simply ifdefing them out for now to get rid of warnings 2007-05-13 11:08:04 +00:00
goldsimon
ab4993fda2 Ooops, checked in the wrong version before :-( 2007-05-11 19:42:50 +00:00
goldsimon
6f4056cf99 - Changed mem_malloc(): near fit behaves like exact fit since mem->next is always used
- Included some more alignment statements
- Every malloced block is at least MIN_SIZE big (can be overridden, can be used to work against fragmentation)
- Added many comments so that the next developer knows what I was thinking :-)
2007-05-11 19:42:10 +00:00
goldsimon
6a2e323792 Added some ASSERTs and NULL-pointer checks to sys_timeout/sys_untimeout 2007-05-10 14:23:38 +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
goldsimon
b41520f9e2 Removed unused pbuf stats items 2007-05-08 18:55:29 +00:00
goldsimon
0e881170c2 Fixed 3 typos of the version checked in yesterday... 2007-05-08 18:09:14 +00:00
goldsimon
4dbf1dcad4 mem_realloc: Added assert to check that memory is shrinked, not expanded. 2007-05-08 10:50:19 +00:00
goldsimon
824ef1ff2c Another attempt to fix bug #17922 2007-05-07 19:48:29 +00:00
goldsimon
79d9b36ece Further update to ARP queueing: Changed pbuf_copy() implementation so that it can be reused (don't allocate the target pbuf inside pbuf_copy()). 2007-05-04 21:31:25 +00:00
goldsimon
7f232b43ff checked in patch #5913: in memp_malloc() we can return memp as mem to save a little RAM (next pointer of memp is not used while not in pool). 2007-05-04 15:52:11 +00:00
fbernon
eb28133b1f Remove forgotten printf in pbuf_init(). 2007-05-02 09:26:51 +00:00
goldsimon
c66932ab25 Checked in patch #5453: removed mutex/other locking stuff if SYS_LIGHTWEIGHT_PROT=0, moved some pbuf pool logic to static functions 2007-04-30 13:18:22 +00:00
goldsimon
cde6d0deed pbuf_alloc() / pbuf_realloc(): added LWIP_DEBUG_ASSERT() and cast operator when assigning s32_t to u16_t to get rid of compiler warnings 2007-04-30 11:56:48 +00:00
goldsimon
4bedb07aa0 Added some more LWIP_UNUSED_ARG()s 2007-04-24 08:35:19 +00:00
goldsimon
82e579a29d Changed the comment to pbuf_realloc() that it can't grow (only shrink) chains to reflect the fact that we decided not to change this. 2007-04-17 17:48:35 +00:00
jifl
cd19d81411 * pbuf.c: Use s32_t in pbuf_realloc(), as an s16_t can't reliably hold
the difference between two u16_t's.
2007-04-17 14:44:41 +00:00
jifl
748ba22a19 * icmp.c: Reset IP header TTL in ICMP ECHO responses (bug #19580). 2007-04-12 18:55:44 +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
jifl
d92e0dec22 From bug #19222 comment #18. Minor tweak to sys_mbox_fetch to avoid redundant
code.
2007-04-11 23:16:49 +00:00
goldsimon
7932bf483b Ongoing fix to patch #5822: converted more statements like (void)arg; into LWIP_UNUSED_ARG(arg); 2007-04-11 19:39:24 +00:00
goldsimon
e54f3fdaac 3rd fix for bug #11400 (arp-queuing): More pbufs than previously thought need to be copied (everything but PBUF_ROM!). Cleaned up pbuf.c: removed functions no needed any more (by etharp). 2007-04-11 18:50:45 +00:00
kieranm
05909d6fa7 Apply patch #5745: Fix "Constant is long" warnings with 16bit
compilers.  Contributed by avatar@mmlab.cse.yzu.edu.tw
2007-04-11 13:32:41 +00:00
jifl
712a22e18c Applied patch #5832 from Tai-hwa Liang to keep ipv6 building. 2007-04-10 13:18:14 +00:00
goldsimon
f6bdd2cae4 Introduced #define LWIP_UNUSED_ARG(x) use this for and architecture-independent form to tell the compiler you intentionally are not using this variable. Can be overriden in cc.h. 2007-04-04 19:54:22 +00:00
goldsimon
11a4f5538b Change names of 2 global variables again, as the previous names did not have lwip-style... 2007-04-03 16:33:14 +00:00
fbernon
26e88dc2c1 Don't set the IP_DF ("Don't fragment") flag in the IP header in IP output packets. See patch #5834. 2007-04-03 14:08:11 +00:00
goldsimon
34fcccc50b - Changed the names of some variables in SNMP module to avoid them shadowing each other (which produces a lot of warnings and makes the code hard to maintain)
- Added missing defines for 3 snmp-functions if LWIP_SNMP==0
2007-04-02 20:39:24 +00:00
goldsimon
2f53df93e8 Removed printf formatter warning introduced by last check-in (changed local variable from u32_t to u16_t) 2007-04-02 20:34:18 +00:00
fbernon
996d5fda69 ip.c: if IP_REASSEMBLY is set to 1, don't set the IP_DF ("Don't fragment") flag in the IP header in IP output packets. 2007-03-30 13:30:42 +00:00
fbernon
4208bcd8d1 Fix on NETIF_FLAG_ETHARP test (test inverted) 2007-03-30 09:25:41 +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
fbernon
c1fe7517ec opt.h, netif.h, dhcp.h, dhcp.c: New configuration option LWIP_NETIF_HOSTNAME allow to define a hostname in netif struct (this is just a pointer, so, you can use a hardcoded string, point on one of your's ethernetif field, or alloc a string you will free yourself). It will be used by DHCP to register a client hostname, but can also be use when you call snmp_set_sysname. 2007-03-28 09:39:12 +00:00
fbernon
cd1c96db56 netif.h, netif.c: A new NETIF_FLAG_ETHARP flag is defined in netif.h, to allow to initialize a network interface's flag with. It tell this interface is an ethernet device, and we can use ARP with it to do a "gratuitous ARP" (RFC 3220 "IP Mobility Support for IPv4" section 4.6) when interface is "up" with netif_set_up(). 2007-03-28 09:23:35 +00:00
goldsimon
4aee4c1ac7 Free pbuf if pbuf_header() fails 2007-03-26 19:27:11 +00:00
goldsimon
7aea2cd6f1 Remove warnings: "converting from 'u32_t' to 'u16_t': possible loss of data": check that received timeout values fit into u16_t. 2007-03-26 18:52:52 +00:00
goldsimon
028d707077 Remove warning in netif_add(): "converting from 's16' to 'u8_t': possible loss of data" (static variable netifnum) 2007-03-26 17:19:12 +00:00
goldsimon
c9df03d1a9 Remove warnings: "comparision between signed and unsigned" and "converting from 'unsigned long' to 'u8_t': possible loss of data" 2007-03-26 17:15:23 +00:00
fbernon
e54cd23ecb stats.h, stats.c, msg_in.c: Stats counters can be change to u32_t if necessary with the new option LWIP_STATS_LARGE. If you need this option, define LWIP_STATS_LARGE to 1 in your lwipopts.h. More, unused counters are not defined in the stats structs, and not display by stats_display(). Note that some options (SYS_STATS and RAW_STATS) are defined but never used. Fix msg_in.c with the correct #if test for a stat display. 2007-03-22 16:36:45 +00:00
fbernon
bb34d8cfd1 api_msg.c, igmp.c, igmp.h: Fix C++ style comments 2007-03-21 14:47:52 +00:00
fbernon
a880469d7d Remove obsolete include from my port. 2007-03-21 13:57:45 +00:00
kieranm
e5147d5562 * netif.c, netif.h: Apply patch#4197 with some changes (originator: rireland@hmgsl.com).
Provides callback on netif up/down state change.
2007-03-21 13:24:20 +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
kieranm
b422864d5d sockets.c, igmp.c, igmp.h, memp.h: Fix C++ style comments and
comment out missing header include in icmp.c
2007-03-21 12:50:04 +00:00
fbernon
eab3667b61 memp.h, stats.c: Fix stats_display function where memp_names table wasn't synchronized with memp.h 2007-03-20 18:12:06 +00:00
kieranm
b290f0442d udp.c: Only try and use pbuf_header() to make space for headers if
not a ROM or REF pbuf.
2007-03-20 16:58:08 +00:00
goldsimon
3bb13829fe checked in patch #5796: pbuf_alloc: len field claculation caused memory corruption. 2007-03-11 20:07:37 +00:00
fbernon
1af676385c Add igmp.h and igmp.c inside tree :
src/core/ipv4/igmp.c
src/include/ipv4/lwip/igmp.h
2007-03-11 19:45:32 +00:00
fbernon
a24a170b84 New configuration option LWIP_IGMP to enable IGMP processing. Based on only one filter per all network interfaces. Declare a new function in netif to enable to control the MAC filter (to reduce lwIP traffic processing).
Mace Gael for the upper layers, Steve Reynolds for lower ones...
2007-03-11 19:16:38 +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
goldsimon
41a84ef1d3 Fixed bug #11400-2: New etharp queueing introduced bug: memp_memory was allocated too small. 2007-03-09 07:15:04 +00:00
fbernon
fdcb87db19 Implement LWIP_SO_RCVTIMEO configuration option to enable/disable SO_RCVTIMEO on UDP sockets/netconn. 2007-03-08 20:58:46 +00:00
goldsimon
5eabd4591a SNMP UDP ports can be configured at compile time 2007-03-08 10:32:29 +00:00
goldsimon
91afefa61a Reverted pbuf_alloc() to REV 1.82 2007-03-07 15:47:54 +00:00
fbernon
7cda728469 Fix some "little" build problems, and a redundancy call to "lwip_stats.link.recv++;" in low_level_input() & ethernetif_input().
If LINK_STATS was defined, tcpip.c couldn't be build.
Even if IP_FRAG or IP_REASSEMBLY were set, ip_frag.c functions are not build.
2007-03-06 19:31:49 +00:00
fbernon
7fd37d4e87 Implement SO_RCVTIMEO on UDP sockets/netconn. 2007-03-06 16:41:02 +00:00
goldsimon
874bfe19d2 Reduce code size: don't include code in those files if IP_FRAG == 0 and IP_REASSEMBLY == 0 2007-03-06 15:27:58 +00:00
goldsimon
7b54ddd828 Corrected patch to bug #19168 2007-03-04 17:21:43 +00:00
goldsimon
9da7afb345 Fixed buf #19168 based on patch by Dmitry Potapov 2007-03-04 12:45:58 +00:00
goldsimon
1f544e087b Fix BUG#11400 - don't corrupt existing pbuf chain when enqueuing multiple pbufs to a pending ARP request 2007-03-04 12:12:42 +00:00
fbernon
e1b6a4cb21 udp.c: remove obsolete line "static struct udp_pcb *pcb_cache = NULL;"
Its is static, and never used in udp.c except udp_init().
2007-03-03 17:00:44 +00:00
kieranm
527d18a526 2007-02-28 Kieran Mansley (based on patch from Simon Goldschmidt)
* api_lib.c, tcpip.c, memp.c, memp.h: make API msg structs allocated
    on the stack and remove the API msg type from memp
2007-02-28 14:15:43 +00:00
kieranm
5ace5976a1 * pbuf.c: Fix BUG#17645 - ensure pbuf payload pointer is not moved
outside the region of the pbuf by pbuf_header()
2007-02-28 13:45:35 +00:00
jifl
f4f2bfe379 Ensure the size of each pbuf in the pool meets alignment constraints 2007-02-27 16:50:05 +00:00
christiaans
11f2e8d1a6 Added MEM_LIBC_MALLOC option as workaround for failing mem_malloc(). 2006-12-04 08:24:25 +00:00
christiaans
36e6c26545 Included xid to some DEBUGFs. 2006-12-01 13:52:07 +00:00
christiaans
9a68f74857 Fixed false triggers of request_timeout. 2006-11-30 16:25:43 +00:00
christiaans
b96c15890c Disabled alignment fix. Stepping back, #17922 fix fails on my target, DHCP won't start, I don't understand. 2006-11-28 13:29:05 +00:00
christiaans
5a6b26d69e In netif_add() fixed clearing of ip_addr, netmask, gw and flags. 2006-11-28 13:12:15 +00:00
christiaans
a3d912a801 Fixed uninitalized variable warnings (using gcc 4.1.1) 2006-11-27 15:37:44 +00:00
christiaans
b4f1deaa46 Accepted patch #5493 IP frag/reass config item tweak. 2006-11-27 14:48:21 +00:00
christiaans
976bce4c7f Changed heap to use naturally aligned start address and added near-fit case to #17922 fix. 2006-11-27 14:23:24 +00:00
christiaans
77e0f77850 Added snmp_send_trap() parameter, caller must pass enterprise id for enterprise secific traps. 2006-11-27 08:43:10 +00:00
christiaans
a885cbf8ed Removed mem_dump() reference. 2006-11-22 09:56:39 +00:00
christiaans
b6af5d9bda Initial attempt at fixing bug #17922, calling for reviewers. This seems to work for me, more or less, but it looks like it breaks TCP. 2006-11-22 08:27:38 +00:00
christiaans
b72677c3ce Added missing NULL return checks for snmp_mib_lrn_alloc() and trimmed whitespace at line ends. 2006-11-17 11:07:25 +00:00
christiaans
5e44122552 Trimmed whitespace at line ends. 2006-11-17 11:05:26 +00:00
christiaans
d4b6471d39 Replaced tabs with space. 2006-11-17 10:51:13 +00:00
christiaans
2f41e2b0ec Made ip_id static again, fixing bug #18065. This is required when outputting IP fragments. 2006-11-01 09:33:14 +00:00
christiaans
4e583dab2e Again, fixed decoding of negative integers in snmp_asn1_dec_s32t(), tnx to though testing by Sander. 2006-10-13 13:45:06 +00:00
christiaans
bc182cab7c Removed EXPERIMENTAL status. 2006-10-13 12:00:35 +00:00
christiaans
f6f6f11838 Fixed decoding of negative integers in snmp_asn1_dec_s32t(), removed EXPERIMENTAL status. 2006-10-13 11:59:45 +00:00
christiaans
b5f4672155 Partially accepted patch #5449 for ANSI C compatibility / build fixes. Fixed bug #17574 corrected UDP-Lite protocol identifier. 2006-10-11 12:04:04 +00:00
christiaans
2539b5cf61 Fixed up mib_external_node support, snmpwalk works for external objects. 2006-10-06 08:41:24 +00:00
christiaans
f7881e58bb Improved message parse robustness. Rejecting 'error requests'. Removed invalid genError return on varbindlist parse error, changed badValue into noSuchName error for non-writeable objects. 2006-10-04 09:15:23 +00:00
christiaans
25ed4e9d16 Fixed clearing of head and tail pointers in snmp_mib_node_delete(). 2006-10-03 10:41:48 +00:00
christiaans
cfb082a20b Added external mibnode panic closure functions, tobe called for error responses. 2006-10-02 10:13:04 +00:00
christiaans
e440590c37 Fixed snmp_mib_node_insert() to return 2, for node present (not inserted). Also solves invalid rootnode count for this case. 2006-09-29 13:34:38 +00:00
christiaans
c851a19ab2 Added en->get_value_a() call for zero size get_value replies, e.g. for closing external transactions. 2006-09-28 11:46:24 +00:00
christiaans
c2f9d7dee0 Fixed encoding of object sub identifiers with trailing zero. 2006-09-28 11:43:49 +00:00
christiaans
473e567047 Added en->set_value_a() call for closing external transactions. 2006-09-27 15:11:30 +00:00
christiaans
64dab92c6b Redesign of snmp_msg_event() fsm, added SNMP SET to fsm. 2006-09-27 07:25:16 +00:00
christiaans
d0f279ece4 Set TODO_SNMP_MSG_EVENT to 1. Moved some more code from snmp_recv() to snmp_event_service(). 2006-09-22 08:05:17 +00:00
christiaans
a5532ffd4d Added one strategic LWIP_DEBUGF to snmp_send_response(). 2006-09-22 08:03:16 +00:00
christiaans
cb412134dd Added newlines to LWIP_DEBUGFs. 2006-09-22 08:00:56 +00:00
christiaans
d079aae0e0 Fixed NULL dereferencing for zero length raw data. 2006-09-22 07:59:44 +00:00
christiaans
eabfb233b8 Moved SNMP_CONCURRENT_REQUESTS to opt.h, babysteps for external MIB nodes. 2006-09-20 13:33:50 +00:00
christiaans
960e724ad3 Improved mib node struct for external object access and moved get_object_def() calls to the message processing bit. 2006-09-14 15:08:54 +00:00
christiaans
82c46f957a Fixed double iterator bug in send_trap(), multiple trap destinations work ok now. 2006-09-12 12:46:36 +00:00
christiaans
320ea29861 Added some lines for SET command. 2006-09-12 10:03:46 +00:00
christiaans
c5e99ada63 Fixed sysObjectID length to copy private IDs with unkown lengths properly. 2006-09-08 09:22:28 +00:00
christiaans
a88d054d05 Improved TRAP interfacing. Varbinds maybe allocated at (external) trap source as wel. Added trap destination settings. 2006-09-07 14:17:03 +00:00
christiaans
6576802287 Fixed compilation for LWIP_SNMP 0. 2006-09-07 07:39:49 +00:00
christiaans
41ff80e5d3 First getnext succes, values are returned insead of NULLs, empty tables are skipped. Limitation: a single varbind per request, so 'snmptable' will fail. 2006-09-06 10:14:07 +00:00
christiaans
56c5fdbeaf Added newlines in debug output, small optimalisations, more work on 'getnext', fixed 'get' on udp table. 2006-09-04 09:22:48 +00:00
christiaans
130d39cc03 Changed index structs to mib_list_node structs to place the table index trees directly in the mib tree. 2006-09-01 07:14:50 +00:00
christiaans
1485edf8e1 Added index tree node structs and functions, e.g. to be used for ARP table indexes. 2006-08-29 11:28:28 +00:00
christiaans
514ee867a6 Pacified GCC warnings and elaborated getnext to work on scalars, tables don't work yet. 2006-08-21 11:52:58 +00:00
christiaans
3cc7a406f4 Pacified GCC warnings and fixed double mem_free() while returning nosuchname err. 2006-08-21 11:51:19 +00:00
christiaans
c3f82acf7a Pacified GCC warnings. 2006-08-21 11:50:03 +00:00
christiaans
cdb7557d88 Added SNMP counters. 2006-08-18 10:18:42 +00:00
christiaans
7d1728f05a Started with getnext and ensure zero length identifiers are accepted. 2006-08-17 14:14:58 +00:00
christiaans
4b5c14470a Fixed htons into htonl for trap desctination ip. 2006-08-17 14:11:45 +00:00
christiaans
f198b11f27 Accepting zero length identifiers e.g. for getnext operation. Uncommon but valid. 2006-08-17 14:09:57 +00:00
christiaans
7d16087789 Fixed bug #17200, added check for broadcast destinations for PCBs bound to a unicast address. 2006-08-17 09:40:15 +00:00
christiaans
d734cd986c Moved noleafs_get_object_def() and noleafs_get_value() protos from mib2.c to snmp_structs.h 2006-08-15 07:28:43 +00:00
christiaans
8559f3e583 MIB-2 object values near to completion, just committing for keeping the flame alive. 2006-08-11 14:16:36 +00:00
christiaans
d0b81d3b20 Corrected comment typo. 2006-08-11 14:13:39 +00:00
christiaans
43bf9a8e46 Added SNMP counters, moved some defines. 2006-08-11 14:12:05 +00:00
christiaans
19f57bf810 Exported udp_pcbs in udp.h (for SNMP agent). 2006-08-11 14:09:48 +00:00
christiaans
9b11c4670d Corrected returned object id for interfaces.ifTable.ifEntry.ifSpecific to zeroDotZero (0.0). 2006-08-07 11:35:32 +00:00
christiaans
7eeaf8eaa5 Corrected object identifier codec for object ids not starting with .iso.dod (e.g. zeroDotZero (0.0)). 2006-08-07 11:32:44 +00:00
christiaans
d8922d0410 Added minimalistic SNMP GET functionality. 2006-07-14 12:54:38 +00:00
christiaans
54bb20b486 Added SNMP statistics to struct netif and changed SNMP macro glue. 2006-07-14 09:58:02 +00:00
christiaans
7a5cb21056 Fixed (experi)mental typo. 2006-07-07 11:33:36 +00:00
christiaans
333c3f18c0 Initial commit. Expirimental code, please note this is not yet fully functional. 2006-07-07 09:49:31 +00:00
christiaans
a5cab96ff3 Added ip_frag_init() and some LWIP_DEBUGFs. 2006-07-04 08:24:17 +00:00
christiaans
dd060ceed3 Added ip_frag_init() to ip_init(). 2006-07-04 08:23:33 +00:00
curtmcd
dd314e1bdf Fix incorrect calculation of dhcp->dns_count.
Comment out unused static dhcp_get_option_short() to avoid warning.
2006-06-08 00:16:56 +00:00
curtmcd
1dae102359 Fix debug print, remove reference to TCP_COARSE_TIMEOUT 2006-05-31 21:23:26 +00:00
curtmcd
b306594cad Remove unused mem_reallocm 2006-05-31 21:23:01 +00:00
curtmcd
b60b7cf8fe Use isprint() instead of isascii() as it's more common
Change return type of inet_aton from s8_t to int (standard)
Touch up comments and white space
2006-05-30 19:09:41 +00:00
curtmcd
6158aa684b udp_input() operated by removing the IP and UDP headers, putting back
the UDP header, then re-removing it.  However, pbuf_header() can't add
back the UDP header on pbufs of type PBUF_REF, so these would all get
dropped for bad checksum.  This change addresses the problem and
simplifies things by stripping each header just once.
2006-05-26 02:40:54 +00:00
curtmcd
047e3455f7 Improve formatting by fixing wrong indents and lines too long. 2006-05-26 01:36:16 +00:00
christiaans
7fc966dced Optimized for speed and size. Test against zero for both the inverted and non-inverted address. (old and new-style broadcasts) 2006-04-24 07:26:06 +00:00
curtmcd
680afa4229 memp_memory could be unaligned, causing one buffer in the memp pool to
be unaligned, resulting in nasty random data corruption on some CPUs.
Also, clean up the code a little and save a few bytes.
2006-04-12 21:07:44 +00:00
likewise
313743c833 Fix for out-of-sequence FIN handling, patch by Oleg Tychev. 2006-04-08 00:36:25 +00:00
likewise
6cb19d7e34 Dangling inseg.p pointer fix by Pedro Alves. 2006-04-08 00:13:49 +00:00
christiaans
c9db715bae addr->addr test size and speed optimalisation (helping a dumb compiler) 2006-04-04 07:21:54 +00:00
christiaans
94abf9d935 Added LWIP_PLATFORM_BYTESWAP optimalisation flag and macro glue. 2006-03-29 10:15:43 +00:00
christiaans
d9b4ab1658 Pbuf flag test size and speed optimalisation (helping a dumb compiler). 2006-03-28 15:06:33 +00:00
christiaans
61dc2e7dd5 Added pbuf_alloc() return value checks in ip_frag(). 2006-03-03 11:25:36 +00:00
christiaans
11a820458f Increased ip_reassbitmap size with 1, added assertions to catch boundary cases.
Beautified indentation again.
2006-03-02 15:45:19 +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
likewise
db76ca248b 2006-02-27 Merged patch by Curt McDowell
pbuf.c: Fix alignment; pbuf_init() would not work unless pbuf_pool_memory[] is properly aligned.
2006-02-27 14:11:19 +00:00
christiaans
3aea7bc053 Removed timer dependency on sys.c (raw-API). Beautified indentation. 2006-02-13 08:12:07 +00:00
christiaans
6c8850698d Small optimalization for udp_input(). 2006-01-02 12:06:02 +00:00
likewise
f8663a7129 Remove PCBs which stay in LAST_ACK state too long. 2005-12-20 11:03:18 +00:00
christiaans
60dc1c22f7 Disabled the added summing routine to preserve code space, fixed some comments. 2005-12-15 08:26:00 +00:00
likewise
02b575e9e4 Added Curt McDowell's platform-independent optimized checksum routine. 2005-12-14 22:51:35 +00:00
likewise
6facaf8f05 Trailing dangling byte in checksum should be considered MSB. 2005-12-14 22:29:03 +00:00
likewise
319a972e75 Duplicate FIN ACK race condition fix by Kelvin Lawson. 2005-12-14 21:58:14 +00:00
christiaans
61cdbb30a6 Added some more fixes to the lwip_standard_chksum() comments. 2005-12-14 12:55:12 +00:00
likewise
e1dcfcbb76 Updated comment on optimization and aim of this generic algorithm. 2005-12-12 09:32:05 +00:00
christiaans
43d448e73f Fixed lwip_standard_chksum() for unaligned memory access. Verified to work on c16x and BSD on P4. 2005-12-09 08:59:08 +00:00
christiaans
33fbb06604 Fixed void ptr address increment bug reported by Bertrik Sikken. 2005-11-25 12:23:03 +00:00
christiaans
e1b215aa73 Introduced cc.h formatters and removed SO_REUSE from transport layers. 2005-11-25 12:03:38 +00:00
likewise
f05d392920 Unaligned 16-bit access fix for the standard checksum routine by Peter Jolasson. 2005-07-17 15:30:27 +00:00
likewise
baf377679a 2005-06-08 Leon Woestenberg <leon.woestenberg@gmx.net>
* tcp_in.c: Send reset on unexpected ACK in two cases. Fix submitted by olaf.peters@technolution.
2005-06-08 18:57:05 +00:00
likewise
f9355136d8 2005-06-08 Leon Woestenberg <leon.woestenberg@gmx.net>
* udp.c: Fixed memory leak; when ip_route() failed, a possibly allocated q was never de-allocated. Fixed by called ip_route() before allocating q.
2005-06-08 18:35:00 +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
8579e4144f More robust DHCP ARP reply checking. 2005-01-24 23:02:29 +00:00
likewise
6880fa62f8 Added some missing string.h includes. 2005-01-24 21:05:47 +00:00
likewise
86c774443c Fixed missing semicolon in LWIP_DEBUG statement. 2005-01-04 12:20:25 +00:00
likewise
3b715f4602 3 January 2004, Leon Woestenberg <leon.woestenberg@gmx>
udp.c: pcb->recv() callback was called even when it was NULL.
2005-01-03 17:54:21 +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
christiaans
089378ef87 christiaans: cosmetic change debug formatters as requested by Tom. 2004-12-07 08:16:27 +00:00
likewise
f3def542ee Compile dammit 2004-11-25 14:03:31 +00:00
likewise
aa249922df Removed redundant closing bracket. 2004-11-25 13:59:06 +00:00
likewise
37a0c57bed 2004-11-25 Leon Woestenberg <leon.woestenberg@gmx.net>
* ip.c: Exploit the fact that ip_addr_isbroadcast() now checks that the
     given IP address actually belongs to the network of the given interface.
2004-11-25 13:57:05 +00:00
likewise
90b7e68b4e Removed the Smurf. 2004-11-25 13:52:34 +00:00
likewise
fd49ee3c8d 2004-11-25 Leon Woestenberg <leon.woestenberg@gmx.net>
* ipv4/ip_addr.h: Renamed ip_addr_maskcmp() to _netcmp() as we are
    comparing network addresses (identifiers), not the network masks
    themselves.
  * ipv4/ip_addr.c: ip_addr_isbroadcast() now checks that the given
    IP address actually belongs to the network of the given interface.
2004-11-25 13:33:07 +00:00
likewise
ae4955f59e Replaced erronous LWIP_ERRORF with LWIP_DEBUGF 2004-11-25 11:23:37 +00:00
likewise
fab107a9df DECLINE message was unicast instead of broadcast 2004-11-25 11:10:53 +00:00
kieranm
bb87d19e84 Kieran Mansley - kjm25@cam.ac.uk - 24th Nov 2004
* Increase pcb->snd_buf by 1 when an ACK is received in SYN_SENT state to ensure correct operation
2004-11-24 17:05:41 +00:00
kieranm
64aa4c716d Kieran Mansley - kjm25@cam.ac.uk - 24th Nov 2004
* Increased argument checking at start of pbuf_queue() and made resulting errors more verbose
2004-11-24 17:03:03 +00:00
likewise
791fa28817 Removed static declaration of dhcp_release(). 2004-11-04 19:19:29 +00:00
kieranm
751557bcbf 16th October 2004 - Kieran Mansley - kjm25@cam.ac.uk
- Add code to tcp_recved() to send an ACK (window update)
immediately, even if one is already pending, if the rcv_wnd is above a
threshold (currently TCP_WND/2)
 - This avoids waiting for a timer to expire to send a delayed ACK in
order to open the window if the stack is only receiving data.
2004-10-16 12:57:52 +00:00
likewise
0ad7ea16d2 Bring interface up/down with netif_set_up/down(). Fixes bug 10547. 2004-10-14 11:57:53 +00:00
kieranm
4cb8192c1d Kieran Mansley - kjm25@cam.ac.uk - 20th September 2004
* Corrected "out by one" error on one of the TCP_SEQ_BETWEEN macro calls introduced recently
2004-09-20 16:53:48 +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
kieranm
fae1397468 Rename lwip_chksum and add LWIP_CHKSUM macro so that ports can "override" the standard implementation with one of their own. 2004-09-12 16:17:58 +00:00
kieranm
e871548772 Fixed typo (missing "{") in previous checkin 2004-09-12 16:03:54 +00:00
kieranm
a3d27e30e0 Add TCP_SEQ_BETWEEN macro for comparing a range of sequence numbers 2004-09-12 15:56:12 +00:00
likewise
b9ebcd7738 Ingress TCP keep-alive with garbage byte support. 2004-08-17 09:32:31 +00:00
softins
1fa0d66f15 Stop compiler complaining of empty if statement when LWIP_DEBUGF() empty. 2004-07-27 16:08:26 +00:00
softins
4680307a34 Stop compiler complaining of empty if statement when LWIP_DEBUGF() empty.
Close an unclosed comment.
2004-07-27 16:08:05 +00:00
softins
1da6c35a6d Added a couple of casts to quiet the compiler.
No need to test isascii(c) before isdigit(c) or isxdigit(c).
2004-07-27 14:43:58 +00:00
likewise
7c427a4dce Made some comments more explicit. 2004-07-25 23:41:01 +00:00
likewise
c2abae538b pbuf_free() assert triggered by NULLified inseg.p. Reported by Karl Jeacle on 25-7-2004 on lwip-users. 2004-07-25 23:17:07 +00:00
kieranm
eb69032773 Kieran Mansley - kjm25@cam.ac.uk - 23rd July 2004
Now handle CLOSED state in tcp_close() explicitely, and free the pcb.
This is for the case that a pcb has been allocated but never used (so
is in the default "CLOSED" state) and needs to be freed.
2004-07-23 13:07:00 +00:00
likewise
fb5452910f I hate it when it takes twice to fix a typo 2004-07-22 22:10:17 +00:00
likewise
a6d37fcb25 Removed copy-paste errors. 2004-07-22 22:07:00 +00:00
likewise
786cbee510 Support for learning DNS servers through DHCP. 2004-07-22 21:56:09 +00:00
softins
a4f5673ff3 Small corrections to some debugging statements, to pacify compiler. 2004-07-22 08:06:00 +00:00
softins
1121f2b7f7 Made data types consistent in inet_ntoa().
Added casts for return values of checksum routines, to pacify compiler.
2004-07-22 08:03:02 +00:00
softins
d7699ca81d Changed debug statements to use the tidier ip4_addrN() macros. 2004-07-21 09:23:11 +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
likewise
a6ab0405ea Disabled some code by #if 0 #endif rather than /* */. 2004-07-14 23:19:08 +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
kieranm
c356f560e8 Kieran Mansley - 14th July 2004
* Fixed whitespace indenting in parts of tcp_in.c
 * Changed adjustment of ssthresh in response to fast retransmit
 * Commented out iteration of unsent list when new ACK received as we no longer put all unacked data on unsent list when retransmitting
2004-07-14 09:45:01 +00:00
likewise
7524893802 Dependencies on C library memset() etc., so include <string.h>. 2004-07-04 23:43:38 +00:00
likewise
07f52b4b96 Fixed compile errors. 2004-06-30 22:14:03 +00:00
likewise
0be3598990 Style fixes. 2004-06-30 18:42:54 +00:00
likewise
c3284c30cd Make restarting() DHCP on on interface more robust by cleaning old state information. 2004-06-30 18:42:33 +00:00
likewise
31c1e72b8c ip_forward() returns netif on which packet was forwarded. 2004-06-30 18:39:17 +00:00
likewise
d11fcafad8 Added netif up/down basics. 2004-06-30 18:38:07 +00:00
kieranm
27c6d299cf Kieran Mansley - kjm25@cam.ac.uk - 30th May 2004
* Fixed bug #9160 after discussion on mailing list
 - alters use of MEM_ALIGN_SIZE in pbuf_alloc when calling mem_malloc for a PBUF_RAM pbuf
2004-05-30 14:04:30 +00:00
kieranm
450dd65165 Kieran Mansley - kjm25@cam.ac.uk - 26th May 2004
* Fixed bug 9076 (changes to pbuf tot_len and seg dataptr when trimming front edge of a received packet)
2004-05-26 10:04:15 +00:00
likewise
b217b020a5 Changed PAD_ETH_SIZE into ETH_PAD_SIZE for consistency with de-facto lwIP naming convention. 2004-05-05 15:09:13 +00:00
likewise
e84cc8c0ad Remember head of queue in pbuf_queue() iff PBUF_DEBUG to generate senseful debug report. 2004-05-05 14:28:41 +00:00
likewise
5e13b9528d Adpated comments to match Doxygen/JavaDoc style. 2004-05-05 14:12:28 +00:00
likewise
8bb3cab9d2 Adpated comments to match Doxygen/JavaDoc style. 2004-05-05 13:28:44 +00:00
likewise
ed201c35d2 Made raw_input() more generic allowing multiple matches until someone eats the packet. 2004-05-05 13:27:27 +00:00
likewise
4eadc22a36 Some updates on "gratuitious ARP" from RFC3220. Cleanup of some code and comments. 2004-05-03 17:50:11 +00:00
likewise
a5148c14a1 Fixed use of struct ip_addr in DHCP header. 2004-04-30 01:00:21 +00:00
likewise
94d3b04d68 Applied cleaner new patch for bug #8708.
Implemented multiple packets on the outgoing queue in etharp.c.
Removed etharp.c specific queueing functions.
Fixed generic pbuf.c queueing functions.
2004-04-30 00:25:03 +00:00
likewise
8f309a3fec Clean-up source comment documentation for Doxygen. 2004-04-29 21:50:39 +00:00
likewise
1fe4edbe1c Fix buggy comment. 2004-04-29 21:49:12 +00:00
likewise
fe1696cef7 Clean-up source comment documentation for Doxygen. 2004-04-29 21:48:31 +00:00
likewise
de2e311e6e Updated documentation. 2004-04-28 23:40:53 +00:00
likewise
384fb3c353 Corrected comparison by adding missing parentheses. 2004-04-28 23:36:39 +00:00
likewise
e2b0c6c702 Fixed a cast. 2004-04-28 23:18:57 +00:00
likewise
5b12c61a81 Removed old broadcast check macro. 2004-04-28 23:18:20 +00:00
likewise
237b5a2467 Fix in the ip_addr_isbroadcast() check. 2004-04-23 16:45:06 +00:00
likewise
d91b54882a Fixed #ifdef LWIP_DHCP to #if LWIP_DHCP. 2004-04-16 22:36:48 +00:00
likewise
9106a1f2d5 Fixed #ifdef LWIP_DHCP position. Fixed extranous comma in function arguments. 2004-04-16 22:34:25 +00:00
jani
d27448da8a fix up stats_display which was added in previous commit 2004-03-26 12:47:57 +00:00
jani
d36b723056 fix SO_REUSE ifdef fixes 2004-03-26 12:40:58 +00:00
kieranm
2c8aa6f6f4 Kieran Mansley - kjm25@cam.ac.uk - 23rd March 2003
- Changed all #ifdef SO_REUSE into #if SO_REUSE
2004-03-23 19:33:53 +00:00
likewise
6f7c8fb355 Made #ifdef's into #if's for SO_REUSE. 2004-03-23 00:19:38 +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
likewise
579d2ad811 Disabling ip_addr_isbroadcast() due to recursive header dependencies.
Currently, patch #2679 is broken, but will be neatly fixed once this is solved.
2004-03-11 21:37:56 +00:00
likewise
10d42c6fa3 Replaced ip_addr_isbroadcast() macro by function.
Overrides patch #2679, as this must be solved inside ip_addr_isbroadcast(), inspired by BSD.
2004-03-11 21:20:10 +00:00
likewise
6434f7efad Missing newline at EOF. Gave compiler warning. 2004-03-11 20:52:25 +00:00
likewise
bfdf19f56c Make udp_disconnect() clear its remote address association. 2004-03-11 20:45:09 +00:00
likewise
79c7a7a43d Using udp_sendto() where appropriate. 2004-03-11 20:25:35 +00:00
likewise
175053085a Fixed @return in udp_sendto() docs, @see in udp_send*() docs. 2004-03-11 20:04:16 +00:00
likewise
3d90c062fd Added udp_sendto() docs. Fixed udp_send() docs. 2004-03-11 20:01:26 +00:00
likewise
fda71b1230 Fixed udp_sendto() -> instead of . 2004-03-11 19:52:47 +00:00
likewise
a916de3b66 Added udp_sendto(). 2004-03-11 19:41:22 +00:00
jani
30e5dfddb9 fix inet_ntoa prototype to be standard, and fix ppp code that used the non-standard version 2004-03-10 13:23:04 +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
kieranm
caf3c16826 Kieran Mansley, kjm25@cam.ac.uk, 08th Mar 2004
- added a comment to tcp_recved() to clarify reasons for call to tcp_ack()
2004-03-08 14:41:25 +00:00
likewise
a6f1111469 Matched interface documentation for netif_add() API change in 1.28.2.5. 2004-03-04 16:19:53 +00:00
jani
33d0096b81 add switch for MEMP_SANITY_CHECK defaulting to off 2004-02-26 10:43:09 +00:00
likewise
ed4c5d88a3 Added replacement for ip_addr_isbroadcast() macro, code is dead for review and testing (#if 0). 2004-02-24 21:59:17 +00:00
kieranm
3a784509df 23/02/2003 - Kieran Mansley - kieranm@gtemail.net
* Applied patch #2679

 * Adds check to line 75 for NETIF_FLAG_BROADCAST
2004-02-23 10:13:12 +00:00
kieranm
5c7189124c 23/02/2003 - Kieran Mansley - kieranm@gtemail.net
* Applied patch #2679

 * Adds check to line 314 for NETIF_FLAG_BROADCAST
2004-02-23 10:11:55 +00:00
kieranm
f81c2744cc 23/02/2003 - Kieran Mansley - kieranm@gtemail.net
* Applied patch #2679

 * Adds check to line 133 for NETIF_FLAG_BROADCAST
2004-02-23 10:07:39 +00:00
lukem
4bf3359574 Added ability to disable checksum generation and checking at compile-time 2004-02-20 01:46:03 +00:00
lukem
47984b0496 removed redundant redeclaration of tcp_active_pcbs (already defined by tcp.h) 2004-02-20 00:51:49 +00:00
lukem
3c339323ed added 8-byte alignment for 64-bit architectures 2004-02-20 00:45:47 +00:00
jani
7399722a88 indentation fix 2004-02-18 09:01:33 +00:00
likewise
7bfea6edb7 Applied Ian Wienand's patches (4-2-2004). Was partly applied earlier. 2004-02-16 21:33:42 +00:00
likewise
e1c4bfad05 Merged from DEVEL, except for the API change in etharp.c. 2004-02-07 00:30:03 +00:00
likewise
1ed40e7983 Applied alias.diff by Ian Wienand on lwip-devel on February 4th 2004.
Using union to make explicit either tcp_listen_pcb or tcp_pcb.
2004-02-06 23:48:40 +00:00
likewise
035fcce9de Applied mem.diff by Ian Wienand on lwip-devel on February 4th 2004.
Stops some warnings.
2004-02-06 23:44:59 +00:00
likewise
19eed5ff8a Applied dhcp.diff by Ian Wienand on lwip-devel on February 4th 2004.
DHCP tries to build even if LWIP_DHCP is turned off.
2004-02-06 23:43:44 +00:00
likewise
1b96391cdf Merged from DEVEL to main. Two TCP fixes and two NULL reference fixes. 2004-01-20 13:23:52 +00:00
uid67528
eed8ea5bc1 Merged from DEVEL. etharp prepared for queueing feature. DHCP fix. 2003-12-28 02:38:51 +00:00
likewise
a646b5374f Merge from DEVEL. Assert used field not available without callback API. 2003-11-18 01:52:24 +00:00
likewise
fa9b1ba947 Merge from DEVEL. Includes important UDP fix for bug #6601. 2003-11-18 01:40:08 +00:00
likewise
e4a6d199fe Merged from DEVEL into main tree. 2003-11-14 13:17:23 +00:00
marcbou
351e590e01 Merged from DEVEL. 2003-06-27 20:46:11 +00:00
marcbou
ec1c2a714e merged from DEVEL. 2003-06-19 11:35:26 +00:00
marcbou
bbc33080e7 Merged from DEVEL. 2003-06-19 11:15:39 +00:00
likewise
cea2c0bbc4 Fixed a string literal being wrongly split over two lines. 2003-06-12 07:18:57 +00:00
likewise
93dfcdce93 Fixes wrongly cast LWIP_DEBUGF arguments (patch #1596 and more). 2003-06-11 22:34:51 +00:00
likewise
ba786dc49b Applied patch #1596 fixing wrongly cast LWIP_DEBUGF arguments.
(printf expects integers on the var args stack)
2003-06-11 22:11:42 +00:00
kieranm
8014551908 Changed DEBUGF to LWIP_DEBUGF 2003-06-10 10:45:29 +00:00
likewise
c699921ff0 Fixed a multi-line comment. 2003-06-09 21:32:55 +00:00
likewise
df99ce9d98 Replaced all tabs with two spaces (regardless of indentation is correct). 2003-06-09 21:14:47 +00:00
likewise
829744dfe6 More precise comments on address change. 2003-06-09 21:08:55 +00:00
likewise
b306cab8be Additional documentation on the subtle difference of a 'pbuf chain' and a 'packet queue'. 2003-06-06 08:34:37 +00:00
likewise
031a4cbdd8 Increased number of debug messages to see pbuf chain actions. 2003-06-05 14:15:46 +00:00
likewise
326b8ff728 Fixed a memory leak when only a part of a PBUF_POOL chain could be allocated. 2003-06-04 19:09:11 +00:00
likewise
9ed2b7e03c pbuf_alloc() forgot to set tot_len field for PBUF_POOL pbufs. 2003-06-04 09:06:22 +00:00
jani
2bfd55fd69 sys_msleep and sys_jiffies used by PPP code.From Marc 2003-06-02 11:10:20 +00:00
jani
39a6db4097 inet_ntoa and inet_aton from Marc 2003-06-02 11:09:01 +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
jani
b0273c9209 fix warning 2003-05-27 13:40:54 +00:00
likewise
4ae13c6c26 Set UDP_FLAGS_CONNECTED in udp_connect(). 2003-05-20 11:23:59 +00:00
likewise
cf7054dff2 Merging some fixes that had been committed into STABLE. 2003-05-20 09:49:04 +00:00
likewise
b8eeee5528 dhcp_recv() left dangling dhcp->p pointer in case of unexpected message.
This could result in pbuf_free() assertion (ref count 0) or crashes.
2003-05-20 09:04:10 +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
cda867d52b Applied patches posted by Marc Boucher on lwip-users May 18th 2003. 2003-05-18 22:29:10 +00:00
jani
398bf575d9 C++ comments cleanup 2003-05-06 12:15:08 +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
6e9c995fc8 Fixed packet header debug formatters. 2003-05-01 08:37:24 +00:00
likewise
6ee1644db7 Patch #1183 applied. This drops short ICMP packets. 2003-05-01 08:29:54 +00:00
likewise
7cb64f2a43 Patch #1183 applied. This drops short UDP/TCP packets. 2003-05-01 08:03:51 +00:00
likewise
6c907ce8d1 Patch #1308. Still disabled, as it needs to make sure no file field is not overloaded. 2003-05-01 08:00:41 +00:00
likewise
a0eb47d561 Implemented packet (de)queueing. Unused, etharp.c must be adapted next. 2003-05-01 07:48:01 +00:00
anderscarlman
0ef3b9b3c5 Re-added code for checking tail-parameter for NULL in
pbuf_chain() to provide for better backward compatibility.
2003-04-26 20:32:23 +00:00
likewise
9bc16878ea Fixed tabs into spaces. Fixed other stylos. 2003-04-16 07:39:48 +00:00
jani
7662015de6 obsolete PCB handling only active when TCP is enabled 2003-04-15 14:58:35 +00:00
jani
e4775d4162 alignment fix from Marc Boucher 2003-04-15 14:56:03 +00:00
likewise
ed14a32224 Stylo. 2003-04-15 14:40:55 +00:00
likewise
4ecb01f4fd Changed netif name formatting from %s to %c%c. 2003-04-15 14:32:13 +00:00
likewise
ac2b4c2174 Debug levels set on some serious debug messages. 2003-04-15 12:43:15 +00:00
likewise
9ef5a61b1e Prevent compiler warning on unused function arguments. 2003-04-15 12:41:52 +00:00
likewise
b68c91c973 Debug message shows requested pbuf type (of ROM/REF) upon memory allocation failure. 2003-04-15 12:38:48 +00:00
likewise
710ac00024 dhcp_inform() did not set and unset netif->dhcp. always generated assert failure. 2003-04-15 12:37:06 +00:00
likewise
a96a12ed1f Prevent warnings about unused function arguments. 2003-04-15 11:27:52 +00:00
likewise
f9538c9395 Disabled pbuf_dechain() as it not currently in use. Fixed comment position. 2003-04-14 11:37:12 +00:00
likewise
445a64d933 Stronger debugging/assertion. 2003-04-14 11:36:17 +00:00
anderscarlman
d1940302bb Removed the lines setting dhcp->msg_in and dhcp->options_in to NULL, since this is done implicitly through dhcp_free_reply(). 2003-04-12 15:40:43 +00:00
davidhaas
3defc437c6 Got rid of pbuf_pool_alloc_cache and pbuf_pool_free_cache. Also got rid of
pbuf_refresh(). This has sped up pbuf pool operations.
2003-04-11 14:39:15 +00:00
likewise
40f10b69f7 All debug messages now show actual config _after_ setting netif config. 2003-04-11 14:02:48 +00:00
likewise
4c5117101d Fixed debug message for PBUF_REF/ROM allocation failure. 2003-04-11 12:56:13 +00:00
likewise
f6a8994521 ip_addr_any and _broadcast are type-declared as being const. 2003-04-11 08:10:17 +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
davidhaas
18a215e6a8 Made memory stats more accurate (real amount and max amount of memory used).
Also fixed a protection bug which occurred when memory allocation failed.
2003-04-09 20:19:27 +00:00
likewise
1254b42e66 Enabled code to abort/replace TCP pcbs upon netif address change. 2003-04-09 15:17:57 +00:00
likewise
a389b630ac Added (non-active) code handling pcbs upon changing IP address. 2003-04-08 12:19:02 +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
12fc0239c2 Fixed bug #3112 (faulty behaviour calling tcp_listen() when already listening) 2003-04-06 20:35:50 +00:00
likewise
0418edb7b6 Added debugging to verify correct result of udp_bind() / udp_connect(). 2003-04-04 08:14:49 +00:00
likewise
2e233cb35b Fixed stylo. 2003-04-04 08:14:04 +00:00
likewise
6d3149714f Print debug message before actually changing netif IP address config. 2003-04-03 12:09:39 +00:00
likewise
9ea10ce05d In pbuf_take(): Got rid of variable 'f'. Fixed stylo (typo in style). Renamed 'top' to 'head'. 2003-04-03 08:50:57 +00:00
davidhaas
21d17e41fd Fixed last change to pbuf_take. There were two calls to pbuf_free in a row. 2003-04-01 15:54:25 +00:00
likewise
af8f280811 Fixed ip_addr_set() to deal with IP_ADDR_ANY. Added "ip_addr.h" include. 2003-04-01 15:00:26 +00:00
likewise
7abb278b60 Added assertion checking against dupes in pcb active list. Added comments. 2003-04-01 14:52:41 +00:00
likewise
a22e66f5ee IP_ADDR_ANY is now a pointer to { 0UL } (see IP_ADDR_BROADCAST). 2003-04-01 14:49:37 +00:00
likewise
1a72feb128 etharp_query() has error return type now. Matched dhcp.c with this change.
Added debug messages in other places.
2003-04-01 14:02:50 +00:00
likewise
a28af1be11 Fixed another assert. Removed another redundant assignment. 2003-04-01 12:28:45 +00:00
likewise
b04ac8f3be Lots of comments added. Removed redundant assignment. Moved assertion. 2003-04-01 12:17:55 +00:00
likewise
5f35f4bb3b Reverted back to David Haas' patch of pbuf_chain() from 1.34. 2003-04-01 09:35:20 +00:00
likewise
4c3512c0a2 Replaced pbuf.c 1.34 pbuf_take() change by simpler alternative. 2003-03-31 23:28:54 +00:00
davidhaas
09ca7a181b In keeping with pbuf->ref always having the count of the number of pointers
to the particular buffer (and the last rewrite of pbuf_free), changed most
pbuf_ref_chain() calls back to pbuf_ref(). I think this was causing some pbuf
leaks.
2003-03-31 22:09:39 +00:00
davidhaas
82a32be1d6 Fixed issue in pbuf_take(): old pbuf of type PBUF_REF was being referenced
after being freed. Also, it was not being freed if it had been the first
buffer in chain. It still needs to be freed then.
2003-03-31 21:32:30 +00:00
davidhaas
9f3511231a Fix pbuf_chain() to update tot_len of last buffer in first chain properly.
Previous code skipped it.

Made comments in pbuf_header() more general (header can be increased or
decreased).
2003-03-31 20:45:08 +00:00
likewise
6da25968e0 pbuf_header() now only moves payload pointer upwards for PBUF_ROM/REF. 2003-03-31 18:48:52 +00:00
likewise
a70f478ef1 Fixed pbuf_dechain() assertion. Removed old documentation from pbuf.h. 2003-03-31 11:39:48 +00:00
likewise
6c147709b6 Documentation changes. Added missing trailing newlines to debug messages. 2003-03-31 10:32:35 +00:00
kieranm
8636ac26cf Fixed bug in mem_realloc (check alignment of size) 2003-03-31 09:36:18 +00:00
likewise
e6cc785fff Fixed missing variable. 2003-03-31 08:34:02 +00:00
likewise
00809b49f1 Better error handling. Added debug messages for serious errors. 2003-03-31 08:02:52 +00:00
likewise
917f8ec799 Added debug messages for serious errors. 2003-03-31 08:00:01 +00:00
likewise
c50f80da92 Corrected more pbuf.c functions to comply with pbuf->ref and ->tot_len invariant. 2003-03-30 22:24:10 +00:00
likewise
2bd3d51fcf Removed the pbuf_dechain() from udp_send() matching new pbuf code. 2003-03-30 00:39:03 +00:00
davidhaas
2e0829fb5a Made lwip timeout measurements accurate by no longer returning 1 millisecond
whenever sys_arch_mbox_wait() and sys_arch_sem_wait() get a message or
semaphore immediately. Updated documentation for this change.
Unix port and Coldfire port have been updated.
2003-03-28 20:46:40 +00:00
davidhaas
c4ff244c4e Fixed minor compile issues. 2003-03-28 19:45:37 +00:00
likewise
002998cf49 Fixed bugs #2968 (ref count) and #2670 (total length).
Name of pbuf_unref() falsely suggests to undo pbuf_ref(), renamed to pbuf_take().
2003-03-28 08:49:05 +00:00
likewise
7dea6dc834 pbuf_realloc() did not update ->tot_len in a chain. Fixed dealloc of REF/ROMs. 2003-03-26 13:50:03 +00:00
likewise
fd0d94af44 Fixing bug #1903 with a new pbuf_realloc() that respects mixed-type chains. 2003-03-26 13:30:38 +00:00
likewise
ab630b2875 Strong assert checking against queueing behaviour in udp_send(). 2003-03-26 10:59:31 +00:00
likewise
f4f717b20a Fixed typo affecting debugging. 2003-03-26 00:31:55 +00:00
likewise
fa34d51b7e Added documentation and comments. 2003-03-25 12:59:42 +00:00
likewise
6621f8b88a New tail section of udp_send() that handles both queued and unqueued cases. 2003-03-25 12:58:22 +00:00
likewise
80b961df60 Lots of clearing up comments and use of new debugging features. 2003-03-24 15:15:18 +00:00
likewise
cea002a088 Forgot #if LWIP_DHCP around netif->dhcp = NULL; 2003-03-24 14:30:18 +00:00
likewise
e062b70da8 Retry with PBUF_RAM if PBUF_POOL allocation failed. 2003-03-24 13:27:12 +00:00
likewise
ce4dbcec6a Initialized netif->dhcp to NULL. 2003-03-24 13:06:16 +00:00
likewise
07058652c1 Added tracing debug messages. 2003-03-24 12:58:01 +00:00
likewise
7a92011933 Re-added pbuf_dechain() in udp_send() as it breaks current applications. 2003-03-24 12:57:00 +00:00
likewise
20667e5163 Added debug levels for some serious errors (out of memory). 2003-03-24 10:29:03 +00:00
davidhaas
96f2e162ef Fixed memory leak caused by my last pbuf_ref change. 2003-03-21 23:01:20 +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
2f7e4bd587 patch 1197 form floriZ.When debug is on and port is 0 in udp_bind ERR_USE is always returned due to missing braces.Reindent that part of code while at it 2003-03-19 16:04:54 +00:00
jani
0846206bc0 rename STATS to LWIP_STATS and make it checked by #if not #ifdef.The rest of the _STATS defines should follow 2003-03-19 12:37:46 +00:00
likewise
090b4087fc Using a negated unsigned value as func. arg. fails for Keil C166 compilers. 2003-03-16 22:39:15 +00:00
likewise
7ece19c474 pbuf_unfold_reply() lost memory if already unfold.
dhcp_stop() leaked memory if a unfold reply was still in existance.
2003-03-16 22:36:54 +00:00
likewise
dbdd0f520f Added source comments. 2003-03-13 08:50:04 +00:00
likewise
daeb21b3b9 Include "netif.h" for ntohl and friends. 2003-03-10 16:13:25 +00:00
likewise
7e36c58529 Make sure that BYTE_ORDER is actually defined. Panic with #error if not. 2003-03-10 16:12:41 +00:00
jani
8613f2a48e factor out netif_set_addr so address of netif can be changed 2003-03-07 10:55:58 +00:00
jani
0ba9a45d32 icmp messages need only PBUF_IP layer 2003-02-25 16:00:21 +00:00
jani
d390ca7056 cleaned up opt.h a bit, added more option defaults ad changed SYS_LIGHTWEIGHT_PROT to be a 0/1 define.The same for COMPAT_SOCKET 2003-02-24 10:49:05 +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
8e9aa84070 do not directly include lwipopts.h but lwip/opt.h instead 2003-02-20 16:32:22 +00:00
likewise
d1c03cbd69 Fixed some issues open after merging 'leon-dhcp'. 2003-02-20 14:35:40 +00:00
likewise
37629fc1b6 Fixed some issues open after merging 'leon-dhcp'. Added new debugging. 2003-02-20 13:13:51 +00:00
jani
cc31bb9358 make netif->init return err_t instead of void.Patch from David Le Corfec 2003-02-20 11:51:53 +00:00
likewise
d8d787545e Merged with leon-dhcp branch. Tagged as POST_leon-dhcp afterwards. 2003-02-20 08:41:59 +00:00
likewise
0a51d72098 Removed Id: fields as they give conflicts while merging to leon-dhcp branch. 2003-02-19 22:07:42 +00:00
davidhaas
e13c78820f Fixed SYS_ARCH_PROTECT macros when NO_SYS is not defined.
Added documentation for lightweight protection.

Fixed debug statement in ip.c.

Removed tabs in files I changed.
2003-02-18 21:14:16 +00:00
davidhaas
7f1becc682 Allow minimal unix target to build in cygwin (but not necessarily run).
Applied a patch from Marc Boucher which has the following changes:

1) Fixed sys_arch.txt documentation to have new return type from
   sys_thread_new.

2) Removed unnecessary casts on calling sys_timeout() in certain files.

3) Removed some unnecessary break statements after return statements.

4) Changed sys_timeout_remove() to sys_untimeout().

5) Added some forgotten #ifndef SYS_LIGHTWEIGHT_PROT to memp.c

6) Changed LWIP_DIAG and LWIP_PLATFORM_ASSERT to have do while().
2003-02-18 19:27:48 +00:00
likewise
cb6cec0404 Disabled too restrictive behaviour in _bind() and _connect(). Reimplementation pending. 2003-02-14 15:49:02 +00:00
davidhaas
de29a0818e By request: moved lightweight protection to macros. 2003-02-12 22:00:18 +00:00
davidhaas
353478180d Fix some compile issues with both coldfire and unix builds. 2003-02-12 15:09:04 +00:00
jani
f2d35751ca fix doxygen comment for netif_add 2003-02-11 09:51:22 +00:00
davidhaas
dc49999124 Fixed some build issues regarding snmp.h 2003-02-10 21:58:34 +00:00
likewise
c68ee2b2ed SNMP functions are now unconditionally called and defined empty if LWIP_SNMP == 0
This removes a lot of #if #endif cluttering the source code.
2003-02-10 13:47:47 +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
davidhaas
98fbb855fb Added lightweight protection. In coldfire this is implemented by disabling
interrupts. In unixsim this is implemented by using a mutex. Uses #define
SYS_LIGHTWEIGHT_PROT to enable. It is enabled in coldfire by default, but
disabled in unixsim.

Fixes bug 2005 if you enable SYS_LIGHTWEIGHT_PROT. So the bug is closed.
2003-02-04 22:52:22 +00:00
davidhaas
f5f31f5eaa ----------------------------------------------------------------------
Fixed the following bugs:
	2366: For coldfire port: pbuf is freed twice when no room on
	      output ring.
	2368: Coldfire port: buffer cleanup in 5272 driver causes
	      problems.
	2376: Can't have timeouts large enough

Note that timeouts are now 32 bits. This was done for select()
support. Coldfire and unix ports have been updated.
Committing in .

Modified Files:
	src/core/sys.c src/include/lwip/sys.h
----------------------------------------------------------------------
2003-02-04 14:50:45 +00:00
likewise
ea6432702f Added comments. Code cleanup. Clearer debugging in udp_input(). 2003-01-30 15:02:48 +00:00
likewise
faa9191191 Added commented about the signedness of pbuf_header() argument. 2003-01-30 12:38:03 +00:00
likewise
8560f6ef2b Fixed DHCP packet input filter. Added numerous comments. Code cleanup. 2003-01-30 10:18:40 +00:00
likewise
663b79ca72 ip_input() changed. A configured netif accepts any traffic and an unconfigured netif accepts only DHCP traffic.
Fixes bug #2004.
2003-01-28 18:24:25 +00:00
likewise
4a720425b7 Rebinding an active pcb did not check the given address/port against other bound pcb's. 2003-01-27 13:58:45 +00:00
likewise
0e4d59541a Fixed assignment of pcb->flags if pcb was NULL in udp_new(). 2003-01-27 12:35:16 +00:00
likewise
ba666295eb Nullified stray pointer for debugging purposes. 2003-01-27 11:31:30 +00:00
likewise
7dfd162a34 Added source documenting comments. 2003-01-27 08:50:28 +00:00
jani
721d237120 Fixes so that UDP connect() works.Enable generation of ICMP destination unreachable when the port is unavailable 2003-01-23 16:46:01 +00:00
jani
46c575c038 Fix udp_bind to allow rebind for same socket (yesterday's commit broke that) and introduce connection info for UDP pcbs.New function netconn_disconnect, do_disconnect for deatching UDP from a remote addres.Fix #2240 2003-01-22 16:18:05 +00:00
jani
16434f0d01 Don't allow multiple binds to the same UDP port/address pair.Closes bug #1896 2003-01-21 14:09:31 +00:00
likewise
2154ac3ecb Enhanced documentation on UDP PCB matchjng code. 2003-01-17 15:16:33 +00:00
jani
42309b5d6f put a state field in listen PCBs to since they are often treated as normal pcbs. patch #922, bug #2114 2003-01-17 14:18:55 +00:00
jani
049853362a ack duplicate segments too to prevent connection hanging when a single transmitted ACK gets lost 2003-01-14 09:38:10 +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
likewise
1ad5537c9b Fixed some typo's in the comments. 2003-01-13 13:22:09 +00:00
jani
4eebbdea0d print correct pcb->rtime value in debug statament.it does not directly depend on tcp_ticks 2003-01-10 15:41:02 +00:00
jani
4a2d03a517 seqno is u32_t so use %lu instead of %ld when printing it 2003-01-10 15:36:47 +00:00
jani
5212afdd8f remove already commented out function : memp_realloc 2003-01-10 09:42:27 +00:00
jani
e196108931 fix debug messages in tcp_slowtmr to reflect the correct name of this function 2003-01-10 09:41:24 +00:00
likewise
5e13d495f0 Merged patch #927 which fixes "needs modifiable lvalue" compile error in TCP_REG. 2003-01-08 15:37:20 +00:00
likewise
a528a2323e More debugging in checksum routines. 2003-01-08 15:36:25 +00:00
likewise
c786f238ef Output snd_buf size in debug message in tcp_enqueue(). 2003-01-08 14:35:02 +00:00
adamdunkels
d04f7aa4bc Added comments to the tcp_enqueue() function. 2003-01-08 14:11:24 +00:00
likewise
cc4df7100d Updated lwIP module copyright years to include 2003. Committers must check theirs. 2003-01-08 10:09:39 +00:00
jani
f946abd86b Simplify pbuf allocation for TCP packets in two places by replacing pbuf_alloc + pbuf_header
with an equivalent pbuf_alloc.When we know we'll have to adjust the payload for the TCP header
just alloc it like that from the start.
2002-12-19 09:50:53 +00:00
jani
156d2c866f sizeof(u8_t) is 1 at temperatures > 0 K 2002-12-19 09:04:58 +00:00
jani
ef68392388 renamed (hopefully everywhere) stats to lwip_stats.closes bug #1901 2002-12-18 12:49:01 +00:00
kieranm
9eebc135ce Removed dummy variable from "struct mem" and handled all MEM_ALIGNMENT cases
Fixes bug #1912
2002-12-18 12:01:24 +00:00
kieranm
771fb0f2cd Removed "static" from declaration of netif in ip_forward and ip_output
(Bug #1909)
2002-12-18 11:53:26 +00:00
jani
4c1069c38b use memset and memcpy instead of bzero and bcopy throughout lwIP core code.Archs need to update.Bug #1899 2002-12-18 10:40:01 +00:00
jani
f037bfad1e check for NO_SYS consistently using #if.Closes bug #1910 2002-12-18 10:03:33 +00:00
jani
c0a8ef6f6f Use C style comments.In debug stataments cast various struct pointers to void* to
avoid printf warnings.misc warnings in etharp.
2002-12-17 09:41:16 +00:00
likewise
5472d94b73 Added comment to ip_input() packet filter. 2002-12-11 00:21:12 +00:00
kieranm
96610c9c20 Fixed compiler warning - DEBUGF statement with too many arguments 2002-12-05 09:38:25 +00:00
kieranm
6972e81ac0 Zero pcb->acked if ack does not acknowledge new data
- prevents the sent function being called multiple times when no new data has been acknowledged
2002-12-03 10:45:47 +00:00
likewise
ea3b0fc477 Fixed missing end-of-comment. 2002-12-02 13:11:04 +00:00
likewise
99dfbfeef0 Clarified debug messages where the timers are set. 2002-12-02 12:23:37 +00:00
likewise
dcce504ade First attempt to stylize and document DHCP sources. 2002-12-01 19:49:45 +00:00
likewise
4619bbc3ea Changed dhcp_init() to NULL the client_list (on re-inits). 2002-11-25 22:36:25 +00:00
likewise
c73606309f Fixed argument type compiler warnings of the bcopy() call using type casting. 2002-11-24 22:27:10 +00:00
jani
0442c1e228 new file ip_frag for IP SAR.reassembly code moved from ip.c and fixed 2002-11-22 15:46:50 +00:00
jani
8210edfeea fix pbuf_alloc for layer PBUF_LINK 2002-11-22 08:32:31 +00:00
likewise
c9bd32d12b Added SNMP call-outs for monitoring of default SNMP status items for TCP/IP. 2002-11-21 10:32:19 +00:00
likewise
dfe1ab7438 Added debug messages for corner cases of TCP states. 2002-11-21 10:29:51 +00:00
likewise
1b798ed6d3 Added PBUF_REF (payload external, copied on queueing). 2002-11-18 09:51:48 +00:00
jani
f2fbcdf00a typo fixes.The unterminated comment already got two bugreports so it was time. 2002-11-18 07:36:29 +00:00
likewise
1dd7e81df7 DHCP cleanup redux (patch #654). 2002-11-15 12:44:50 +00:00
adamdunkels
43a06e8e37 The code that increased the retransmission time was commented out for some reason. This has been fixed. Also removed some old, out-commented, code. 2002-11-15 09:40:05 +00:00
jani
131eed412a Fix function names in DEBUGF stataments.Remove reference to "reclaimed" field in stat. 2002-11-14 12:20:37 +00:00
kieranm
4b9e035a9f Initialize err in tcp_slowtmr to prevent compiler warning. 2002-11-13 21:54:22 +00:00
adamdunkels
1f1e6eb5a1 Fixed a few C style issues to make it compatible with the rest of lwIP. 2002-11-13 08:11:52 +00:00
likewise
10bf9ef2ef ip_output() no longer frees pbuf in case no route could be found. 2002-11-11 14:49:17 +00:00
likewise
bca526b634 Workaround for compile error on TCP_REG. This workaround is disabled by default. 2002-11-11 14:47:26 +00:00
likewise
9b76f5bf53 Fixes all issues that showed up after the first commit. 2002-11-11 14:40:03 +00:00
likewise
3e62b75529 memp_alloc() now zeroes allocated memory (for robustness). Callers must NOT assume this. 2002-11-11 14:31:00 +00:00
likewise
ad55cb6733 Added pbuf_ref_chain() which increases ref count of all pbufs in a chain. 2002-11-11 11:22:49 +00:00
likewise
8077dd838c Added DHCP client by Leon Woestenberg 2002-11-08 15:57:23 +00:00
likewise
72e3d22271 To prevent compiler warnings, added UL to some bit mask constants. 2002-11-06 10:00:32 +00:00
kieranm
8b5fcad039 Added check on entire sequence number of received packet being less than the rcv_nxt variable.
(see http://www.sics.se/mailing-lists/lwip.html/msg01409.html)
2002-10-24 13:34:36 +00:00
adamdunkels
aa69784495 Replaced a += (combined addition and assignment) with an explicit assignment and addition to avoid compiler warnings. 2002-10-24 13:20:42 +00:00
kieranm
4933bfaaa0 Fixed bug in duplicate ack handling
(see http://www.sics.se/mailing-lists/lwip.html/msg01460.html)
Solution adds check on right window edge when duplicate ack received, if it is different it is not a duplicate.
2002-10-24 13:14:52 +00:00
kieranm
8fe9e007c9 Fixed congestion window bug where the pcb->cwnd variable overflowed when increased. 2002-10-24 10:57:44 +00:00
adamdunkels
814f8c505e Updated TCP out-of-sequence handling to use recv_data variable instead of old pcb->recv_data. 2002-10-23 19:58:16 +00:00
adamdunkels
28832ba9c2 Added #if LWIP_UDP around udp_init() body, fixed bug where un-connected UDP PCBs did not always receive correct datagram 2002-10-23 19:44:32 +00:00
likewise
bcb2600107 New file structure towards SLIP/PPP. Renamed tcp_*.c for 8.3 sake.
See lwip@sics.se Mon, 21 Oct 2002 magnus.ivarsson
2002-10-22 12:32:58 +00:00
likewise
fecc7424e4 Added redundant brackets in an if statement to keep a flaky compiler happy. 2002-10-20 15:20:30 +00:00
likewise
9ede36a386 Allocate struct tcp_seg *prev, *cseg only if TCP_QUEUE_OOSEQ is defined. 2002-10-20 15:19:20 +00:00
likewise
f06e955072 Initial revision 2002-10-19 12:59:30 +00:00