On Tue, Jan 02, 2018 at 08:28:03PM +0100, Lorenzo Bianconi wrote: > Perhaps I am little bit polarized on UABI issue, but I was rethinking > about it and maybe removing offset parameter would lead to an > interoperability issue for device running L2TPv3 since offset > parameter is there and it is not a nope. > Please consider this setup: > - 2 endpoint running L2TPv3, the first running net-next and the second > running 4.14 > - both endpoint are configured using iproute2 in this way: > > - ip l2tp add tunnel local <ip0> remote <ip1> tunnel_id <id0> > peer_tunnel_id <id1> udp_sport <p0> udp_dport <p1> > - ip l2tp add tunnel local <ip1> remote <ip0> tunnel_id <id1> > peer_tunnel_id <id0> udp_sport <p1> udp_dport <p0> > - ip l2tp add session name l2tp0 tunnel_id <id0> session_id <s0> > peer_session_id <s1> offset 8 > - ip l2tp add session name l2tp0 tunnel_id <id1> session_id <s1> > peer_session_id <s0> offset 8 > > Can we assume offset is never used for L2TPv3? > That's what I think. You're right worrying about ABI issues. And I wouldn't dare proposing such a removal if I had doubts about breaking a user setup.
Considering the lack of use cases and the absence of interoperability of this feature, I hardly can imagine it being used. But it's not only that: the feature has been buggy for years without anyone noticing. And this bug wasn't difficult to spot (one just needs to look at an L2TPv3 header in a network packet dump). It's really the combination of these three issues (buggy, no use case and not producing valid L2TPv3 frames) that makes me propose a removal.