[Openvpn-devel,v3] dco_linux: avoid bogus text when netlink message is not parsed

Message ID 20250523073848.20848-1-gert@greenie.muc.de
State New
Headers show
Series [Openvpn-devel,v3] dco_linux: avoid bogus text when netlink message is not parsed | expand

Commit Message

Gert Doering May 23, 2025, 7:38 a.m. UTC
From: Antonio Quartulli <antonio@mandelbit.com>

We may bail out parsing an incoming DCO message because it may
concern a different interface.
In that case we print the following debug messages:

    dco_do_read
    ovpn-dco: ignoring message (type=5) for foreign ifindex 313
    process_incoming_dco: received message of type 0 - ignoring

However, the last message is confusing, because there is no message
of type 0 being received, but the message_type was simply not
initialized.

Bail out parsing earlier and avoid printing any bogus text.

Change-Id: I568faa12a5960e8b69de23c2df413b70b231592c
Signed-off-by: Antonio Quartulli <antonio@mandelbit.com>
Acked-by: Gert Doering <gert@greenie.muc.de>
---

This change was reviewed on Gerrit and approved by at least one
developer. I request to merge it to master.

Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1027
This mail reflects revision 3 of this Change.

Acked-by according to Gerrit (reflected above):
Gert Doering <gert@greenie.muc.de>

Comments

Gert Doering May 23, 2025, 7:55 a.m. UTC | #1
"Because it makes sense" :-) - this is one of the messages we can
really live without in the log (and *if* there is something to report,
the platform specific layer do so).

Your patch has been applied to the master branch.

commit 4a48841da2d4179a96348994f841661ec9e5ce1d
Author: Antonio Quartulli
Date:   Fri May 23 09:38:41 2025 +0200

     dco_linux: avoid bogus text when netlink message is not parsed

     Signed-off-by: Antonio Quartulli <antonio@mandelbit.com>
     Acked-by: Gert Doering <gert@greenie.muc.de>
     Message-Id: <20250523073848.20848-1-gert@greenie.muc.de>
     URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg31763.html
     Signed-off-by: Gert Doering <gert@greenie.muc.de>


--
kind regards,

Gert Doering

Patch

diff --git a/src/openvpn/forward.c b/src/openvpn/forward.c
index ed4cdb4..7134f30 100644
--- a/src/openvpn/forward.c
+++ b/src/openvpn/forward.c
@@ -1251,6 +1251,12 @@ 
 
     dco_do_read(dco);
 
+    /* no message for us to handle - platform specific code has logged details */
+    if (dco->dco_message_type == 0)
+    {
+        return;
+    }
+
     /* FreeBSD currently sends us removal notifcation with the old peer-id in
      * p2p mode with the ping timeout reason, so ignore that one to not shoot
      * ourselves in the foot and removing the just established session */