Commit Graph

1466 Commits

Author SHA1 Message Date
Simon Goldschmidt
751deac9d1 Another fix to window scaling: support queueing more than 64 KByte in ooseq data 2014-02-12 21:34:19 +01:00
Sylvain Rochet
406da499ff Merge branch 'master' into ppp-new 2014-02-09 16:40:43 +01:00
Simon Goldschmidt
6272b5c58c Fixed misleading comment on sys_untimeout() 2014-02-07 14:03:53 +01:00
Simon Goldschmidt
8c9b99458d Fixed forgotten brackets in last commit 2014-02-07 12:11:36 +01:00
Simon Goldschmidt
3273c68b63 Added comments to clarify the LWIP_TCP_TIMESTAMPS option. 2014-02-07 11:46:23 +01:00
Simon Goldschmidt
a44e2190d6 TCP window scaling: change tcp_pcb::acked to u32_t when window scaling is enabled to prevent an overflow when more than 64 Kbytes are ACKed 2014-02-07 11:32:02 +01:00
Simon Goldschmidt
2dab478c3f Merge branch 'master' of git.sv.gnu.org:/srv/git/lwip
Conflicts:
	src/core/tcp_out.c
	src/include/ipv4/lwip/ip4_addr.h
2014-02-07 09:40:10 +01:00
Simon Goldschmidt
d2a89b424b patch #6537/#7858: TCP window scaling support (OOS queueing still needs special handling) 2014-02-06 22:34:06 +01:00
Sylvain Rochet
9502cd7047 Merge branch 'master' into ppp-new 2014-01-19 14:32:14 +01:00
Sylvain Rochet
cd02450095 recently applied patches changed LF-terminated filed to mostly LF and CR+LF only where the patches changed lines 2014-01-19 14:28:17 +01:00
Sylvain Rochet
03a3412e62 Merge branch 'master' into ppp-new 2014-01-19 03:41:01 +01:00
Simon Goldschmidt
a70567e74f patch #8009 by chrysn: stats_display_igmp used by ml6d 2014-01-18 22:16:09 +01:00
Simon Goldschmidt
32b1a9fc8a patch #8237 by Brian Fahs: tcp_rexmit_rto fails to update pcb->unsent_oversize when necessary 2014-01-18 21:40:17 +01:00
Simon Goldschmidt
018719d9d3 patch #8027: Completed HW checksuming for IPv4 and IPv6 ICMP's 2014-01-17 22:32:36 +01:00
Simon Goldschmidt
5070cc07be Fixed LWIP_IPV6==0 2014-01-17 21:57:40 +01:00
Simon Goldschmidt
1e65eb4936 Added IPv6 loopback address to loopback-netif, fixed last commit 2014-01-17 21:55:46 +01:00
Jay Logue
13e40f754c Enable support for IPv6 loopback
Packets are sent through the loopback path when they are addressed to any
of the valid local IPv6 addresses.
2014-01-17 21:32:24 +01:00
Sylvain Rochet
87cfd930e4 Merge branch 'master' into ppp-new 2014-01-17 00:48:55 +01:00
Stathis Voukelatos
039737ffc2 Fixed netif_poll() operation when LWIP_LOOPBACK_MAX_PBUFS > 0.
Using the pbuf_clen() function to calculate the number of pbufs
for the first packet in the queue is not correct here, as pbuf_clen()
will return the total number of pbufs in the loopback I/F queue.
2014-01-16 21:36:49 +01:00
Freddie Chopin
4e1320d480 SNMP: mib-2.system.sysDescr is read-only, so add const qualifiers to functions and pointers
Signed-off-by: Freddie Chopin <freddie.chopin@gmail.com>
2014-01-14 21:51:39 +01:00
Freddie Chopin
e6202cfa97 SNMP: source of ocstrncpy() and objectidncpy() may be const
Signed-off-by: Freddie Chopin <freddie.chopin@gmail.com>
2014-01-14 21:51:29 +01:00
Simon Goldschmidt
a15b28a24e SNMP: fixed typo: snmp_set_sysdesr -> snmp_set_sysdescr 2014-01-14 21:49:33 +01:00
Simon Goldschmidt
9975dbeded Fixed chrysn's patch: it only works for NO_SYS :-( 2014-01-14 21:48:58 +01:00
chrysn
252abbeb8d make timeouts usable reliably from outside of the timeout routine
although timeouts are relative to timeouts_last_time (transitively by
addition to the time values of their predecessors, if there are any),
sys_timeout does not compensate for that; as a result, timeouts fire too
early unless invoked from within a timeout handler (when
timeouts_last_time == now).
2014-01-14 21:25:03 +01:00
Sylvain Rochet
bf37afd7c7 Merge branch 'master' into ppp-new 2014-01-12 15:05:37 +01:00
Simon Goldschmidt
f311045320 Added an assert that should trigger bug #41009 (IPv6 reassembly broken on 64-bit platforms) 2014-01-10 22:08:01 +01:00
Simon Goldschmidt
381a7b110a fixed bug #41041 Potential use-after-free in IPv6 reassembly 2014-01-10 21:47:42 +01:00
Simon Goldschmidt
75f2c56558 bug #41188 Alignment error in memp_init() when MEMP_SEPARATE_POOLS==1 2014-01-10 21:26:28 +01:00
Simon Goldschmidt
91333c5d2f fixed bug #39898 tcp_fasttmr() possible lock due to infinte queue process loop 2014-01-10 21:21:54 +01:00
Sylvain Rochet
ee2ba4e52f Merge branch 'master' into ppp-new 2013-07-20 21:04:49 +02:00
Simon Goldschmidt
2fb5a71efd patch #8030: fixed spelling of "received" 2013-06-19 22:23:05 +02:00
Sylvain Rochet
434daf87c2 Merge branch 'master' into ppp-new 2013-04-26 19:54:01 +02:00
Sylvain Rochet
c681e5e082 reverted dhcp.c from DOS (CRLF) to UNIX (LF) format 2013-04-26 19:52:42 +02:00
Sylvain Rochet
3fe5a99dab Merge branch 'master' into ppp-new 2013-04-25 00:36:12 +02:00
Simon Goldschmidt
252126cf76 fixed possible division by zero 2013-04-24 22:20:12 +02:00
Simon Goldschmidt
8609d1e790 fixed bug #38526 Coverity: Recursive Header Inclusion in ip6.h 2013-04-24 21:58:57 +02:00
Simon Goldschmidt
9809f1ff66 Fixed bug #38586 2013-04-24 21:38:01 +02:00
Simon Goldschmidt
796098e4c9 fixed bug #38701 (wrong comment on tcp_pcb::snd_queuelen 2013-04-24 21:28:56 +02:00
Sylvain Rochet
69b15c889d Merge branch 'master' into ppp-new 2013-01-20 02:57:57 +01:00
Simon Goldschmidt
ff3bf6d7f5 fixed bug #37665 ip_canforward operates on address in wrong byte order 2013-01-15 21:10:32 +01:00
Simon Goldschmidt
86059bd5dd fixed more unused variables 2013-01-14 21:06:13 +01:00
Simon Goldschmidt
9927d991ef Fixed bug #37893 Unused variables in tcp_out (and in udp.c/.h) 2013-01-14 20:46:41 +01:00
Simon Goldschmidt
6849b7d555 Added additional sanity check that all headers (without IP- or TCP options) fit into the first pbuf. 2013-01-14 18:05:18 +01:00
Simon Goldschmidt
1efd1ee6ac fixed bug #37705 Possible memory corruption in DNS query 2013-01-14 18:04:04 +01:00
Simon Goldschmidt
d12600fba0 fixed bug #37705 Possible memory corruption in DNS query 2013-01-14 18:03:23 +01:00
Simon Goldschmidt
769b2a3e30 fixed bug #38066 Raw pcbs can alter packet without eating it: added assertion to check that p->payload is unchanged 2013-01-11 21:59:26 +01:00
Simon Goldschmidt
d237ec7e78 Changed C++ comments to C style 2013-01-11 21:27:45 +01:00
Sylvain Rochet
6bd0bd2ed1 Merge branch 'master' into ppp-new 2012-12-23 22:56:51 +01:00
Ivan Delamer
3bb29bf63a Fix bug #37959: ip6_debug_print prints plen, nexth, hoplim in wrong
byte order
2012-12-19 16:38:44 -07:00
Sylvain Rochet
78d52ad2de Merge branch 'master' into ppp-new 2012-12-19 14:05:59 +01:00
"Grant Erickson"
4fe648415f Fixed typo in debug formatting in ip6.c 2012-12-14 16:08:24 -07:00
Sylvain Rochet
7fb874ad28 Merge branch 'master' into ppp-new 2012-09-27 21:32:27 +02:00
goldsimon
99aea7eb6f Added brackets, completed CHANGELOG 2012-09-26 21:30:01 +02:00
Henrik Persson
b4ac36337f Fix corner case with dhcp timeouts
If t1 >= t2 timeout then only t2 timer should be scheduled. This can happen
when a sub 1 minute lease is received.
2012-09-26 21:25:04 +02:00
goldsimon
7072bc3203 Added brackets, completed CHANGELOG 2012-09-26 21:21:26 +02:00
Henrik Persson
7e9f000d0b Segfault in dhcp_parse_reply if no end marker
If no endmarker is present in a dhcp reply a null pointer is potentially
dereferenced.

