| Message ID | 20260224213036.31845-1-gert@greenie.muc.de |
|---|---|
| State | New |
| Headers | show |
| Series | [Openvpn-devel,v5] Fixup version command on management interface | expand |
Thanks for that. As discussed, we keep full compatibility ("lack of
SUCCESS response") for up to v3, and document this.
I'm looking forward to a followup patch that documents v1, v2, v3 and v4...
Your patch has been applied to the master and release/2.7 branch.
I do not foresee new mgmt features being added to 2.6.x, so I don't
think we need this in release/2.6 (but if it is needed, we can always
cherrypick it "on demand")
commit adc0febaeac0d83246dbd2cc77b2a5d80e41741e (master)
commit d88e9023930a74cebb8ceab2b91587221675846c (release/2.7)
Author: Selva Nair
Date: Tue Feb 24 22:30:30 2026 +0100
Fixup version command on management interface
Signed-off-by: Selva Nair <selva.nair@gmail.com>
Acked-by: Gert Doering <gert@greenie.muc.de>
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1528
Message-Id: <20260224213036.31845-1-gert@greenie.muc.de>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg35782.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
--
kind regards,
Gert Doering
diff --git a/doc/management-notes.txt b/doc/management-notes.txt index 1a5c311..86b74f3 100644 --- a/doc/management-notes.txt +++ b/doc/management-notes.txt @@ -492,6 +492,10 @@ version 2 -- Change management version of client to 2 (default = 1) version -- Show the version of OpenVPN and its Management Interface +Note: Until version 3, no response was generated when client sets its +version. This was fixed starting version 4: clients should expect +"SUCCESS: .. " message only when setting the version to >= 4. + COMMAND -- auth-retry --------------------- diff --git a/src/openvpn/manage.c b/src/openvpn/manage.c index 37ae6b3..03ff5b3 100644 --- a/src/openvpn/manage.c +++ b/src/openvpn/manage.c @@ -1333,6 +1333,15 @@ if (version) { man->connection.client_version = atoi(version); + /* Prior to version 3, we missed to respond to this command. Acknowledge only if version >= 4 */ + if (man->connection.client_version >= 4) + { + msg(M_CLIENT, "SUCCESS: Management client version set to %d", man->connection.client_version); + } + } + else + { + msg(M_CLIENT, "ERROR: Invalid value specified for management client version"); } }