History: ip_ppp
This page describes all changes made to the ip_ppp package, PPP, since its release.
Version
1.16 (2019-11-14, 06:39):
- Terminates link in client mode if request for IP address is rejected.
- Connection is faster in client mode: sending of LCP Configuration-Request optimized.
- Bugfix: NULL-pointer de-reference could occur when callback function is set to NULL during connection.
1.15 (2019-10-14, 11:11):
- Client mode was fixed: it reached configured state before PPP negotiation was finished.
- NBNS addresses can be requested in client mode.
- Server mode was fixed: previously it could not reach configured state and DNS addresses were not returned to the client if it requested them.
- Callback function registered with ip_ppp_register_ntf() could cause deadlock if IP function was called.
1.14 (2018-09-06, 12:40):
- Changes due to IP aliasing support for IPv4.
- DNS addresses are requested in client mode.
1.13r2 (2018-08-29, 18:30):
- Document HTML link added to the documentation folder.
- History and document files renamed to the package name.
1.13 (2018-07-20, 17:24):
- Buffer descriptors were not initialized properly, causing reconnection problems.
- g_ppp_ser_mutex was not deleted during ppp_ser_delete(), meaning delete/init sequence always increased the number of allocated mutexes.
1.12 (2018-04-11, 18:33):
- Default DNS1 and DNS2 addresses were ignored in client mode.
- Compiler warnings eliminated.
1.11 (2018-03-05, 12:43):
- Added support for changing PPP, VJC, CHAP, and IPCP parameters dynamically.
1.10 (2018-02-26, 11:09):
- A variable might have been used uninitialized if an error occurred during PPP initialization.
- Successfully locked resources were released incorrectly if an error occurred during PPP initialization.
1.9r2 (2018-01-19, 11:24):
- Added missing configuration template config_ip_ppp_driver_ser.c.
1.9 (2017-11-21, 18:03):
- Added support for a maximum of four PPP interfaces.
1.8 (2017-09-26, 14:41):
- Building up PPP connection (LCP negotiation phase) might fail because of demanding a peer MRU depending on its own MTU.
- PPP interface (PPP serial driver) MTU is limited to 1500 bytes in accordance with RFC 1661.
- In case of any timeout on the connection, the peer is informed about terminating the connection, rather than just closing the connection internally and stopping communication.
- Re-added user PPP state change notification, configurable using ip_ppp_register_ntf(). (This API function already existed but did not operate).
1.7 (2017-08-30, 09:36):
- LCP link negotiation failed in case the remote peer rejected a Configure-Request message.
1.6:
- Potential deadlock eliminated when initializing, starting, stopping, or deleting the module.
1.5:
- Updated to work with IP base major version 6.
1.4:
- Updated to work with IP base major version 5.
1.3:
- General serial driver used instead of UART. Physical driver is on PSP level now.
- NW driver callbacks might have been called with invalid parameter causing possible error when used with RTOS.
1.2:
- Resources were not released correctly in ip_ppp_drvser_init() if an error occured during initialization; this could cause a deadlock with certain RTOSes.
- ip_ppp_drvser_delete() didn't delete the timer resource.
- PPP driver can use external memory pool.
1.1:
- Initial release.