[libvirt PATCH v4 02/11] remote: push logic for default netcat binary into common helper

Daniel P. Berrangé berrange at redhat.com
Fri Aug 7 17:40:50 UTC 2020


We don't want to repeat the choice of default netcat binary setting in
three different places. This will also make it possible to do better
error reporting in the helper.

Signed-off-by: Daniel P. Berrangé <berrange at redhat.com>
---
 src/remote/remote_driver.c | 2 +-
 src/rpc/virnetclient.c     | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c
index 0331060a2d..f511a9bc33 100644
--- a/src/remote/remote_driver.c
+++ b/src/remote/remote_driver.c
@@ -1226,7 +1226,7 @@ doRemoteOpen(virConnectPtr conn,
                                                 username,
                                                 !tty,
                                                 !verify,
-                                                netcat ? netcat : "nc",
+                                                netcat,
                                                 keyfile,
                                                 sockname)))
             goto failed;
diff --git a/src/rpc/virnetclient.c b/src/rpc/virnetclient.c
index bd818df953..f65cda0d7f 100644
--- a/src/rpc/virnetclient.c
+++ b/src/rpc/virnetclient.c
@@ -419,6 +419,9 @@ virNetClientSSHHelperCommand(const char *netcatPath,
 {
     g_autofree char *netcatPathSafe = virNetClientDoubleEscapeShell(netcatPath);
 
+    if (!netcatPath)
+        netcatPath = "nc";
+
     return g_strdup_printf(
         "sh -c "
         "'if '%s' -q 2>&1 | grep \"requires an argument\" >/dev/null 2>&1; then "
@@ -505,7 +508,6 @@ virNetClientPtr virNetClientNewLibSSH2(const char *host,
     DEFAULT_VALUE(host, "localhost");
     DEFAULT_VALUE(port, "22");
     DEFAULT_VALUE(username, "root");
-    DEFAULT_VALUE(netcatPath, "nc");
     DEFAULT_VALUE(knownHostsVerify, "normal");
 
     command = virNetClientSSHHelperCommand(netcatPath, socketPath);
@@ -566,7 +568,6 @@ virNetClientPtr virNetClientNewLibssh(const char *host,
     DEFAULT_VALUE(host, "localhost");
     DEFAULT_VALUE(port, "22");
     DEFAULT_VALUE(username, "root");
-    DEFAULT_VALUE(netcatPath, "nc");
     DEFAULT_VALUE(knownHostsVerify, "normal");
 
     command = virNetClientSSHHelperCommand(netcatPath, socketPath);
-- 
2.26.2




More information about the libvir-list mailing list