mptcpd 0.6
-
Mptcpd now supports versions of the Embedded Linux Library (ELL) greater than 0.33.
-
Plugins should use the new
MPTCPD_PLUGIN_DEFINE()preprocessor macro instead ofL_PLUGIN_DEFINE(). -
A pointer to the mptcpd path manager object, i.e.
struct mptcpd *pm, is now passed to the plugininitandexitfunctions. This allows plugins to potentially perform mptcpd path manager related operations during initialization and finalization. -
Support for the MPTCP netlink path manager in the upstream Linux kernel is now available. A new set of path management command functions corresponding to those available in the kernel netlink path management API has been added to the
<mptcpd/path_manager.h>header. The new functions allow plugins to retrieve IP address information, flush addresses, and modify MPTCP resource limits. -
The
mptcpd_pm_add_addr()(formerlymptcpd_pm_send_addr()) andmptcpd_pm_remove_addr()function parameters have been modified in order to support both the upstream and multipath-tcp.org kernels. -
Mptcpd path management command functions declared in
<mptcpd/path_manager.h>now return zero on success and -1 or an
errnoon failure instead of abool. -
A MPTCP address ID manager
mptcpd_idminterface was introduced that mptcpd plugins may leverage to map an IP address to a MPTCP address ID, as well as to track used and unused IDs. The interface is defined in the new<mptcpd/id_manager.h>header. -
A new address advertising plugin,
addr_adv, has been added. It simply triggers a MPTCPADD_ADDRwhen a new IP address is detected by the mptcpd network monitor. Similarly, a MPTCPREMOVE_ADDRis triggered when an IP address is no longer available. -
MPTCP netlink command error message logging was improved to be more descriptive when possible.