summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorDaniel P. Berrangé <berrange@redhat.com>2018-03-22 11:16:25 +0000
committerDaniel P. Berrangé <berrange@redhat.com>2018-04-09 15:24:31 +0100
commitad2b3fdd1c77d9dd99bfecd7df640904689c3a81 (patch)
treef086b2e6c419dadb2f1060fe087ee3cb3e7ccdfe /src
parent3ebf8f5b80d6bab992cd2d121bf4577f2265b20f (diff)
downloadlibvirt-ad2b3fdd1c77d9dd99bfecd7df640904689c3a81.tar.gz
remote: use a separate connection for nwfilter APIs
Reviewed-by: John Ferlan <jferlan@redhat.com> Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Diffstat (limited to 'src')
-rw-r--r--src/remote/remote_daemon.h1
-rw-r--r--src/remote/remote_daemon_dispatch.c3
-rwxr-xr-xsrc/rpc/gendispatch.pl6
3 files changed, 10 insertions, 0 deletions
diff --git a/src/remote/remote_daemon.h b/src/remote/remote_daemon.h
index 517eec1fc2..1b906401d3 100644
--- a/src/remote/remote_daemon.h
+++ b/src/remote/remote_daemon.h
@@ -77,6 +77,7 @@ struct daemonClientPrivate {
virConnectPtr interfaceConn;
virConnectPtr networkConn;
virConnectPtr nodedevConn;
+ virConnectPtr nwfilterConn;
daemonClientStreamPtr streams;
};
diff --git a/src/remote/remote_daemon_dispatch.c b/src/remote/remote_daemon_dispatch.c
index 668f67cca8..36190de8f2 100644
--- a/src/remote/remote_daemon_dispatch.c
+++ b/src/remote/remote_daemon_dispatch.c
@@ -1751,6 +1751,8 @@ void remoteClientFree(void *data)
virConnectClose(priv->networkConn);
if (priv->nodedevConn)
virConnectClose(priv->nodedevConn);
+ if (priv->nwfilterConn)
+ virConnectClose(priv->nwfilterConn);
VIR_FREE(priv);
}
@@ -1826,6 +1828,7 @@ remoteDispatchConnectOpen(virNetServerPtr server ATTRIBUTE_UNUSED,
priv->interfaceConn = virObjectRef(priv->conn);
priv->networkConn = virObjectRef(priv->conn);
priv->nodedevConn = virObjectRef(priv->conn);
+ priv->nwfilterConn = virObjectRef(priv->conn);
/* force update the @readonly attribute which was inherited from the
* virNetServerService object - this is important for sockets that are RW
diff --git a/src/rpc/gendispatch.pl b/src/rpc/gendispatch.pl
index af29d88b99..cccfcab743 100755
--- a/src/rpc/gendispatch.pl
+++ b/src/rpc/gendispatch.pl
@@ -134,6 +134,9 @@ sub get_conn_arg {
if ($type =~ /remote_nonnull_node_device/) {
return "priv->nodedevConn";
}
+ if ($type =~ /remote_nonnull_nwfilter/) {
+ return "priv->nwfilterConn";
+ }
}
# This is for the few virConnect APIs that
@@ -148,6 +151,9 @@ sub get_conn_arg {
if ($proc =~ /Node.*Device/) {
return "priv->nodedevConn";
}
+ if ($proc =~ /Connect.*NWFilter/) {
+ return "priv->nwfilterConn";
+ }
return "priv->conn";
}