Using Maximum Fragment Length with wolfSSL

Did you like the addition of SNI in the last wolfSSL release? If so, you probably will like the Maximum Fragment Length extension as well!

TLS specifies a fixed maximum plaintext fragment length of 2^14 bytes. It may be desirable for constrained clients to negotiate a smaller maximum fragment length due to memory or bandwidth limitations. To enable the usage of Maximum Fragment Length at wolfSSL you can simply do:

./configure –enable-maxfragment

Using Maximum Fragment Length on the client side requires an additional function call, which should be one of the following functions:

wolfSSL_CTX_UseMaxFragment()
wolfSSL_UseMaxFragment()

wolfSSL_CTX_UseMaxFragment() is most recommended when the client would like to contact the same server multiple times with the same configuration. Setting the Maximum Fragment Length extension at context level will enable it in all SSL objects created from that same context from the moment of the call forward.

wolfSSL_UseMaxFragment() will enable it for one SSL object only, so it`s recommended to use this function when the maximum possible length between sessions changes.

On the server side no call is required. The server will automatically attend to the client`s request for Maximum Fragment Length. It is the client`s responsibility to choose the proper length.

Both SNI and Maximum Fragment Length extensions can be enabled with either:

./configure –enable-sni –enable-maxfragment

OR

./configure –enable-tlsx

If you have any questions about using Maximum Fragment Length with TLS please let us know at facts@wolfssl.com.