The Secure Sockets library User Guide says this in the Usage Restrictions section:
Only TCP sockets are supported by the FreeRTOS Secure Sockets library. UDP sockets are not supported.
Server APIs are not supported by the FreeRTOS Secure Sockets library, except for a lightweight IP (lwIP) implementation of the server side
BindAPI. Client APIs are supported.
But the Dependencies and requirements section says this:
The FreeRTOS Secure Sockets library depends on a TCP/IP stack and on a TLS implementation. Ports for FreeRTOS meet these dependencies in one of three ways:
- A custom implementation of both TCP/IP and TLS
- A custom implementation of TCP/IP, and the FreeRTOS TLS layer with mbedTLS
- FreeRTOS+TCP and the FreeRTOS TLS layer with mbedTLS
I’m confused by this - if lwIP is required (as stated in the Usage Restrictions) then why does the dependencies not say lwIP is required, instead it says you can use FreeRTOS+TCP?
Also, lwIP + mbed TLS supports client APIs - so then why doesn’t FreeRTOS if it’s just using lwIP and mbed TLS?