Add fix and test case as proof of concept.
2012-09-19 22:11:56 +02:00
Sylvain Rochet
4928166593 Merge branch 'master' into ppp-new 2012-08-23 20:51:53 +02:00
goldsimon
150b4fb4f6 fixed bug #37166: memp_sanity check loops itself 2012-08-22 21:59:02 +02:00
Sylvain Rochet
1ddebcc862 Moved PPP headers into include/netif/ppp/, fixing bug #37040. 2012-08-18 22:40:19 +02:00
Sylvain Rochet
519f81771a Merge remote-tracking branch 'origin/master' into ppp-new 2012-08-17 23:11:47 +02:00
Ivan Delamer
c762c06b17 Fixed typo in previous commit.
Change-Id: I97f85f4593509911829cfbbb6e309eecedd5465b
2012-08-17 11:24:18 -06:00
Ivan Delamer
8bab543531 Add a "NULL" output function for ipv6 by default, to avoid NULL
dereferencing in case of non-IPv6-enabled netifs (e.g. PPP).

Change-Id: I45f08ca89bfa0b8d61962f7052b11cc81a5e3cd1
2012-08-17 10:56:14 -06:00
goldsimon
bab8c82a35 fixed bug #36645: Calling dhcp_release before dhcp_start dereferences NULL 2012-08-13 21:50:15 +02:00
goldsimon
b82bca7c99 fixed bug #36840 snmp_send_trap() NULL de-reference if traps configured but no interfaces available 2012-08-13 21:38:30 +02:00
goldsimon
556a2126b5 Fixed bug #36899 DNS TTL 0 is cached for a long time 2012-08-13 21:32:44 +02:00
goldsimon
847845027f Merge branch 'master' of git.sv.gnu.org:/srv/git/lwip 2012-08-13 20:57:55 +02:00
goldsimon
c69914367d Sanity-check the size of netif->hwaddr 2012-08-13 20:57:19 +02:00
Sylvain Rochet
48d364e269 Merge remote-tracking branch 'origin/master' into ppp-new 2012-07-24 23:17:15 +02:00
James Smith
97b8abf16c Fix bug #36857: tcp_listen_dual_with_backlog() only works with ANY
address

