Dirk Ziegelmeier
d0c3baf340
Partly apply Elias Oenal's SNMP V3 patch. There is more to come, the work is incomplete at the moment and does not compile when LWIP_SNMP_V3 is enabled.
2016-03-29 10:28:33 +02:00
sg
27f03798b9
Fixed possible problems with tcp_backlog_delayed/tcp_backlog_accepted
2016-03-25 16:19:39 +01:00
Dirk Ziegelmeier
377885581f
SNMP: Move MIB2 interfaces subtree to separate file to get snmp_mib2.c smaller
2016-03-23 22:32:47 +01:00
sg
7721b20179
call accept-callback with ERR_MEM when allocating a pcb fails on passive open to inform the application about this error; ATTENTION: applications have to handle NULL pcb in accept callback!
2016-03-23 21:57:38 +01:00
Dirk Ziegelmeier
7e7f2f31ff
Cleanup and simplify tcpip_api_call() implementation a bit
2016-03-22 21:52:11 +01:00
goldsimon
c39ef75cb3
... and another compiler error: tcp_nagle_enable() must stay at tcpflags_t, not using u16_t
2016-03-22 15:58:00 +01:00
goldsimon
7bda462031
fixed wrong commit: compatibility-define tcp_accepted() was accidentally commented-out
2016-03-22 15:54:14 +01:00
sg
dd80759bb9
tcp: changed accept handling to be done internally: the application does not have to call tcp_accepted() any more. Instead, when delaying accept (e.g. sockets do), call tcp_backlog_delayed()/tcp_backlog_accepted() (fixes bug #46696 )
2016-03-22 07:30:44 +01:00
sg
44e1a2d8e2
define tcp_backlog_set() as dummy-define when backlog feature is disable
2016-03-18 20:05:04 +01:00
Dirk Ziegelmeier
7aea739f87
PPPAPI: Don't return garbage in *_create calls in case tcpip_api_call() fails;
...
Let some functions return err_t instead of void because tcpip_api_call() may fail
2016-03-16 23:01:05 +01:00
Dirk Ziegelmeier
6ffe12cede
Readd struct protoype in api.h
2016-03-16 21:57:25 +01:00
Dirk Ziegelmeier
d6adc1f6cb
Rename tcpip_send_api_msg to tcpip_send_msg_wait_sem (hopefully a little bit clearer name)
2016-03-16 21:57:24 +01:00
sg
7b9cb98bbb
LWIP_TCPIP_CORE_LOCKING_INPUT is not experimental any more, as well
2016-03-16 21:48:47 +01:00
Dirk Ziegelmeier
d38cdccbcd
netconn API: Remove api_msg wrapper struct, it is not needed any more
2016-03-16 21:35:21 +01:00
Dirk Ziegelmeier
2575c7fb5f
netconn API: Cleanup, remove lots of #defines, take advantage of new tcpip_send_api_msg function feature to abstract core locking away
2016-03-16 21:35:21 +01:00
Dirk Ziegelmeier
ea174560b1
tcpip.c tcpip_send_api_msg: Handle core locking case internally
2016-03-16 21:35:21 +01:00
Dirk Ziegelmeier
bc51dddcaf
Add some comments to functions and #defines. According to Simon, LWIP core locking is not experimental any more.
2016-03-16 21:35:21 +01:00
Dirk Ziegelmeier
1d7996dc47
tcpip API calls: Implement LWIP_NETCONN_SEM_PER_THREAD support for ALL API calls
2016-03-13 19:43:49 +01:00
Dirk Ziegelmeier
00975769a0
Minor TCPIP API call functions cleanup
2016-03-10 22:44:31 +01:00
Dirk Ziegelmeier
f7a3d6cca5
Port PPP API to new simple tcpip API call method
2016-03-10 22:44:25 +01:00
Dirk Ziegelmeier
8f71795844
Port netifapi to new simple tcpip API call method
2016-03-10 22:42:21 +01:00
Dirk Ziegelmeier
8106413644
tcpip.c: Implement an easier way for TCPIP API calls - client code does not have to deal with semaphores and core locking any more
2016-03-10 22:42:21 +01:00
Axel Lin
2a2f92f7c2
Make ERR_IS_FATAL() test first fatal error instead of last non-fatal error
...
This way, we don't need to update ERR_IS_FATAL() every time new non-fatal error
is added. Also drop 2 empty lines so the error constants present in 2 groups,
non-fatal errors and fatal errors.
2016-03-10 07:21:34 +01:00
sg
5d637360cc
fixed ERR_IS_FATAL() after changing ERR_IF to non-fatal
2016-03-08 21:04:21 +01:00
Dirk Ziegelmeier
7d8f0c781f
Fix wrong usage of LWIP_NETCONN_SEM_PER_THREAD macro in api_msg.h
2016-03-08 19:53:37 +01:00
Dirk Ziegelmeier
ba40925335
tcpip_send_api_msg function is only needed in non-core-locking mode
2016-03-08 19:41:32 +01:00
Dirk Ziegelmeier
eab92ccb03
netifapi: Eliminate wrapper struct netifapi_msg and rename netifapi_msg_msg to netifapi_msg
2016-03-08 19:41:32 +01:00
Dirk Ziegelmeier
a4297ef0fd
Reduce includes of tcpip_priv.h
2016-03-08 19:41:32 +01:00
Dirk Ziegelmeier
c65eca58c9
Decouple tcpip.c/tcpip_priv.h from netconn API
2016-03-08 19:41:32 +01:00
Dirk Ziegelmeier
18bb74e5c5
Decouple tcpip.c/tcpip_priv.h from PPP API
...
PPP API can now be moved to netif/ppp subdir
2016-03-08 19:41:32 +01:00
Dirk Ziegelmeier
af1978fa4e
Implement generic API message handling
...
Add generic tcpip_send_api_msg function
Let netif API and netconn API use it
Decouple tcpip.c and tcpip_priv.h from netif API
2016-03-08 19:41:32 +01:00
sg
375ec36246
ERR_IF is not necessarily a fatal error (fixes bug #46338 : UDP netconns block after fatal error)
2016-03-05 16:15:04 +01:00
Dirk Ziegelmeier
52b426a343
ip_addr.h: Use IP_GET_TYPE macro in other macros
2016-03-05 14:35:29 +01:00
Dirk Ziegelmeier
094cdf1c7b
netconn: Create API macros to get/set IPV6ONLY flag
2016-03-04 23:06:33 +01:00
Dirk Ziegelmeier
15925b66c6
Fix ip_addr_cmp to correctly compare IPADDR_ANY_TYPE ips
2016-03-04 22:46:18 +01:00
Dirk Ziegelmeier
925b280fd2
Apply patch from Elias Önal to fix a few datatypes in SNMP MIB2
2016-03-04 22:35:09 +01:00
goldsimon
15326cdbad
Added macro to get the ip address type
2016-03-04 09:07:50 +01:00
Dirk Ziegelmeier
bee5515e9a
netconn API: Reimplement dual-stack API to be socket-like.
...
When IPv6 ANY address is used and the NETCONN_FLAG_IPV6_V6ONLY is NOT set, bind/listen on/to IP_ANY_TYPE
2016-03-03 22:52:04 +01:00
Dirk Ziegelmeier
7396d8818b
Implement dual-stack in RAW API in the same way as in UDP and TCP
2016-03-03 22:47:27 +01:00
Dirk Ziegelmeier
b5cd90a342
Add compatibility macro for tcp_new_ip6()
2016-03-03 21:04:00 +01:00
Dirk Ziegelmeier
0c673b6a44
Implement new style TCP dual-stack in netconn API
2016-03-02 23:46:22 +01:00
Dirk Ziegelmeier
f9ce31f98b
TCP: Implement dual stack support using new IP_ANY_TYPE introduced at UDP
2016-03-02 23:14:33 +01:00
Dirk Ziegelmeier
bd131e5e4b
ip_addr.h: Update ip_addr_copy macro to correctly copy new IP_ANY_TYPE address
2016-03-02 23:11:34 +01:00
Dirk Ziegelmeier
8e5663a32f
Minor: Avoid ip_input() call indirection for when only IPv4 or IPv6 are enabled
2016-02-29 22:17:42 +01:00
Dirk Ziegelmeier
5404ce3c0a
Implement support for UDP IP_ANY_TYPE in netconn API
2016-02-29 19:31:19 +01:00
Dirk Ziegelmeier
6aed6e659f
Rework DHCP PCB handling: Old code registered one UDP PCB per netif where DHCP was active and there was a special case in udp_input() for this. New implementation uses one PCB for all netifs and removes special case in udp_input().
...
The old approach called udp_bind() on each of the PCBs, which puts them into udp_pcbs list. The PCBs were iterated on all non-DHCP udp_inputs() with no effect.
My cleanup removes the special handling in udp.c, and uses only one DHCP UDP PCB to catch all DHCP messages from all netifs. The dhcp_recv function then checks whether ip_current_input_netif() has DHCP enabled - if not, the message is ignored. The PCB is only created/registered when one or more PCBs have DHCP enabled.
2016-02-29 19:31:19 +01:00
Dirk Ziegelmeier
42c92f80f1
Add compatibility macro for udp_new_ip6()
2016-02-29 13:25:13 +01:00
goldsimon
fa16ee8dcb
cleaned up includes a bit after IPv6 changes
2016-02-29 09:27:59 +01:00
goldsimon
97b7555119
bring back ETHARP_HWADDR_LEN (if anyone uses it)
2016-02-26 14:21:03 +01:00
Joel Cunningham
8cb64698aa
Allow backlog to be updated
...
This commit adds support to the sockets and netconn layer to update the
backlog by calling listen when the netconn is already in the listen state.
When backlog is not enabled, the call returns successfully
This commit also introduces a macro for setting the backlog value that
prevents a 0 sized (invalid) backlog
2016-02-25 15:19:52 -06:00