[Openvpn-devel,v1] console_systemd: free argv when openvpn_popen() fails

Message ID 20261103121903.2369-1-gert@greenie.muc.de
State New
Headers
Series [Openvpn-devel,v1] console_systemd: free argv when openvpn_popen() fails |

Commit Message

Gert Doering Nov. 3, 2026, 12:18 p.m. UTC
  From: Razvan Cojocaru <razvanc@mailbox.org>

get_console_input_systemd() returned without freeing argv on popen
failure. Free it right after openvpn_popen(), which no longer needs it.

Change-Id: Iad78e78cf51812c392f53cd58b33b54cb99cc6a8
Signed-off-by: Razvan Cojocaru <razvanc@mailbox.org>
Acked-by: Frank Lichtenheld <frank@lichtenheld.com>
Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/2097
---

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/+/2097
This mail reflects revision 1 of this Change.

Acked-by according to Gerrit (reflected above):
Frank Lichtenheld <frank@lichtenheld.com>
  

Patch

diff --git a/src/openvpn/console_systemd.c b/src/openvpn/console_systemd.c
index 9588b95..eaed24e 100644
--- a/src/openvpn/console_systemd.c
+++ b/src/openvpn/console_systemd.c
@@ -69,7 +69,9 @@ 
     argv_printf_cat(&argv, "--timeout=0");
     argv_printf_cat(&argv, "%s", prompt);
 
-    if ((std_out = openvpn_popen(&argv, NULL)) < 0)
+    std_out = openvpn_popen(&argv, NULL);
+    argv_free(&argv);
+    if (std_out < 0)
     {
         return false;
     }
@@ -81,8 +83,6 @@ 
     }
     close(std_out);
 
-    argv_free(&argv);
-
     return ret;
 }