Re: [PATCH ovpn net v5 3/6] ovpn: initialize TCP state before registering UAPI

Ralf Lici <[email protected]>
Newsgroups gmane.network.openvpn.devel
Message-ID <[email protected]>
On Tue, 07 Jul 2026 13:04:37 +0200, Sabrina Dubroca <[email protected]> wrote:
> 2026-07-06, 13:34:01 +0200, Ralf Lici wrote:
> > ovpn_tcp_init initializes the TCP proto and proto_ops templates used
> > when a TCP socket is attached to an ovpn peer but ovpn_init registers
> > the rtnl link ops and generic netlink family before initializing those
> > templates. Once either interface is visible, userspace can create an
>
> If only the rtnl part is registered, we can create a netdevice but not
> attach a socket to it, so the ovpn_tcp_* ops should not be reachable.
>

Right, thanks for catching the imprecise wording. I'll reword the commit
message to make that clear.

> > ovpn device and configure a TCP socket while the TCP templates are still
> > zero-initialized.
> > 
> > Initialize the TCP templates before publishing the rtnl and netlink
> > interfaces, so externally reachable setup paths can only observe
> > initialized TCP state.
> > 
> > Fixes: 11851cbd60ea ("ovpn: implement TCP transport")
> > Signed-off-by: Ralf Lici <[email protected]>
> > ---
> > New patch added in v5.
> > 
> >  drivers/net/ovpn/main.c | 10 +++++++---
> >  1 file changed, 7 insertions(+), 3 deletions(-)
> > 
> > diff --git a/drivers/net/ovpn/main.c b/drivers/net/ovpn/main.c
> > index 9993c1dfe471..c2c3af0c3c55 100644
> > --- a/drivers/net/ovpn/main.c
> > +++ b/drivers/net/ovpn/main.c
> > @@ -233,8 +233,14 @@ static struct rtnl_link_ops ovpn_link_ops = {
> >  
> >  static int __init ovpn_init(void)
> >  {
> > -	int err = rtnl_link_register(&ovpn_link_ops);
> > +	int err;
> >  
> > +	/* initialize the TCP protos before the module is exposed through rtnl
> > +	 * or netlink
> > +	 */
>
> I don't think that comment adds much. The commit message explains why
> this needs to be moved (and why this had to be moved, if someone
> touches this later)
>

Agreed, I'll drop the comment. I added it as a warning for future
changes, but the commit message and history should be enough context.

-- 
Ralf Lici
Mandelbit Srl
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.