Sylvain Rochet
c51ed84fd8
PPP, MPPE, added ppp_mppe_state comp and decomp to ppp.h
2015-04-18 16:13:44 +02:00
Sylvain Rochet
74054ea907
PPP, MPPE, struct ppp_mppe_state to typedef
...
We usually handle "typedefed" struct in lwIP, and I agree this is a cleaner
approach. Replaced struct ppp_mppe_state to ppp_mppe_state.
2015-04-18 14:54:25 +02:00
Sylvain Rochet
f79bc03360
PPP, MPPE, optimized struct ppp_mppe_state size
2015-04-18 13:41:38 +02:00
Sylvain Rochet
b553df860c
PPP, CCP, deflate, BSD compress, predictor 1 & 2 are now optional at compile time
2015-04-18 02:02:00 +02:00
Sylvain Rochet
f753a728dd
PPP, CCP, compile-out a bit more MPPE code if MPPE is disabled
2015-04-18 01:10:25 +02:00
Sylvain Rochet
3f2e8ebcdf
PPP, MPPE, merged mppe_comp_init() and mppe_decomp_init() into mppe_init()
...
Removing a bit of redundancy and previous artefact of a generic kernel
interface. Exporting mppe_init() instead of mppe_comp_init() plus
mppe_decomp_init().
2015-04-18 00:48:26 +02:00
Sylvain Rochet
879c94b01e
PPP, MPPE, removed mppe_alloc() and mppe_free()
...
We are going to use statically allocated struct ppp_mppe_state through PPP PCB,
removed now useless mppe_alloc() and mppe_free().
Merged mppe_alloc() key copy to mppe_init().
2015-04-18 00:33:57 +02:00
Sylvain Rochet
da40445d75
PPP, MPPE, changed API to use struct ppp_mppe_state* instead of void*
...
Now that struct ppp_mppe_state is exported, change MPPE API to use
struct ppp_mppe_state* instead of void*, we don't need that to be generic.
2015-04-18 00:26:15 +02:00
Sylvain Rochet
6235e1ae57
PPP, MPPE, moved struct ppp_mppe_state from mppe.c to mppe.h
...
In order to be able to use struct ppp_mppe_state statically allocated,
export struct ppp_mppe_state.
2015-04-18 00:15:52 +02:00
Sylvain Rochet
caf9fc5687
PPP, MPPE, adapt compressor to use pbuf
...
mppe_compress() now takes a pointer to a pbuf pointer and re-use the
passed buffer for MPPE "compression".
2015-04-16 22:23:57 +02:00
Sylvain Rochet
dc93c2afec
PPP, MPPE, removed address, control and protocol from compressor input
...
Our PPP stack deals with packet without address and control byte nor 2-byte
protocol field, improved mppe_compress() so we don't have to worry about
them.
2015-04-14 22:56:46 +02:00
Sylvain Rochet
c865211c2f
PPP, get_mask() is only used for IPCP, moved to PPP_IPV4_SUPPORT functions group
2015-04-13 22:58:45 +02:00
sg
6324068d34
Worked on IPv6-only stack: netdb should work
2015-04-13 21:29:04 +02:00
sg
e77e18f8c4
Worked on IPv6-only stack:
...
- prepared DNS;
- fixed compiling ppp.c
2015-04-13 21:24:40 +02:00
sg
69c337b31d
Fixed ntoa/aton/ntop/pton definitions after making IPv4 optional
2015-04-13 20:52:42 +02:00
Sylvain Rochet
421582d747
PPP, MPPE, using err_t return for mppe_decompress
2015-04-12 21:09:15 +02:00
Sylvain Rochet
ab1606a0f6
PPP, MPPE, adapt decompressor to use pbuf
...
mppe_decompress() now takes a pointer to a pbuf pointer and re-use the
passed buffer for MPPE "decompression". Removed sub protocol handling
which can be shared among all decompressors in ppp.c
2015-04-12 21:04:22 +02:00
sg
c1c65777b6
worked on task #13480 : added LWIP_IPV4 define - IPv4 can be disabled, leaving an IPv6-only stack (SNMP is still missing)
2015-04-12 10:43:46 +02:00
Sylvain Rochet
d6fdf7d4b1
PPP, PPPoL2TP, switched to dual stack IPv4/IPv6
...
Replaced ip4_addr_t to ip_addr_t in pppapi_pppol2tp_create() prototype,
now binding to UDPv6 or UDPv4 depending on the passed ip_addr_t type.
Removed pppol2tp_create_ip6() and pppapi_pppol2tp_create_ip6().
2015-04-11 13:15:06 +02:00
goldsimon
2e649e1843
Added IP_ADDR4()/IP_ADDR6() initializer macros that initialize ip_addr_t like their counterparts IP4_ADDR()/IP6_ADDR()
2015-04-10 08:49:32 +02:00
goldsimon
d31dbc6798
Fixed constant initializer problem in ip_addr_t by having ip6 first
2015-04-10 07:41:40 +02:00
Sylvain Rochet
135631d29d
fixed some obvious compiler warnings
...
lwip/src/include/lwip/autoip.h:52:1: error: C++ style comments are not allowed in ISO C90 [-Werror]
//#include "lwip/udp.h"
lwip/src/core/ipv4/autoip.c:70:1: error: C++ style comments are not allowed in ISO C90 [-Werror]
//#include "lwip/udp.h"
lwip/src/include/lwip/api.h:239:25: error: declaration of ‘lev’ shadows a previous local [-Werror=shadow]
SYS_ARCH_DECL_PROTECT(lev); \
2015-04-09 23:27:36 +02:00
sg
ce7e31cd04
task #12722 (improve IPv4/v6 address handling): renamed ip_addr_t to ip4_addr_t, renamed ipX_addr_t to ip_addr_t and added IP version;
...
ip_addr_t is used for all generic IP addresses for the API, ip(4/6)_addr_t are only used internally or when initializing netifs or when calling version-related functions
2015-04-09 22:21:15 +02:00
Sylvain Rochet
7285459375
PPP, MPPE, exported MPPE functions
2015-03-29 12:19:33 +02:00
Sylvain Rochet
0bfe435c4f
PPP, MPPE, updated polarssl ARC4 for lwIP
2015-03-29 12:19:32 +02:00
Sylvain Rochet
cd39843c75
PPP, MPPE, import unmodified ARC4 from polarssl
2015-03-29 12:19:32 +02:00
Sylvain Rochet
dcde1c2a8f
PPP, CCP, added missing defines from linux/ppp-comp.h to ccp.h
2015-03-29 12:19:32 +02:00
Sylvain Rochet
8862a1ac8f
PPP, MPPE, ccp_options->mppe is a bitfield of MPPE_OPT_* and not a boolean, fixed
...
This is actually wrong as well in PPPd, oops.
2015-03-25 00:09:37 +01:00
sg
93fa268db1
used ip6_addr_t instead of struct ip6_addr, fix const'ness in ip6_route parameters
2015-03-24 21:30:22 +01:00
sg
521c92764d
loopif is not required for loopback traffic any more but passed through any netif (ENABLE_LOOPBACK has to be enabled) (task #13515 )
2015-03-24 21:22:19 +01:00
sg
71d121fab2
Added input & route hooks for IPv6 to stay in line with IPv4
2015-03-24 20:33:47 +01:00
sg
2eb0386c2a
fixed bug #36017 ARP might not support duplicate addresses on multiple netifs (tried to correctly handle duplicate AutoIP addresses on multiple netifs, but only if explicitly enabled via ETHARP_TABLE_MATCH_NETIF==1)
2015-03-23 22:04:57 +01:00
sg
33d5e646e5
fixed bug #41318 (Bad memory ref in tcp_input() after tcp_close())
2015-03-21 21:19:10 +01:00
Sylvain Rochet
c17594c1d0
PPP, CORE, don't build get_loop_output() if demand support (not supported) is not enabled
2015-03-21 20:12:14 +01:00
sg
4463239d6e
fixed bug #38204 (DHCP lease time not handled correctly)
2015-03-21 10:09:31 +01:00
Sylvain Rochet
36e90a1bd5
PPP, CCP, add dummy ccp_ functions in ppp.c so it builds if CCP_SUPPORT is set
2015-03-20 00:37:34 +01:00
Sylvain Rochet
9fbe900949
PPP, MPPE, replaced #ifdef MPPE to #if MPPE_SUPPORT
2015-03-20 00:20:12 +01:00
Sylvain Rochet
73f1511ac2
PPP, CORE, removed auth fields from struct ppp_pcb if auth is disabled
2015-03-20 00:00:46 +01:00
Sylvain Rochet
5937932370
PPP, CCP, various fix if MPPE is enabled
2015-03-19 21:45:19 +01:00
Sylvain Rochet
2a6104ab17
PPP, CCP, added ccp.h in ppp.h
2015-03-19 21:45:19 +01:00
Sylvain Rochet
7174578ac3
PPP, CCP, moved CCP global variables to ppp_pcb (ppp.h)
2015-03-19 21:45:19 +01:00
Sylvain Rochet
10d09049bb
PPP, CCP, replaced bool to unsigned int in struct ccp_options
2015-03-19 21:45:19 +01:00
Sylvain Rochet
ee752ab1ce
PPP, PPPoS, renamed PPP_INPROC_MULTITHREADED to PPP_INPROC_IRQ_SAFE
...
Follow-up of the #44565 bug fix, renamed the misnamed
PPP_INPROC_MULTITHREADED to PPP_INPROC_IRQ_SAFE because it is
IRQ safe but not thread safe.
Updated PPP documentation which now clearly state when and how
this feature can be used.
2015-03-19 21:43:55 +01:00
sg
9eb900c448
fixed race conditions in assigning netconn->last_err (fixed bugs #38121 and #37676 )
2015-03-19 21:20:29 +01:00
Sylvain Rochet
0e919d25e9
PPP, PPPoS, improved tcpip input path, fixed bug #44565
...
New input type TCPIP_MSG_INPKT_PPPOS. Removed the netif input pointer usage
which was actually broken by design.
Fixed bug #44565 .
2015-03-19 21:04:21 +01:00
Ivan Delamer
c73daef2a1
fixed bug #43843 : ip6_addr_ismulticast_ doesn't allow for transient
...
multicast address
2015-03-18 14:04:39 -06:00
Ivan Delamer
e30823769c
renamed ND6_RA_FLAG_OTHER_STATEFUL_CONFIG to ND6_RA_FLAG_OTHER_CONFIG
...
as explained in bug #39963 and RFCs.
2015-03-18 12:01:15 -06:00
Ivan Delamer
f139b14a3c
added macros for handling IPv6 multicast filter callback.
2015-03-18 11:08:40 -06:00
Sylvain Rochet
59d8e76081
PPP, code cleaning, u_char to u8_t
...
Replaced u_char to u8_t in our PPP files.
2015-03-14 14:05:33 +01:00
Sylvain Rochet
50336aaedd
PPP, ppp->last_xmit is only used in PPPoS, moved to PPPoS
...
Only PPPoS need to keep track of last transmitted packet for HDLC flag,
removed from PPPoE and PPPoL2TP and moved to PPPoS.
2015-03-14 01:03:58 +01:00