Dirk Ziegelmeier
aa04944ae0
Add DHCPv6 to documentation
2018-02-23 12:35:45 +01:00
goldsimon
d2ee10977f
dhcp6: try to fix docs (clang complains)
2018-02-23 10:26:19 +01:00
goldsimon
7ad680c2bf
Try to fix dhcp6.c on travis
2018-02-23 09:54:04 +01:00
goldsimon
8600259a78
tiny cleanup in dhcp.c
2018-02-22 22:33:48 +01:00
goldsimon
76a13054ee
add initial support for stateless DHCPv6
...
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-02-22 22:33:16 +01:00
Axel Lin
fe3bb8bb78
etharp: Remove superfluous assert checking in free_etharp_q
...
The same checking is done while iterating the list in the while loop.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-02-22 11:27:29 +08:00
goldsimon
a7b43dae49
altcp: default shutdown for both sides is close
2018-02-21 12:50:42 +01:00
goldsimon
bcff67b00e
altcp_tls_alloc: need to close inner conn instead of freeing it
2018-02-20 17:08:00 +01:00
goldsimon
3bd87e3815
doc: altcp: keep altcp_alloc/altcp_free out of the docs
...
Those functions are for implementing altcp layers, not for applications
2018-02-20 14:08:04 +01:00
Dirk Ziegelmeier
fc3c186289
Improve altcp allocator documentation
2018-02-20 13:25:50 +01:00
Axel Lin
e9bd31b190
icmp6: Fix "LWIP_ICMP6_DATASIZE" redefined build warning if it was set to 0
...
Need to undefine LWIP_ICMP6_DATASIZE before change the setting.
While at it, also remove the unneeded #ifndef LWIP_ICMP6_DATASIZE
checking because it is set in lwip/opt.h.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-02-20 17:54:49 +08:00
Axel Lin
a894140bb0
igmp: Use angle brackets for including string.h
...
Use angle brackets(<>) for including system header files.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-02-20 15:20:14 +08:00
goldsimon
842b9f4429
altcp: simplify creating different types by adding an allocator concept
...
This is done with an example in the http_client
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-02-19 21:41:48 +01:00
goldsimon
b5448a86fd
ip4_reass: free datagram entry if p == NULL
2018-02-18 08:55:11 +01:00
Joel Cunningham
618a28fc53
memp: remove include of sockets.h
...
Socket memory pool types have been migrated to sockets_priv.h so we
no longer need to include sockets.h
2018-02-13 14:04:01 -06:00
goldsimon
5ee77262bc
mem plug_holes: fix copy& paste error
2018-02-13 12:24:10 +01:00
goldsimon
bcb6819715
dns_compare_name: change check for u16_t overflow
...
check upper border (0xFFFF) instead of checking for 0 after overflow
2018-02-13 12:23:50 +01:00
goldsimon
e20e9bc3d4
Try to fix issues reported by coverity
2018-02-13 12:09:18 +01:00
Dirk Ziegelmeier
d5d635cdce
Minor DNS documentation improvement
2018-02-13 10:58:32 +01:00
Axel Lin
47946a29e9
memp: Remove include of lwip/netifapi.h from memp.c
...
struct netifapi_msg is defined in lwip/priv/api_msg.h rather than
lwip/netifapi.h. Thus remove include of lwip/netifapi.h from memp.c.
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-02-13 16:52:18 +08:00
goldsimon
b5e67f142a
tcp: LWIP_CHECKSUM_ON_COPY: fix adding data to retx segment
...
See bug #50914( TCP_CHECKSUM_ON_COPY when adding data to
retransmission): when adding data to an already transmitted segment
that has an uneven length, the checksum was wrong.
To fix this, tcp_output_segment has to restore seg->chksum_swapped
before returning.
2018-02-12 12:38:17 +01:00
goldsimon
8fa55e32d2
add MEM_OVERFLOW_CHECK and combine code with MEMP_OVERFLOW_CHECK
...
This moves untouched memory check and defines from memp.c and memp_priv.h
to mem.c and mem_priv.h (which is new).
2018-02-09 13:44:10 +01:00
goldsimon
f9300c1fb0
netif: ext_callback: clean up netif_set_addr after last change
2018-02-07 20:37:29 +01:00
goldsimon
2a4dd0dc7b
altcp: priority-based pcb/conn allocation required
...
altcp_tcp_new_ip_type: allocate the tcp pcb first to invoke the
priority handling code if we're out of pcbs
2018-02-04 14:00:23 +01:00
goldsimon
7edbd95b50
tcp_out: fix unused parameter when all options are off
2018-02-02 09:01:21 +01:00
goldsimon
fa9082116f
tcp: add 2 hooks to add custom options to outgoing tcp segments
...
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-02-01 09:31:15 +01:00
goldsimon
77d0ee0961
tcp: add LWIP_HOOK_TCP_INPACKET_PCB
...
This hook is called from tcp_input() for all kinds of input pcbs when
selected to receive a pbuf (LISTEN, TIME_WAIT, rest). I can parse or
drop an rx pbuf.
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-02-01 09:19:16 +01:00
goldsimon
0e85582bc0
tcp: introduce ext_args per pcb
...
This introduces the concept of ext (external/extended) arguments per
tcp_pcb (also for listening pcbs) to store more data than just one
"void *arg" per pcb. The "arg" is for use to applications, whereas
the ext_args may be used by frameworks and leave "arg" untouched.
In addition to a void pointer, callbacks are added to help frameworks
migrate arguments from listen pcb to connection pcb and to free args
when the pcb is freed.
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-02-01 09:19:16 +01:00
goldsimon
ebe782ba16
tcp: centralize freeing tcp pcbs to memp_free
...
This should make it easier to add debugging messages or other hooks
to the point where tcp pcbs are deallocated.
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-02-01 09:19:15 +01:00
goldsimon
61671d6df0
tcp_out: make some more pointers const
2018-02-01 09:18:24 +01:00
goldsimon
9fb86f6e4b
tcp: add a define for maximum option bytes
2018-02-01 09:14:22 +01:00
Joel Cunningham
64a351cbe0
tcp_out: remove CHECKSUM_GEN_TCP case from tcp_send_empty_ack
...
CHECKSUM_GEN_TCP support was moved to tcp_output_control_segment
so we can remove usage of tcphdr and the extra set of #if/#endif
This fixes https://travis-ci.org/yarrick/lwip-merged/builds/335348098
2018-01-30 17:35:40 -06:00
goldsimon
424c33bcb7
tcp_out: combine the tx path of the 4 direct tx functions
...
tcp_rst, tcp_send_empty_ack, tcp_keepalive and tcp_zero_window_probe
all execute the same instructions to send a segment pbuf.
Combined into tcp_output_control_segment().
2018-01-30 21:50:41 +01:00
goldsimon
9128a51944
tcp_out: make tcp_output_alloc_header generic enough for tcp_rst
2018-01-30 21:46:48 +01:00
goldsimon
1570dd8ad1
tcp_abandon: no need to buffer pcb->local_port
2018-01-30 21:43:18 +01:00
goldsimon
fdbc9f9b32
tcp_out: move around functions to group them together
...
This file has been a mess regarding the order of the functions.
By moving them around, they can be grouped into functions taking
part in normal data transmission (via unsent/unacked) and control
segments (which are allocated, directly sent and freed).
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-01-30 21:06:44 +01:00
goldsimon
dd6c43ecbd
tcp_out: documentation update
2018-01-30 20:49:47 +01:00
goldsimon
ad3937df58
tcp: tiny doc update (mention tcp_output)
2018-01-30 20:20:22 +01:00
goldsimon
c597cfd6ca
tcp_create_segment: rename arg 'flags' to 'hdrflags'
...
The argument name 'flags' is too unspecific because there is another
argument named 'optflags'.
2018-01-30 12:26:13 +01:00
goldsimon
83ff2014ae
tcp_enqueue_flags: no need to check pcb->snd_queuelen
...
We only allow SYN or FIN in this functions and FIN shall always come
through, so no need to check pcb->snd_queuelen
2018-01-28 20:57:53 +01:00
goldsimon
d6cf8a3e38
tcp_out: improved some comments
2018-01-28 20:56:52 +01:00
goldsimon
6606c4013f
bug #52893 : Add 'old_stat' save in LWIP_NSC_IPV6_ADDR_STATE_CHANGED callback message
2018-01-25 13:05:33 +01:00
goldsimon
fe2c249fb7
bug #52937 : raw_input() must tell ip4/6_input() if protocol has been received
...
This also moves "raw_input" and "raw_netif_ip_addr_changed" to a new file
raw_priv.h
2018-01-25 12:51:46 +01:00
goldsimon
5b75ad9019
Fix bug #52949 : udp_input() checksum error for LWIP_CHECKSUM_CTRL_PER_NETIF
2018-01-22 19:51:45 +01:00
goldsimon
4a99721751
netif: try to fix gcc error (-Werror=c++-compat)
2018-01-13 09:38:18 +01:00
goldsimon
734b6ab57a
netif: ensure netif_set_addr() only results in one "ext_status_callback"
...
This can be used e.g. in mdns to create one, not multiple "changed" triggers
if IP address and netmask change at the same time.
2018-01-12 23:11:38 +01:00
goldsimon
452c6a5378
netif: add netif_remove_ext_callback() (counterpart to netif_add_ext_callback())
2018-01-12 22:25:34 +01:00
Dirk Ziegelmeier
653313cb37
Work on task #14780 : Add debug helper asserts to ensure threading/locking requirements are met
...
Add LWIP_ASSERT_CORE_LOCKED() to several more places
2018-01-12 13:15:36 +01:00
Dirk Ziegelmeier
67ad6e45db
Add assertion that checks for a maximum msecs value for sys_timeout()
2018-01-12 12:38:25 +01:00
Dirk Ziegelmeier
b6b14438b7
Rename lwip_sys_timers_get_next_timout() to sys_timeouts_get_next_timeout()
2018-01-11 09:53:07 +01:00