Change-Id: I092a4c9978d88040214fc44a4c4b353be618d76c
2012-07-24 10:34:09 -06:00
Sylvain Rochet
f534e80c71 added L2TPv2 (PPP over L2TP, a.k.a. UDP tunnels) support
Supported:
 - L2TPv2 (PPP over L2TP, a.k.a. UDP tunnels)
 - LAC

 Not supported:
 - LNS (require PPP server support)
 - L2TPv3 ethernet pseudowires
 - L2TPv3 VLAN pseudowire
 - L2TPv3 PPP pseudowires
 - L2TPv3 IP encapsulation
 - L2TPv3 IP pseudowire
 - L2TP tunnel switching - http://tools.ietf.org/html/draft-ietf-l2tpext-tunnel-switching-08
 - Multiple tunnels per UDP socket, as well as multiple sessions per tunnel
 - Hidden AVPs
2012-07-09 23:25:32 +02:00
Sylvain Rochet
f31b905847 initialize PPP in the lwip_init() function 2012-07-07 17:33:34 +02:00
goldsimon
b56a1501d2 fixed bug #36412: memp.c does not compile when MEMP_OVERFLOW_CHECK > zero and MEMP_SEPARATE_POOLS == 1 2012-05-11 22:56:53 +02:00
goldsimon
bc308c21fc fixed bug: #36380 unsent_oversize mismatch in 1.4.1RC1 (this was a debug-check issue only) 2012-05-08 07:42:32 +02:00
Ivan Delamer
289566afe8 In ip6_input(), do not accept link-local packets on netifs other than
inp.

Change-Id: I7f3c779e69292bc078890e0acdc37112559644ce
2012-05-04 18:25:22 -06:00
Ivan Delamer
944adc56ee Fixed #define that was commited by mistake.
Change-Id: Ic44560284e932b2d7c503155085160647ac82bb8
2012-05-04 18:19:40 -06:00
Ivan Delamer
6e81f722ad In ip6_input(), accept solicited node packets that match the receiving
netif addresses, when multicast is disabled.

