Jasper Verschueren
d65681a7d7
DHCP request send on reboot does not contain hostname option
...
When the network is changed, dhcp is rebooted.
It will send a dhcp request again to verify it's lease.
DHCP requests are send out in selecting state, rebinding, renewing
and rebooting. But in the rebooting state the hostname option is
not included. This means that after reboot, the hostname will be
unknown to the DNS.
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-07-11 19:55:49 +02:00
Axel Lin
d73efd7d38
dhcp: Prevent NULL pointer dereference in dhcp_select
...
Move the code to make sure netif is not NULL before calling
netif_dhcp_data(netif).
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2018-07-05 21:39:00 +08:00
Simon Goldschmidt
1e24f9c9cd
dhcp: 2 small code improvements
...
See bugs #54226 and #54228
2018-07-02 20:27:12 +02:00
Simon Goldschmidt
19a929f5fb
dhcp: fix parse error with chained pbfus
...
If a chained pbuf starts with DHCP_OPTION_PAD, an overflow check
triggers and the packet is ignored.
Fix this by changing the way the offset is increased for PAD.
Also ignore a packet that is missing the END option.
Signed-off-by: Simon Goldschmidt <goldsimon@gmx.de>
2018-07-02 20:25:42 +02:00
Ben Wijen
7d1c6ba549
dhcp: Fix BOOTP_FILE bug
...
The comment in dhcp_handle_ack for 'offered_si_addr' states:
'boot file name copied in dhcp_parse_reply if not overloaded'
However this code was never reached if the packed was not 'overloaded'
Signed-off-by: goldsimon <goldsimon@gmx.de>
2018-04-19 22:18:56 +02:00
goldsimon
8600259a78
tiny cleanup in dhcp.c
2018-02-22 22:33:48 +01:00
Dirk Ziegelmeier
f334ac68b6
Work on task #14780 : Add debug helper asserts to ensure threading/locking requirements are met
...
Add LWIP_ASSERT_CORE_LOCKED() in several places
2018-01-02 15:44:08 +01:00
Dirk Ziegelmeier
6c7e7153bc
Fix bug #52704 : DHCP and bad OFFER
...
Stop timeout only if offer is accepted
2017-12-30 12:17:24 +01:00
Dirk Ziegelmeier
8c59be74c1
Reformat IPv4 code using astylerc
2017-09-17 20:33:27 +02:00
Dirk Ziegelmeier
1c91118f4a
Add DHCP ports to iana.h
2017-08-08 11:46:15 +02:00
Dirk Ziegelmeier
5193844ac4
iana.h: Prefix #defines with LWIP_
2017-08-08 11:21:11 +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
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
a681f6b04f
Fix using LWIP_HOOK_DHCP_PARSE_OPTION after recent dhcp changes
2017-08-04 21:53:24 +02:00
goldsimon
cd80e38db8
Clean up DHCP a bit: no need keep msg_out and msg_in as members in struct dhcp
...
They are used in a call stack only (p_out and options_out_len as well)
2017-08-04 21:26:29 +02:00
goldsimon
a81b19aa62
Fixed bug #51623 : DHCP request XID should probably be regenerated for INIT-REBOOT
2017-07-31 20:20:31 +02:00
Our Air Quality
ff03ae6f55
dhcp: restart dhcp after releasing.
...
There were uses of dhcp_release() followed immediately by dhcp_discover() but
dhcp_release() now stops dhcp so discovery would fail, so call dhcp_start()
after release which restarts discovery.
Signed-off-by: Dirk Ziegelmeier <dirk@ziegelmeier.net>
2017-07-28 07:57:50 +02:00
goldsimon
a2e4dd2de7
Minor whitespace cleanups
2017-07-25 21:48:17 +02:00
Matthias Hofmann
9b06d71aeb
Fix using DHCP IP configuration after lease time is expired.
...
Signed-off-by: goldsimon <goldsimon@gmx.de>
2017-07-25 21:46:57 +02:00
Dirk Ziegelmeier
aa317dcb18
Fix dhcp documentation
2017-07-12 11:09:36 +02:00
goldsimon
44f7a3cb0d
work on -Wconversion...
2017-07-05 22:31:58 +02:00
goldsimon
debf34ff9c
work on -Wconversion...
2017-07-04 21:26:30 +02:00
Dirk Ziegelmeier
1aa24ee21b
Add new DHCP hooks to DHCP docs
2017-04-27 12:42:14 +02:00
goldsimon
2fef874494
task #14270 : DHCP should support user-defined additional options: added two hooks for adding and parsing user defined DHCP options
2017-04-25 20:18:59 +02:00
Dirk Ziegelmeier
32aa9a41e2
Apply patch from Kudratov Olimjon: Array index used before limits check
...
while ((q != NULL) && (options[offset] != DHCP_OPTION_END) && (offset < offset_max)) {
should be
while ((q != NULL) && (offset < offset_max) && (options[offset] != DHCP_OPTION_END)) {
See https://jira.reactos.org/browse/CORE-8978 for more info.
2017-04-19 06:35:07 +02:00
goldsimon
33466ee6a8
dhcp_parse_reply: return ERR_VAL instead of asserting on offset-out-of-pbuf
2017-03-30 22:30:27 +02:00
goldsimon
0d585d55d3
Added LWIP_SINGLE_NETIF for small targets with only one netif (see task #13515 , there might be more optimizations to come with this option)
2017-03-01 16:10:50 +01:00
Dirk Ziegelmeier
ec4f00179d
Fix bug #50242 : dhcp_release does not stop autoip (in coop mode)
...
Create new function dhcp_release_and_stop() that stops DHCP statemachine and sends release message if needed. Also stops AUTOIP if in coop mode.
Old dhcp_release() and dhcp_stop() function internally call dhcp_release_and_stop() now.
2017-03-01 13:18:37 +01:00
sg
1839153609
minor: dhcp_network_changed(): assert for valid state, fix coding style
2017-02-03 21:20:39 +01:00
Dirk Ziegelmeier
72316bdb5b
Move macros to access DHCP and AUTOIP data to headers, users may want to access the members
2017-01-05 08:09:00 +01:00
sg
4e3cf61571
opt.h: added LWIP_DHCP_MAX_DNS_SERVERS to configure the maximum number of DNS servers configured from dhcp.c(v4) (if any; guarded with LWIP_DNS)
2016-12-14 22:04:08 +01:00
sg
53b9f2a5bd
dhcp: covert DHCP_OPTION_IDX_* from defines to enum (mainly to ease offset calculation)
2016-12-14 21:56:39 +01:00
goldsimon
0e07ed4b13
fixed bug #49676 (Possible endless loop when parsing dhcp options) & added unit test for that
2016-11-25 10:03:43 +01:00
Axel Lin
d5dd5241e7
dhcp: Use DHCP_MAX_MSG_LEN_MIN_REQUIRED instead of hard-coded value
...
Signed-off-by: Axel Lin <axel.lin@ingics.com>
2016-11-07 12:36:38 +01:00
Dirk Ziegelmeier
ed239c4e71
Apply patch #9139 : Invalid format string in dhcp.c
...
by Thomas Mueller
2016-10-10 09:57:07 +02:00
Dirk Ziegelmeier
13fb616bb2
Cleanup hton*/ntoh* function handling and platform abstraction
...
Let lwip use functions/macros prefixed by lwip_ internally to avoid naming clashes with external #includes.
Remove over-complicated #define handling in def.h
Make functions easier to override in cc.h. The following is sufficient now (no more LWIP_PLATFORM_BYTESWAP):
#define lwip_htons(x) <your_htons>
#define lwip_htonl(x) <your_htonl>
2016-10-06 12:55:57 +02:00
Dirk Ziegelmeier
633696c153
Implement consistent IPx_ADDR_ANYx macro naming between IPv4 and IPv6
...
- rename IP4_ADDR_ANY to IP4_ADDR_ANY4
- IP4_ADDR_ANY (= IP_ADDR_ANY) is now IPv4 any address in ip_addr_t format
2016-09-28 12:56:57 +02:00
Dirk Ziegelmeier
8d45162a59
Fix usage of uninitialized data in dhcp.c by checking pbuf_copy_partial() return value
2016-08-30 21:33:43 +02:00
Dirk Ziegelmeier
0d510dd66d
Add API macros for netif client data handling and update documentation accordingly
2016-08-26 11:21:49 +02:00
goldsimon
306171c93b
DHCP: fixed compiling LWIP_DHCP_BOOTP_FILE==1
2016-08-23 15:25:39 +02:00
goldsimon
14fb48cd7a
minor: whitespace cleanups
2016-08-19 09:41:34 +02:00
Dirk Ziegelmeier
97fae7e41b
Code cleanup in autoip.c and dhcp.c
2016-08-18 12:49:59 +02:00
Dirk Ziegelmeier
7f60cb3889
Improve netif client data API for lwIP internal clients - these can use a compile-time constant to access their data now
2016-08-18 12:37:21 +02:00
Dirk Ziegelmeier
fa6a2d48cc
Fix DHCP unit test after my last changes
2016-08-18 06:09:02 +02:00
Dirk Ziegelmeier
1db9631e7d
Port DHCP to new netif client data API
2016-08-17 21:04:44 +02:00
goldsimon
dc7340bbd5
started with bug #48728 : move protocol definitions to 'include/prot/*.h' files (started with some IPv4 protocols)
2016-08-11 14:36:09 +02:00
Dirk Ziegelmeier
8d07629b71
Some documentation cleanups and include more comments that have been already in code into doxygen docs
2016-08-07 10:05:34 +02:00
Dirk Ziegelmeier
67d674a59c
Document IGMP and MLD6 API in doxygen module style
2016-07-26 18:20:30 +02:00
Dirk Ziegelmeier
dc0859b8d1
Document DHCP and AUTOIP API in doxygen module style
2016-07-26 18:10:05 +02:00