if (netpriv->slirpfd) {
if (virJSONValueObjectAdd(&netprops,
"s:type", "socket",
- "s:fd", qemuFDPassGetPath(netpriv->slirpfd),
+ "s:fd", qemuFDPassDirectGetPath(netpriv->slirpfd),
NULL) < 0)
return NULL;
} else {
for (n = netpriv->vhostfds; n; n = n->next)
qemuFDPassDirectTransferCommand(n->data, cmd);
- if (qemuFDPassTransferCommand(netpriv->slirpfd, cmd) < 0 ||
- qemuFDPassTransferCommand(netpriv->vdpafd, cmd) < 0)
+ qemuFDPassDirectTransferCommand(netpriv->slirpfd, cmd);
+
+ if (qemuFDPassTransferCommand(netpriv->vdpafd, cmd) < 0)
return -1;
if (!(hostnetprops = qemuBuildHostNetProps(net)))
if (!priv)
return;
- g_clear_pointer(&priv->slirpfd, qemuFDPassFree);
+ g_clear_pointer(&priv->slirpfd, qemuFDPassDirectFree);
g_clear_pointer(&priv->vdpafd, qemuFDPassFree);
g_slist_free_full(g_steal_pointer(&priv->vhostfds), (GDestroyNotify) qemuFDPassDirectFree);
g_slist_free_full(g_steal_pointer(&priv->tapfds), (GDestroyNotify) qemuFDPassDirectFree);
qemuSlirp *slirp;
/* file descriptor transfer helpers */
- qemuFDPass *slirpfd;
+ qemuFDPassDirect *slirpfd;
GSList *tapfds; /* qemuFDPassDirect */
GSList *vhostfds; /* qemuFDPassDirect */
qemuFDPass *vdpafd;
}
}
- if (qemuFDPassTransferMonitor(netpriv->slirpfd, priv->mon) < 0 ||
+ if (qemuFDPassDirectTransferMonitor(netpriv->slirpfd, priv->mon) < 0 ||
qemuFDPassTransferMonitor(netpriv->vdpafd, priv->mon) < 0) {
qemuDomainObjExitMonitor(vm);
goto cleanup;
slirp->pid = pid;
- netpriv->slirpfd = qemuFDPassNewDirect(fdname, priv);
-
- qemuFDPassAddFD(netpriv->slirpfd, &slirp->fd[0], NULL);
+ netpriv->slirpfd = qemuFDPassDirectNew(fdname, &slirp->fd[0]);
return 0;