Change-Id: I3f59258ee605a820f0a525b696b1dede0d53948f
2012-05-04 18:11:47 -06:00
Ivan Delamer
bfa28f4c30 fixes bug #36389: Use IPv6 Src Address of Echo Response as Destination
Address in Echo Response
2012-05-04 17:43:54 -06:00
goldsimon
1704d21356 dhcp: check array bounds before accessing it (bug #36170) 2012-05-03 20:21:50 +02:00
goldsimon
1dff9aea62 fixed the fix for bug #35945 (SYN packet should provide the recv MSS not the send MSS) if TCP_CALCULATE_EFF_SEND_MSS==0 2012-03-28 11:06:52 +02:00
goldsimon
a558c01589 fixed bug #35945: SYN packet should provide the recv MSS not the send MSS 2012-03-27 20:18:23 +02:00
goldsimon
7043983acc udp_input: fixed unreachable code warning for CHECKSUM_CHECK_UDP==0 2012-03-25 17:20:22 +02:00
goldsimon
dd245c63d7 tcp_abort/tcp_abandon: don't send RST if pcb->state is CLOSED 2012-03-25 17:19:46 +02:00
goldsimon
c622985fda Better fix for bug #35927 (missing refragmentaion in ip_forward) when IP_FRAG is disabled. 2012-03-25 15:12:42 +02:00
goldsimon
d95bcab053 fixed bug #35927: missing refragmentaion in ip_forward 2012-03-22 19:35:04 +01:00
Ivan Delamer
2b4c10e705 Support single-packet queueing in ND6 (similar to ARP), when
!LWIP_ND6_QUEUEING.
2012-03-22 11:14:49 -06:00
Ivan Delamer
ac4c802089 Disable leftover ND6 queueing code when !LWIP_ND6_QUEUING. 2012-03-22 10:25:50 -06:00
Ivan Delamer
773dcae2f9 Missing declarations in supporting IP_HDRINCL. 2012-03-02 09:35:42 -07:00
Ivan Delamer
22e7b674ed Check arguments in nd6, and some other minor fixes nearby. 2012-03-02 09:27:14 -07:00
Ivan Delamer
8c95422204 Early exit when checking if ip6 reassembled packet is valid. 2012-03-02 09:18:54 -07:00
Ivan Delamer
34531a8160 Check that pbuf_header succeeds in IPv6 reassembly. 2012-03-02 09:16:33 -07:00
Ivan Delamer
5c199483cd Support IP_HDRINCL in ip6_output() and ip6_output_hinted(),
previously only supported in ip6_output_if().
2012-03-02 09:06:57 -07:00
Ivan Delamer
c52189557e Fixed error in calculating some IPv6 option header lengths. 2012-03-02 08:59:34 -07:00
Ivan Delamer
bcabe63971 Set ip_data.current_netif earlier to allow ICMPv6 packets in ip6_fwd.
Then set to "accepted" netif, not inp.
2012-03-02 08:53:51 -07:00
goldsimon
193ccaa3b4 IGMP stats: added missing tab (by Gisle Vanem) 2012-03-01 19:21:17 +01:00
goldsimon
d0d650aa67 Patch by Stéphane Lesage:
fixed bug #35536 SNMP: error too big response is malformed
2012-02-16 08:01:54 +01:00
goldsimon
6d5ec9c998 fixed bug #35537: MEMP_NUM_* sanity checks should be disabled with MEMP_MEM_MALLOC==1 2012-02-16 07:33:38 +01:00
goldsimon
fe08467e45 Removed unused variable in ip_debug_print() 2012-02-14 21:29:14 +01:00
goldsimon
26e03b81fe Fixed unused variable warning 2012-02-14 19:41:46 +01:00
goldsimon
5e87126c38 Multiple compilation fixes:
- use C style comments, not C++ style;
- don't use #if with undefined parameter;
2012-02-13 21:38:28 +01:00
goldsimon
7d0dab9d7d partly fixed bug #25882: TCP hangs on MSS > pcb->snd_wnd (by not creating segments bigger than half the window) 2012-02-12 14:14:19 +01:00
goldsimon
9a95c2ff08 fixed bug #35435: No pcb state check before adding it to time-wait queue while closing 2012-02-11 18:15:17 +01:00
Ivan Delamer
1d6347c9b0 Allow unicast NA messages without LLA option, in accordance to RFC2461
section 4.4, and as suggested by Phillip Toelke.

Change-Id: Ic9d9a6ad82ec201d25b9fc024936cfb1b41f1a7a
2012-01-27 14:54:39 -07:00
goldsimon
13075460ea fixed bug #35305: pcb may be freed too early on shutdown(WR) 2012-01-22 11:18:36 +01:00
goldsimon
4c3dfb92b7 fixed bug #34636: FIN_WAIT_2 - Incorrect shutdown of TCP pcb: don't let PCBs time out from FIN_WAIT_2 if the RX side wasn't close (by either calling tcp_close or tcp_shutdown(RDWR)) 2012-01-21 18:05:15 +01:00
goldsimon
fc2efaeb8c Fixed my last chagne to pbuf_copy 2012-01-21 16:57:53 +01:00
goldsimon
b15e60243b - fixed bug #35151: DHCP asserts on incoming option lengths;
- fixed wrong CHANGELOG of the last commit
2012-01-20 21:36:52 +01:00
goldsimon
f2de3215c3 pbuf_copy(): moved the check for "p_to != NULL" to a better place. 2012-01-20 21:21:10 +01:00
goldsimon
efbad07643 fixed bug #35291: NULL pointer in pbuf_copy 2012-01-20 21:19:26 +01:00
goldsimon
69d61eda01 Added option CHECKSUM_GEN_ICMP 2012-01-16 09:40:15 +01:00
goldsimon
e9255d3714 Merge branch 'master' of git.sv.gnu.org:/srv/git/lwip 2012-01-12 15:40:41 +01:00
goldsimon
c8647c0396 implemented API functions to access so_options of IP pcbs (UDP, TCP, RAW) (fixes bug #35061) 2011-12-17 22:12:01 +01:00
goldsimon
5048a30fc7 Another fix for bug #32417 (debug assert that fires) 2011-12-06 21:21:44 +01:00
Ivan Delamer
ce6fb83ef4 bug #34846: time-exceeded was sometimes not sent to original fragment
source, but to the sender of a packet fragment that triggered a buffer
purge.

Change-Id: I4bf20747bd900150491852649918a85cb7bf2aad
2011-11-29 12:49:43 -07:00
goldsimon
dd8729063c fixed bug #31177: tcp timers can corrupt tcp_active_pcbs in some cases 2011-11-25 18:36:52 +01:00
goldsimon
3a11a8a01d Merge branch 'master' of git.sv.gnu.org:/srv/git/lwip 2011-11-24 07:47:40 +01:00
goldsimon
988815579a fixed bug #34884: sys_msleep() body needs to be surrounded with '#ifndef sys_msleep' 2011-11-23 20:58:19 +01:00
goldsimon
d1fa13ed52 fix compilation of ip_canforward on 8-/16-bit platforms (where constants are 16-bit and thus cannot be left-shifted by 24) 2011-11-23 09:09:22 +01:00
goldsimon
08b497faea fixed bug #34684: Clear the arp table cache when netif is brought down 2011-11-22 21:44:28 +01:00
goldsimon
96d332e234 Fix icmp6_send_response: cannot assign (packed) ip6_addr_p_t* to ip6_addr_t* -> need to copy the packed address to an aligned address first 2011-11-22 21:41:20 +01:00
Ivan Delamer
440f31a4d3 Add IPv6 timeouts to check for MEMP_NUM_SYS_TIMEOUT).
Change-Id: Ic6a9493cde41652391b34a47e6003b9036f760de
2011-11-17 14:24:16 -07:00
Ivan Delamer
cb91705e03 Generate ICMPv6 responses from a context other than input callback
(e.g. timers in IPv6 reassembly). see bug #34846.

Change-Id: I6b4d27c819291d8371c43288310d57c3f2c1c65f
2011-11-17 10:55:45 -07:00
Ivan Delamer
21333d0f18 handle NULL when parsing IPv6 address (check for formatting)
Change-Id: I42e1288689946c295e0bd1490a5eb4d8befb5877
2011-10-28 13:54:16 -06:00
goldsimon
edcc859b58 fixed bug #34638: Dead code in tcp_receive - pcb->dupacks 2011-10-28 13:09:04 +02:00
Ivan Delamer
2ce17a724a Fix bug #34526: nd6_queue_packet() frees too much if out-of-memory
Change-Id: Ib7ac0cb1b5a5389dd5449a908485493bd085ba9d
2011-10-26 14:31:48 -06:00
goldsimon
0fb07ba328 - moved processing of refused_data to an own function (used from tcp_fasttmr and tcp_input);
- improved readability of tcp_slowtmr by using defines to access keepalive variables
2011-10-23 18:10:46 +02:00
goldsimon
c5203ab5ea fixed bug #34429: possible memory corruption with LWIP_ALLOW_MEM_FREE_FROM_OTHER_CONTEXT set to 1 2011-10-23 17:31:03 +02:00
goldsimon
43ac5ad70d removed the need to disable ARP_QUEUEING when LWIP_ARP is disabled an TCP_QUEUE_OOSEQ when LWIP_TCP is disabled 2011-10-21 13:24:33 +02:00
Simon Goldschmidt
1f396946e5 fixed bug #34587: TCP_BUILD_MSS_OPTION doesn't consider netif->mtu, causes slow network 2011-10-18 20:11:39 +02:00
Simon Goldschmidt
0333e81616 fixed bug #34517 (persist timer is started although no zero window is received) by starting the persist timer when a zero window is received, not when we have more data queued for sending than fits into the window 2011-10-13 21:18:16 +02:00
Simon Goldschmidt
cf1be4ae2d fixed bug #34541: LWIP_U32_DIFF is unnecessarily complex: removed that define 2011-10-13 19:29:48 +02:00
Simon Goldschmidt
c74d881d3d fixed bug #34534: Error in sending fragmented IP if MEM_ALIGNMENT > 4 2011-10-12 18:17:07 +02:00
Simon Goldschmidt
b4c4fae3f5 slightly rearranged freeing an acked segment to prevent keeping the reference too long 2011-10-11 21:41:58 +02:00
Simon Goldschmidt
f29bdd21a7 fixed bug #34426: tcp_zero_window_probe() transmits incorrect byte value when pcb->unacked != NULL 2011-10-09 20:11:33 +02:00
Simon Goldschmidt
9d31401d47 fixed bug #34447 LWIP_IP_ACCEPT_UDP_PORT(dst_port) wrong 2011-10-09 14:30:49 +02:00
Simon Goldschmidt
5c68bbe16f Tried to fix bug #32417 ("TCP_OVERSIZE seems to have problems with (fast-)retransmission"): Reset pcb->unsent_oversize in 2 more places... 2011-09-29 21:12:34 +02:00
Simon Goldschmidt
07c610e068 Implemented limiting data on ooseq queue (task #9989) (define TCP_OOSEQ_MAX_BYTES / TCP_OOSEQ_MAX_PBUFS in lwipopts.h), added unit test for this new feature 2011-09-27 22:42:46 +02:00
Simon Goldschmidt
998f109fc8 fixed bug #28288: Data after FIN in oos queue 2011-09-27 21:08:49 +02:00
goldsimon
cfb70bccc1 bug #34406 dhcp_option_hostname() can overflow the pbuf 2011-09-27 07:49:04 +02:00
Simon Goldschmidt
98274d2145 Reverted invalid fix for invalid bug #34360 done yesterday... 2011-09-23 19:26:29 +02:00
Simon Goldschmidt
1d125f55ba Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/lwip 2011-09-23 19:16:01 +02:00
Simon Goldschmidt
918470affc fixed bug #33871: rejecting TCP_EVENT_RECV() for the last packet including FIN can lose data 2011-09-23 19:14:17 +02:00
Simon Goldschmidt
797f26e45b fixed bug #34360 tcp_shutdown: RST on unacked is not send when shutting down both rx AND tx 2011-09-22 21:38:56 +02:00
Simon Goldschmidt
0aea1b608a Corrected fix for bug #34072 (UDP broadcast is received from wrong UDP pcb if udp port matches): pcbs bound to IPADDR_ANY did not receive broadcasts any more (bug #34294) 2011-09-22 06:24:58 +02:00
Simon Goldschmidt
b9a2feff5e Converted runtime-sanity-checks into compile-time checks that can be disabled (since runtime checks can often not be seen on embedded targets) 2011-09-21 18:35:29 +02:00
goldsimon
f13615d97a fixed bug #34337 (possible NULL pointer in sys_check_timeouts) 2011-09-20 07:21:19 +02:00
Simon Goldschmidt
6058389974 nd6: use a static buffer to process RA options instead of using mem_malloc() 2011-09-11 13:44:08 +02:00
Simon Goldschmidt
dccad08508 use pcb->mss instead of TCP_MSS for preallocate mss-sized pbufs (bug #34019) 2011-09-11 13:13:26 +02:00
Simon Goldschmidt
112158b056 Added a config option to randomize initial local TCP/UDP ports (so that different port ranges are used after a reboot; bug #33818; this one added tcp_init/udp_init functions again);
fixed a possible endless loop in tcp_new_port() if the number of active PCBs exceeds the number of available ports;
2011-09-11 12:44:01 +02:00
Simon Goldschmidt
4849eb4c54 fixed bug #34072: UDP broadcast is received from wrong UDP pcb if udp port matches 2011-09-09 22:25:59 +02:00
Simon Goldschmidt
5e8ee7e006 Make LWIP_RAND optional (useful for small targets) 2011-09-03 22:27:30 +02:00
Simon Goldschmidt
e27d34d118 DHCP uses LWIP_RAND() for xid's (bug #30302) 2011-09-03 22:27:06 +02:00
Simon Goldschmidt
a0bf8d5740 fixed bug #33952 PUSH flag in incoming packet is lost when packet is aggregated and sent to application 2011-09-03 21:57:26 +02:00
Simon Goldschmidt
b9c17dd1f0 fixed bug #34111 RST for ACK to listening pcb has wrong seqno 2011-09-01 21:00:11 +02:00
Simon Goldschmidt
0a5755145c added netif remove callback (bug #32397) 2011-08-24 22:00:10 +02:00
Simon Goldschmidt
cd5d1ceadf fixed bug #34112 Odd check in pbuf_alloced_custom (typo) 2011-08-24 20:18:47 +02:00
Simon Goldschmidt
c55f6b40ec fixed bug #34122 dhcp: hostname can overflow 2011-08-24 20:12:23 +02:00
Simon Goldschmidt
bf4ec9be22 fixed bug #34121 netif_add/netif_set_ipaddr fail on NULL ipaddr 2011-08-24 19:52:06 +02:00
Simon Goldschmidt
ed0626afeb fixed bug #33962 TF_FIN not always set after FIN is sent. (This merely prevents nagle from not transmitting fast after closing.) 2011-08-22 18:52:27 +02:00
Ivan Delamer
b3f5c8f6b2 Use target address as source address in IPv6 neighbour advertisement
messages.

Change-Id: I06d28eb2903c539de0b51bd7420a81ebf4f28963
2011-08-04 16:36:44 -06:00
Ivan Delamer
4507083148 Fixed bug in serialization of IPv6 addresses.
Change-Id: Ib63540123803317ec25f7cbf580c5159e4100222
2011-08-04 14:18:33 -06:00
Simon Goldschmidt
f4c0018d7a Fixed complier error for CHECKSUM_CHECK_TCP==0 2011-07-28 21:59:28 +02:00
Simon Goldschmidt
41c785d77a IPv4: splitted IPv4 header fields version/len and tos, made macros depend on BYTE_ORDER to prevent unnecessary calls to htons() 2011-07-26 20:55:32 +02:00
Simon Goldschmidt
a745528b40 Prevent non-static function that is not declared in header file 2011-07-26 20:21:33 +02:00
Simon Goldschmidt
7465be91d0 Fixed some C compiler warnings 2011-07-24 17:19:17 +02:00
Simon Goldschmidt
6323e09a0a init.c: changed some checks from runtime to compiletime (had to adapt some defines in ip.h for that) 2011-07-22 21:59:16 +02:00
Simon Goldschmidt
cc3b4dff20 freeing ooseq pbufs when the pbuf pool is empty implemented for NO_SYS==1: when not using sys_check_timeouts(), call PBUF_CHECK_FREE_OOSEQ() at regular intervals from main level. 2011-07-22 21:05:10 +02:00
Simon Goldschmidt
78ac382fdf bug #33634 ip_forward() have a faulty behaviour: Added pbuf flags to mark incoming packets as link-layer broadcast/multicast. Also added code to allow ip_forward() to forward non-broadcast packets to the input netif (set IP_FORWARD_ALLOW_TX_ON_RX_NETIF==1). 2011-07-21 21:47:25 +02:00
Simon Goldschmidt
fc280c7cd6 Fixed bug #33804 LWIP_IPV6_MLD #define missing from mld6.c 2011-07-20 06:56:20 +02:00
Simon Goldschmidt
435ac2a650 Fixed bug #33801 Corruption of nd6 tables 2011-07-19 21:56:19 +02:00
goldsimon
c2fd905e32 No need to pass 'acc' as u16_t since the _base functions are internal (we save one AND op when passing as u32_t) 2011-07-04 19:10:49 +00:00
goldsimon
cc84f28d1b Fixed bug #33672 (checksum calculate error!!!) by folding 'acc' to u16_t before calling checksum_pseudo_*_base functions 2011-06-29 19:54:33 +00:00
goldsimon
2bd498524d Fixed bug #33653 (ip_data.current_ip_header_tot_len calculation errors!) introduced while mergin IPv4 and IPv6 2011-06-29 19:46:21 +00:00
goldsimon
b666ab0673 Init checks: LWIP_RAND is needed for IPv6, too 2011-06-26 17:51:55 +00:00
goldsimon
6a4c30fe5d fixed bug #31723 (tcp_kill_prio() kills pcbs with the same prio) by updating its documentation only. 2011-06-26 17:37:09 +00:00
goldsimon
4002aef594 fixed bug #33545: With MEM_USE_POOLS==1, mem_malloc can return an unaligned pointer. 2011-06-26 17:31:10 +00:00
goldsimon
ba28d36e67 Fixed bug #33544 (warning in mem.c in lwip 1.4.0 with NO_SYS=1) 2011-06-26 17:13:57 +00:00
goldsimon
4444db2990 Added some more asserts to check that pcb->state != LISTEN 2011-06-26 17:07:13 +00:00
goldsimon
d0026793bf Cleaned up usage of sys.h a bit 2011-06-26 16:51:04 +00:00
goldsimon
93b5cd5ddd Provide a default for SNMP_GET_SYSUPTIME() based on sys_now() 2011-06-26 16:50:28 +00:00
idelamer
4eb5acd9e2 Don't forward IPv6 packets that are larger than outgoing MTU, send ICMPv6 message back for Path MTU discovery. 2011-06-22 12:14:58 +00:00
idelamer
12a948dacb Allow routing IPv6 packets to neighbours with manually-configured non-link-local addresses. 2011-06-17 11:05:38 +00:00
idelamer
137953605e Allow IPv6 addresses with arbitrary prefix. 2011-06-17 11:04:47 +00:00
idelamer
629fad6f5f Minor edits for for IPv6 compilation 2011-06-17 11:03:15 +00:00
goldsimon
89a1420609 Fix compilation error when checking for hidden variable names ('s8_t i' was hidden in some case statements in nd6_input()). 2011-06-08 16:31:55 +00:00
goldsimon
2ed5413e24 use const char for name pointers in display functions 2011-06-07 19:32:20 +00:00
goldsimon
91532b2d5c Removed unused static function 2011-06-07 19:19:24 +00:00
goldsimon
732cac1c0e Moved static variable from inside the function to global scope 2011-06-07 19:10:55 +00:00
goldsimon
5b04860b8b Moved common call to pbuf_header outside the switch() 2011-06-07 19:10:10 +00:00
goldsimon
d30246dc05 Fixed bug #33492 (fixed stats for IPv6 protocols) 2011-06-07 19:05:22 +00:00
goldsimon
d80be7961c use PCB_IS_IPV6(pcb) instead of pcb->isipv6 everywhere; fixed compilation with LWIP_IPV6==1 but LWIP_IGMP==0 2011-05-28 09:30:43 +00:00
goldsimon
2aec3a9789 use PCB_IS_IPV6(pcb) instead of pcb->isipv6 everywhere 2011-05-28 09:28:18 +00:00
goldsimon
ccd7dbe0e4 Added ipX versions for routing 2011-05-26 15:46:44 +00:00
goldsimon
92fcfd7a6f Fixed two compilation errors with different opt.h settings 2011-05-26 14:47:28 +00:00
goldsimon
853d1eac96 Fixed pointless conversion when checking TCP port range (bug #33398) 2011-05-25 17:22:56 +00:00
goldsimon
6865806b55 Combined IPv4 and IPv6 code where possible, added defines to access IPv4/IPv6 in non-IP code so that the code is more readable. 2011-05-25 17:16:35 +00:00
goldsimon
9546e65617 Removed autoip_init() since it does nothing; minor coding style changes 2011-05-21 16:01:19 +00:00
goldsimon
90a03a77ad Added new files for IPv6 2011-05-17 19:54:40 +00:00
goldsimon
4bfbe7ebeb ... and finally, we got a first working version of a dual-stack lwIP runnin IPv4 and IPv6 in parallel - big thanks to Ivan Delamer! (this is work in progress, so please beware, test a lot and report problems!) 2011-05-17 19:35:14 +00:00
goldsimon
f3c1686a40 replaced tab with spaces 2011-05-16 18:45:51 +00:00
goldsimon
e4739da961 Fixed overflow in tcp_new_port() after changing port range to IANA "Dynamic and/or Private Ports" range 2011-04-29 11:23:04 +00:00