Hi Anthony,

On Mon, Aug 26, 2024 at 12:03:50PM +0200, Anthony Doeraene wrote:
> Hello,
> 
> Changelog compared to the previous patch:
> 
> - split some code to patches 1-3/4
> - use MPTCP with the backend if set in the backend config thanks to
> patches X/4
> - remove ".receivers" in the new MPTCP protocol structures.
> - split too large lines
> - fix family for 'mptcp6@' address

Thanks for the changes, that will help me, I'm back to reviewing the
changes again.

> Another question: Is it still needed to duplicate the mptcp protocol 
> structures
> from the tcp ones ? Could we not simply make a copy of the tcp ones and simply
> setting the name and sock_proto ?

It's better to avoid the copy. The reason is that it's too easy to
overlook something. For example there is a linked list element in the
struct which I used to mistakenly copy-paste, and that I recently
changed so that it's initialized by the register code. But if we later
add something similar, it will be very hard to spot the lack of special
case in the memcpy() code. The structs are not *that* large and remain
reasonably readable so let's have one per variant for now.

I also hesitated to set some defaults for many entries to avoid having
to declare all of them, but figured it would be hard not to set some
functions when we really want a NULL, and it would also make it harder
to figure all users of this or that function. I think what we have now
is far from being perfect but is a reasonably acceptable compromise in
fact.

Thanks!
Willy


Reply via email to