Skip to content

Commit 80925b1

Browse files
author
Ossama Othman
authored
mptcpd 0.11
- Support for the user space MPTCP path management generic netlink API in the Linux 5.19 kernel was implemented. - MPTCP address advertisements may now be managed through the mptcpd_pm_add_addr() and mptcpd_pm_remove_addr() functions. Listening sockets required for accepting subflow joins through advertised addresses will be handled automatically by mptcpd if not previously created through the mptcpd listener manager API described below. - The mptcpd_pm_add_addr() struct sockaddr parameter is now non-const to allow a zero valued TCP port to be updated with the ephemeral port chosen by the kernel and passed back to the user through that struct sockaddr parameter. - Subflows may be managed through mptcpd plugins through the mptcpd_pm_add_subflow(), mptcpd_pm_set_backup(), and mptcpd_pm_remove_subflow(). - A new "mptcpd_lm" listener manager interface was added to the mptcpd library. It allows plugins to explicitly manage listening sockets that are needed when advertising addresses, such as when creating listener pools. The global mptcpd listener manager may be retrieved through the mptcpd_pm_get_lm() function. - Propagate the "server side" flag to "new_connection" and "connection_established" plugin operations. - Support a new "fullmesh" address flag in the mptcpd configuration file and command line "addr-flags" configuration option. "fullmesh" is only relevant to the in-kernel path manager. See the ip-mptcp(8) man page for details on the "fullmesh" address flag. - Allow the mptcpd network monitor unit test to pass if it detects an active interface without any IPv4 or v6 addresses. This can occur when an interface is attached to a bridge. The bridge would have attached IP addresses but not the interface. - Memory leaks that occured when parsing the "addr-flags" and "notify-flags" entries in the mptcpd configuration file were fixed. - A use-after-free memory error was corrected in the mptcpd "load-plugins" configuration code. - Improved the underlying mptcpd ID manager hash algorithm by replacing the existing trivial hash with the MurmurHash3 algorithm.
1 parent 3bf08b3 commit 80925b1

File tree

3 files changed

+54
-4
lines changed

3 files changed

+54
-4
lines changed

NEWS

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,52 @@
1+
19 August 2022 - mptcpd 0.11
2+
3+
- Support for the user space MPTCP path management generic netlink API
4+
in the Linux 5.19 kernel was implemented.
5+
6+
- MPTCP address advertisements may now be managed through the
7+
mptcpd_pm_add_addr() and mptcpd_pm_remove_addr() functions.
8+
Listening sockets required for accepting subflow joins through
9+
advertised addresses will be handled automatically by mptcpd if
10+
not previously created through the mptcpd listener manager API
11+
described below.
12+
13+
- The mptcpd_pm_add_addr() struct sockaddr parameter is now
14+
non-const to allow a zero valued TCP port to be updated with the
15+
ephemeral port chosen by the kernel and passed back to the user
16+
through that struct sockaddr parameter.
17+
18+
- Subflows may be managed through mptcpd plugins through the
19+
mptcpd_pm_add_subflow(), mptcpd_pm_set_backup(), and
20+
mptcpd_pm_remove_subflow().
21+
22+
- A new "mptcpd_lm" listener manager interface was added to the
23+
mptcpd library. It allows plugins to explicitly manage listening
24+
sockets that are needed when advertising addresses, such as when
25+
creating listener pools. The global mptcpd listener manager may
26+
be retrieved through the mptcpd_pm_get_lm() function.
27+
28+
- Propagate the "server side" flag to "new_connection" and
29+
"connection_established" plugin operations.
30+
31+
- Support a new "fullmesh" address flag in the mptcpd configuration
32+
file and command line "addr-flags" configuration option. "fullmesh"
33+
is only relevant to the in-kernel path manager. See the ip-mptcp(8)
34+
man page for details on the "fullmesh" address flag.
35+
36+
- Allow the mptcpd network monitor unit test to pass if it detects an
37+
active interface without any IPv4 or v6 addresses. This can occur
38+
when an interface is attached to a bridge. The bridge would have
39+
attached IP addresses but not the interface.
40+
41+
- Memory leaks that occured when parsing the "addr-flags" and
42+
"notify-flags" entries in the mptcpd configuration file were fixed.
43+
44+
- A use-after-free memory error was corrected in the mptcpd
45+
"load-plugins" configuration code.
46+
47+
- Improved the underlying mptcpd ID manager hash algorithm by replacing
48+
the existing trivial hash with the MurmurHash3 algorithm.
49+
150
24 June 2022 - mptcpd 0.10
251

352
- Inconsistent byte order handling in mptcpd was corrected. TCP ports

configure.ac

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
AC_PREREQ([2.69])
88
AC_INIT([mptcpd],
9-
[0.10],
9+
[0.11],
1010
1111
[],
1212
[https://github.com/intel/mptcpd])

man/mptcpd.8.in

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
.\" SPDX-License-Identifier: BSD-3-Clause
22
.\"
3-
.\" Copyright (c) 2017-2021, Intel Corporation
3+
.\" Copyright (c) 2017-2022, Intel Corporation
44

55
.\" Process this file with
66
.\" groff -man -Tascii mptcpd.8
77
.\"
8-
.TH MPTCPD 8 "2021-09-17" "Multipath TCP Daemon" "System Management Commands"
8+
.TH MPTCPD 8 "2022-08-19" "Multipath TCP Daemon" "System Management Commands"
99
.SH NAME
1010
mptcpd \- multipath TCP daemon
1111
.SH SYNOPSIS
@@ -71,8 +71,9 @@ set flags for announced address, where
7171
is a comma separated list containing one or more of the flags
7272
.IR subflow ,
7373
.IR signal ,
74+
.IR backup ,
7475
and
75-
.I backup
76+
.I fullmesh
7677
that plugins that deal with the in-kernel path manager may use when
7778
advertising addresses, e.g.
7879
.B --addr-flags=subflow

0 commit comments

Comments
 (0)