mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
qemuBuildHostNetProps: Don't use virJSONValueObjectAppendStringPrintf to format address
Prefer virJSONValueObjectAdd which we already use internally combined with local formatting of the string. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
f3a7338409
commit
cac6d59e80
@ -3804,6 +3804,15 @@ qemuBuildNicDevProps(virDomainDef *def,
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
static char *
|
||||||
|
qemuBuildHostNetSocketAddr(virDomainNetDef *net)
|
||||||
|
{
|
||||||
|
return g_strdup_printf("%s:%d",
|
||||||
|
NULLSTR_EMPTY(net->data.socket.address),
|
||||||
|
net->data.socket.port);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
virJSONValue *
|
virJSONValue *
|
||||||
qemuBuildHostNetProps(virDomainObj *vm,
|
qemuBuildHostNetProps(virDomainObj *vm,
|
||||||
virDomainNetDef *net)
|
virDomainNetDef *net)
|
||||||
@ -3885,40 +3894,53 @@ qemuBuildHostNetProps(virDomainObj *vm,
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VIR_DOMAIN_NET_TYPE_CLIENT:
|
case VIR_DOMAIN_NET_TYPE_CLIENT: {
|
||||||
if (virJSONValueObjectAdd(&netprops, "s:type", "socket", NULL) < 0 ||
|
g_autofree char *addr = qemuBuildHostNetSocketAddr(net);
|
||||||
virJSONValueObjectAppendStringPrintf(netprops, "connect", "%s:%d",
|
|
||||||
net->data.socket.address,
|
|
||||||
net->data.socket.port) < 0)
|
|
||||||
return NULL;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case VIR_DOMAIN_NET_TYPE_SERVER:
|
if (virJSONValueObjectAdd(&netprops,
|
||||||
if (virJSONValueObjectAdd(&netprops, "s:type", "socket", NULL) < 0 ||
|
"s:type", "socket",
|
||||||
virJSONValueObjectAppendStringPrintf(netprops, "listen", "%s:%d",
|
"s:connect", addr,
|
||||||
NULLSTR_EMPTY(net->data.socket.address),
|
NULL) < 0)
|
||||||
net->data.socket.port) < 0)
|
|
||||||
return NULL;
|
return NULL;
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
case VIR_DOMAIN_NET_TYPE_MCAST:
|
case VIR_DOMAIN_NET_TYPE_SERVER: {
|
||||||
if (virJSONValueObjectAdd(&netprops, "s:type", "socket", NULL) < 0 ||
|
g_autofree char *addr = qemuBuildHostNetSocketAddr(net);
|
||||||
virJSONValueObjectAppendStringPrintf(netprops, "mcast", "%s:%d",
|
|
||||||
net->data.socket.address,
|
|
||||||
net->data.socket.port) < 0)
|
|
||||||
return NULL;
|
|
||||||
break;
|
|
||||||
|
|
||||||
case VIR_DOMAIN_NET_TYPE_UDP:
|
if (virJSONValueObjectAdd(&netprops,
|
||||||
if (virJSONValueObjectAdd(&netprops, "s:type", "socket", NULL) < 0 ||
|
"s:type", "socket",
|
||||||
virJSONValueObjectAppendStringPrintf(netprops, "udp", "%s:%d",
|
"s:listen", addr,
|
||||||
net->data.socket.address,
|
NULL) < 0)
|
||||||
net->data.socket.port) < 0 ||
|
|
||||||
virJSONValueObjectAppendStringPrintf(netprops, "localaddr", "%s:%d",
|
|
||||||
net->data.socket.localaddr,
|
|
||||||
net->data.socket.localport) < 0)
|
|
||||||
return NULL;
|
return NULL;
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case VIR_DOMAIN_NET_TYPE_MCAST: {
|
||||||
|
g_autofree char *addr = qemuBuildHostNetSocketAddr(net);
|
||||||
|
|
||||||
|
if (virJSONValueObjectAdd(&netprops,
|
||||||
|
"s:type", "socket",
|
||||||
|
"s:mcast", addr,
|
||||||
|
NULL) < 0)
|
||||||
|
return NULL;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
case VIR_DOMAIN_NET_TYPE_UDP: {
|
||||||
|
g_autofree char *addr = qemuBuildHostNetSocketAddr(net);
|
||||||
|
g_autofree char *localaddr = g_strdup_printf("%s:%d",
|
||||||
|
net->data.socket.localaddr,
|
||||||
|
net->data.socket.localport);
|
||||||
|
|
||||||
|
if (virJSONValueObjectAdd(&netprops,
|
||||||
|
"s:type", "socket",
|
||||||
|
"s:udp", addr,
|
||||||
|
"s:localaddr", localaddr,
|
||||||
|
NULL) < 0)
|
||||||
|
return NULL;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
case VIR_DOMAIN_NET_TYPE_USER:
|
case VIR_DOMAIN_NET_TYPE_USER:
|
||||||
if (net->backend.type == VIR_DOMAIN_NET_BACKEND_PASST) {
|
if (net->backend.type == VIR_DOMAIN_NET_BACKEND_PASST) {
|
||||||
|
Loading…
Reference in New Issue
Block a user