Dirk Ziegelmeier
fa51a7225a
lwip_socket_drop_registered_mld6_memberships: Fix if_idx got lost :-(
2017-08-21 09:46:08 +02:00
Dirk Ziegelmeier
6082251854
Use netconn_join_leave_group_netif() in sockets.c, lwip_socket_drop_registered_mld6_memberships to avoid threading issues (reported by Joel Cunningham)
2017-08-21 09:43:34 +02:00
Dirk Ziegelmeier
f457769fe8
Add netconn_join_leave_group_netif() that takes netif index as argument
2017-08-21 09:42:57 +02:00
Dirk Ziegelmeier
d0e0afb46a
sockets.c, lwip_socket_drop_registered_mld6_memberships: Remove membership from socket_ipv6_multicast_memberships even if netif cannot be found
2017-08-21 09:30:23 +02:00
Joel Cunningham
3bdb34886c
sockets IPv6: cast interface index to u8_t
...
Interface indexes are u8_t internally so cast from sockets int representation to u8_t
This was found with MSVC 2013:
1>lwip\src\api\sockets.c(3190): warning C4242: 'function' : conversion from 'const unsigned int' to 'u8_t', possible loss of data
1>lwip\src\api\sockets.c(3698): warning C4242: 'function' : conversion from 'unsigned int' to 'u8_t', possible loss of data
2017-08-17 08:54:50 -05:00
Dirk Ziegelmeier
339ec17cf0
Fixup my last commit
2017-08-16 17:41:46 +02:00
Dirk Ziegelmeier
e58e398267
Implement IPv6 IPV6_JOIN_GROUP/IPV6_LEAVE_GROUP socket options
2017-08-16 17:41:46 +02:00
Dirk Ziegelmeier
9d74883491
Moving eth_type to iana.h was incorrect - these are assigned by IEEE. IANA published a document containing these numbers, but does not assign them. I didn't see that in the first place :-(
...
Now we have ieee.h, too.
2017-08-15 13:50:12 +02:00
Dirk Ziegelmeier
c6fac10b62
Rename eth_type enum in iana.h to be prefixed with lwip_iana_
2017-08-15 13:42:39 +02:00
Dirk Ziegelmeier
aaee7ed1e7
Improve documentation in iana.h
2017-08-15 13:40:37 +02:00
Dirk Ziegelmeier
2013f4cbd4
Move eth_type definition to iana.h
2017-08-15 13:35:30 +02:00
Dirk Ziegelmeier
772bf96752
Fix makefsdata.c on Win32 after moving to tinydir.h
2017-08-14 09:13:36 +02:00
Dirk Ziegelmeier
01bbbdb19f
More makefsdata fixes:
...
- fix lwip_itoa usage was totally messed up
- fix size_t format string was missing % prefix
2017-08-11 22:50:08 +02:00
Dirk Ziegelmeier
8878a042dc
Apply patch #9399 : makefsdata for linux
...
+ some more fixes in compiling under Linux by Dirk Ziegelmeier
2017-08-11 22:50:08 +02:00
Joel Cunningham
9844049cb1
lwip_itoa: fix converting 0 (bug #51729 )
...
lwip_itoa would output the number 0 as \0. This fixes the issue by
adding a special check before the normal conversion loop
This was found via shell cmd idxtoname and win32 port. "lo0" should
be returned for index 1
2017-08-11 13:38:51 -05:00
Dirk Ziegelmeier
0cf405e24f
Fix that the socket option IPV6ONLY can only be set on TCP sockets
...
Reported by Andrej Butok
2017-08-10 09:14:31 +02:00
Joel Cunningham
3d82155d29
tcp: use TCP_WND_INC for dupack > 3 case
...
TCP_WND_INC abstracts the rollover handling and allows the window to
reach it's maximum value
2017-08-09 16:28:55 -05:00
Joel Cunningham
b8a3cf3a4a
tcp: use tcp_set_flags() rather than manually setting flag
2017-08-09 12:15:52 -05:00
Joel Cunningham
ba7a3204cb
tcp: use tcp_ack_now rather than manually setting TF_ACK_NOW
2017-08-09 10:13:41 -05:00
goldsimon
90873d6c71
Continue fixing the spirit of bug #51663 : don't change pcb state if retransmission can't be done because segments are still queued for transmission
...
- add a better-documented static function tcp_output_segment_busy
- try to reduce the number of checks
- tcp_rexmit_rto: iterate pcb->unacked only once
- no need to check for ref==1 in tcp_rexmit_fast when tcp_rexmit does
- call tcp_rexmit_fast if dupacks >= 3 (not == 3) and use TF_INFR flag to guard the fast-rexmit case (that way, it's triggered again on the next dupack)
2017-08-08 23:02:14 +02:00
Our Air Quality
6a01607004
tcp_out rto: delay re-transmission earlier if link writes are deferred.
...
There is already a guard in tcp_output_segment() for a pbuf still being
referenced by the netif driver due to deferred transmission, however the callers
are modifying state even when this gives up.
It seems cleaner to have the callers guard this case and avoid modifying their
state.
tcp_rexmit_rto() might better avoid re-transmission of any segments if any of
the unacked segments are deferred, to avoid loading the link further if it is
struggling to flush its buffered writes. Link level queues can be limited on
some devices and need spares for link management.
2017-08-08 22:20:02 +02:00
Joel Cunningham
902d393aef
tcp: map tcp_ack_now() directly to tcp_set_flags()
...
Also remove extra set of parenthesis in tcp_ack()
2017-08-08 14:56:00 -05:00
goldsimon
fed916b852
tiny doc change to LWIP_HOOK_IP4_ROUTE_SRC
2017-08-08 21:03:41 +02:00
goldsimon
991f751305
Even more pbuf_header -> pbuf_add/remove_header replacements (also in strings)
2017-08-08 20:51:57 +02:00
goldsimon
07434aa73a
More pbuf_header -> pbuf_add/remove_header replacements
2017-08-08 20:40:26 +02:00
Dirk Ziegelmeier
47a4be83e4
CHANGELOG/UPGRADING: Also mention that LWIP_HOOK_IP4_ROUTE_SRC has changed, too
2017-08-08 13:13:46 +02:00
goldsimon
6d28e9de79
Some cleanups after applying David Girault's altcp patches
2017-08-08 12:59:49 +02:00
David Girault
bc3edfb4d7
altcp_tls_mbedtls: remove "rx pbufs left at end of handshake" assert
...
There is case where a close notify come right after the handshake and is in the same pbuf!
So just handle these data like any other data.
2017-08-08 12:59:48 +02:00
David Girault
0486100a2b
altcp_tls: some fixes
...
- added `altcp_tls_free_config()`.
- added `altcp_tls_context()` function to allow mbedtls parameter tweak.
Since state structure isn't exported, this allow application to get
internal context (port dependent) to tweak it.
- free altcp_pcb when lower error callback called.
2017-08-08 12:59:47 +02:00
David Girault
ee89d906ec
altcp_tcp: some fixes
...
- expose `altcp_tcp_setup()` so we can wrap altcp over existing tcp pcb.
- avoid calling tcp_close() with NULL pcb.
- free altcp_pcb struct when error callback called.
According to `mqtt_tcp_err_cb()` in src/apps/mqtt/mqtt.c, altcp socket should
work the same way than raw tcp socket. So freeing altcp_pcb ensure this.
2017-08-08 12:59:46 +02:00
David Girault
9d120c59ea
altcp: fix altcp_free
...
call dealloc function in altcp_free() so it can be propagate it to inner_conn.
2017-08-08 12:59:45 +02:00
David Girault
8b1a4ef711
altcp_tls_mbedtls: fix log messages by include a \n
2017-08-08 12:59:44 +02:00
Dirk Ziegelmeier
60dd518887
Implement task #14594 : Improve consistency of ip route API parameters
...
reverse parameters of ip4_route_src to be consistent with other ip*_route* functions
This commit will break applications using this function!
2017-08-08 12:41:19 +02:00
Dirk Ziegelmeier
145d6ab5d2
test_etharp.c: IANA_HWTYPE_ETHERNET -> LWIP_IANA_HWTYPE_ETHERNET
2017-08-08 12:22:19 +02:00
goldsimon
ae7c76c773
Rework pbuf_add_header_impl to only modify the pbuf after all checks passed
2017-08-08 12:19:06 +02:00
Dirk Ziegelmeier
6209c8d347
Fix bug #51686 : pbuf_remove_header: silence unused variable warning
...
but in another way than the provided patch
2017-08-08 12:13:45 +02:00
Dirk Ziegelmeier
e65a388c1f
ip4.c does not need to #include prot/dhcp.h any more
2017-08-08 11:49:00 +02:00
Dirk Ziegelmeier
1c91118f4a
Add DHCP ports to iana.h
2017-08-08 11:46:15 +02:00
Dirk Ziegelmeier
0eb8d19e82
Move several port number #defines to iana.h
2017-08-08 11:37:08 +02:00
Dirk Ziegelmeier
5193844ac4
iana.h: Prefix #defines with LWIP_
2017-08-08 11:21:11 +02:00
Dirk Ziegelmeier
79a08c9fee
tcp.c: Remove side-effects from boolean expressions
2017-08-08 11:05:23 +02:00
Dirk Ziegelmeier
b54bf3ccca
ASytleRC: Don't indent prepocessor blocks for now
2017-08-08 11:05:23 +02:00
goldsimon
51c4bc55a0
iana.h: added RFC
2017-08-07 22:07:09 +02:00
Dirk Ziegelmeier
629ec98dd8
Work on task #14587 : Create common header for IANA assigned numbers
...
Create include/lwip/prot/iana.h
Move DHCP and ARP #define in there
2017-08-07 21:06:19 +02:00
Dirk Ziegelmeier
42fd01547d
Fix bug #51681 : mqtt: cannot free client
...
Add free function
2017-08-07 20:43:25 +02:00
goldsimon
4fb7fab850
Fix docs on dhcp_option_trailer()
2017-08-07 08:08:24 +02:00
Our Air Quality
ff588fc771
dhcp: quieten a compile unused variable warning
2017-08-06 21:21:10 +02:00
goldsimon
a1c7924cb6
task #14597 : cleanup pbuf_header usages (use pbuf_add_header/pbuf_remove_header instead)
2017-08-04 22:38:11 +02:00
goldsimon
1981cf39d1
opt.h: improved hooks documentation by adding function signatures for all hooks
2017-08-04 21:55:10 +02:00
goldsimon
a681f6b04f
Fix using LWIP_HOOK_DHCP_PARSE_OPTION after recent dhcp changes
2017-08-04 21:53:24 +02:00