When I use STM32CubeMX, it gives me sources as follows:
https://github.com/tabascoeye/lwip/blob/master/src/netif/ppp/pppos.c
with functions pppos_create(..), pppos_input(..), ppp_connect(..)
When I look at the examples like created 1 year ago, it uses as follows:
https://github.com/bosch-ros-pkg/stm32/blob/master/src/transport/lwip/src/netif/ppp/ppp.c
with functions pppInit(), pppOverSerialOpen(..).
Last library seems to be specialized for STM32 because of the file location(...stm32/blob/master...). Do you have any sense comes up similar to mine? I have seen the http://lwip.wikia.com/wiki/PPP uses last source also. Which one I should use?
CubeMx uses abstraction over libraries. It does the same with FreeRTOS (creating a new task is with osThreadCreate() over xTaskCreate()).
I don't know about Lwip, but with FreeRTOS it is possible to use the real librairie by including the good headers because both the real one and the CubeMx version are generated. So it is possible to use the real one that is more efficient.
If you use CubeMx, I recommend using the functions CubeMx gives. Since CubeMx generates a lot of the LWIP initialization with those functions already, the code will be cleaner if you use them too and will also be a lot simpler.