Santize naming of socket address APIs

The socket address APIs in src/util/network.h either take the
form  virSocketAddrXXX, virSocketXXX or virSocketXXXAddr.

Sanitize this so everything is virSocketAddrXXXX, and ensure
that the virSocketAddr parameter is always the first one.

* src/util/network.c, src/util/network.h: Santize socket
  address API naming
* src/conf/domain_conf.c, src/conf/network_conf.c,
  src/conf/nwfilter_conf.c, src/network/bridge_driver.c,
  src/nwfilter/nwfilter_ebiptables_driver.c,
  src/nwfilter/nwfilter_learnipaddr.c,
  src/qemu/qemu_command.c, src/rpc/virnetsocket.c,
  src/util/dnsmasq.c, src/util/iptables.c,
  src/util/virnetdev.c, src/vbox/vbox_tmpl.c: Update for
  API renaming
This commit is contained in:
Daniel P. Berrange
2011-11-02 14:06:59 +00:00
parent e49c9bf25c
commit 4c544e6c61
18 changed files with 186 additions and 188 deletions

View File

@@ -3685,7 +3685,7 @@ virDomainChrDefParseTargetXML(virCapsPtr caps,
goto error; goto error;
} }
if (virSocketParseAddr(addrStr, def->target.addr, AF_UNSPEC) < 0) if (virSocketAddrParse(def->target.addr, addrStr, AF_UNSPEC) < 0)
goto error; goto error;
if (def->target.addr->data.stor.ss_family != AF_INET) { if (def->target.addr->data.stor.ss_family != AF_INET) {
@@ -3709,7 +3709,7 @@ virDomainChrDefParseTargetXML(virCapsPtr caps,
goto error; goto error;
} }
virSocketSetPort(def->target.addr, port); virSocketAddrSetPort(def->target.addr, port);
break; break;
case VIR_DOMAIN_CHR_CHANNEL_TARGET_TYPE_VIRTIO: case VIR_DOMAIN_CHR_CHANNEL_TARGET_TYPE_VIRTIO:
@@ -8379,8 +8379,8 @@ static bool virDomainChannelDefCheckABIStability(virDomainChrDefPtr src,
case VIR_DOMAIN_CHR_CHANNEL_TARGET_TYPE_GUESTFWD: case VIR_DOMAIN_CHR_CHANNEL_TARGET_TYPE_GUESTFWD:
if (memcmp(src->target.addr, dst->target.addr, if (memcmp(src->target.addr, dst->target.addr,
sizeof(*src->target.addr)) != 0) { sizeof(*src->target.addr)) != 0) {
char *saddr = virSocketFormatAddrFull(src->target.addr, true, ":"); char *saddr = virSocketAddrFormatFull(src->target.addr, true, ":");
char *daddr = virSocketFormatAddrFull(dst->target.addr, true, ":"); char *daddr = virSocketAddrFormatFull(dst->target.addr, true, ":");
virDomainReportError(VIR_ERR_CONFIG_UNSUPPORTED, virDomainReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("Target channel addr %s does not match source %s"), _("Target channel addr %s does not match source %s"),
NULLSTR(daddr), NULLSTR(saddr)); NULLSTR(daddr), NULLSTR(saddr));
@@ -10035,14 +10035,14 @@ virDomainChrDefFormat(virBufferPtr buf,
switch (def->targetType) { switch (def->targetType) {
case VIR_DOMAIN_CHR_CHANNEL_TARGET_TYPE_GUESTFWD: { case VIR_DOMAIN_CHR_CHANNEL_TARGET_TYPE_GUESTFWD: {
int port = virSocketGetPort(def->target.addr); int port = virSocketAddrGetPort(def->target.addr);
if (port < 0) { if (port < 0) {
virDomainReportError(VIR_ERR_INTERNAL_ERROR, "%s", virDomainReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("Unable to format guestfwd port")); _("Unable to format guestfwd port"));
return -1; return -1;
} }
const char *addr = virSocketFormatAddr(def->target.addr); const char *addr = virSocketAddrFormat(def->target.addr);
if (addr == NULL) if (addr == NULL)
return -1; return -1;

View File

@@ -286,7 +286,7 @@ virNetworkDefGetIpByIndex(const virNetworkDefPtr def,
/* find the nth ip of type "family" */ /* find the nth ip of type "family" */
for (ii = 0; ii < def->nips; ii++) { for (ii = 0; ii < def->nips; ii++) {
if (VIR_SOCKET_IS_FAMILY(&def->ips[ii].address, family) if (VIR_SOCKET_ADDR_IS_FAMILY(&def->ips[ii].address, family)
&& (n-- <= 0)) { && (n-- <= 0)) {
return &def->ips[ii]; return &def->ips[ii];
} }
@@ -302,9 +302,9 @@ int virNetworkIpDefPrefix(const virNetworkIpDefPtr def)
{ {
if (def->prefix > 0) { if (def->prefix > 0) {
return def->prefix; return def->prefix;
} else if (VIR_SOCKET_HAS_ADDR(&def->netmask)) { } else if (VIR_SOCKET_ADDR_VALID(&def->netmask)) {
return virSocketGetNumNetmaskBits(&def->netmask); return virSocketAddrGetNumNetmaskBits(&def->netmask);
} else if (VIR_SOCKET_IS_FAMILY(&def->address, AF_INET)) { } else if (VIR_SOCKET_ADDR_IS_FAMILY(&def->address, AF_INET)) {
/* Return the natural prefix for the network's ip address. /* Return the natural prefix for the network's ip address.
* On Linux we could use the IN_CLASSx() macros, but those * On Linux we could use the IN_CLASSx() macros, but those
* aren't guaranteed on all platforms, so we just deal with * aren't guaranteed on all platforms, so we just deal with
@@ -323,7 +323,7 @@ int virNetworkIpDefPrefix(const virNetworkIpDefPtr def)
return 24; return 24;
} }
return -1; return -1;
} else if (VIR_SOCKET_IS_FAMILY(&def->address, AF_INET6)) { } else if (VIR_SOCKET_ADDR_IS_FAMILY(&def->address, AF_INET6)) {
return 64; return 64;
} }
return -1; return -1;
@@ -336,13 +336,13 @@ int virNetworkIpDefPrefix(const virNetworkIpDefPtr def)
int virNetworkIpDefNetmask(const virNetworkIpDefPtr def, int virNetworkIpDefNetmask(const virNetworkIpDefPtr def,
virSocketAddrPtr netmask) virSocketAddrPtr netmask)
{ {
if (VIR_SOCKET_IS_FAMILY(&def->netmask, AF_INET)) { if (VIR_SOCKET_ADDR_IS_FAMILY(&def->netmask, AF_INET)) {
*netmask = def->netmask; *netmask = def->netmask;
return 0; return 0;
} }
return virSocketAddrPrefixToNetmask(virNetworkIpDefPrefix(def), netmask, return virSocketAddrPrefixToNetmask(virNetworkIpDefPrefix(def), netmask,
VIR_SOCKET_FAMILY(&def->address)); VIR_SOCKET_ADDR_FAMILY(&def->address));
} }
@@ -372,18 +372,18 @@ virNetworkDHCPRangeDefParseXML(const char *networkName,
continue; continue;
} }
if (virSocketParseAddr(start, &saddr, AF_UNSPEC) < 0) { if (virSocketAddrParse(&saddr, start, AF_UNSPEC) < 0) {
VIR_FREE(start); VIR_FREE(start);
VIR_FREE(end); VIR_FREE(end);
return -1; return -1;
} }
if (virSocketParseAddr(end, &eaddr, AF_UNSPEC) < 0) { if (virSocketAddrParse(&eaddr, end, AF_UNSPEC) < 0) {
VIR_FREE(start); VIR_FREE(start);
VIR_FREE(end); VIR_FREE(end);
return -1; return -1;
} }
range = virSocketGetRange(&saddr, &eaddr); range = virSocketAddrGetRange(&saddr, &eaddr);
if (range < 0) { if (range < 0) {
virNetworkReportError(VIR_ERR_XML_ERROR, virNetworkReportError(VIR_ERR_XML_ERROR,
_("Invalid dhcp range '%s' to '%s' in network '%s'"), _("Invalid dhcp range '%s' to '%s' in network '%s'"),
@@ -434,7 +434,7 @@ virNetworkDHCPRangeDefParseXML(const char *networkName,
} }
ip = virXMLPropString(cur, "ip"); ip = virXMLPropString(cur, "ip");
if ((ip == NULL) || if ((ip == NULL) ||
(virSocketParseAddr(ip, &inaddr, AF_UNSPEC) < 0)) { (virSocketAddrParse(&inaddr, ip, AF_UNSPEC) < 0)) {
virNetworkReportError(VIR_ERR_XML_ERROR, virNetworkReportError(VIR_ERR_XML_ERROR,
_("Missing IP address in static host definition for network '%s'"), _("Missing IP address in static host definition for network '%s'"),
networkName); networkName);
@@ -469,7 +469,7 @@ virNetworkDHCPRangeDefParseXML(const char *networkName,
server = virXMLPropString(cur, "server"); server = virXMLPropString(cur, "server");
if (server && if (server &&
virSocketParseAddr(server, &inaddr, AF_UNSPEC) < 0) { virSocketAddrParse(&inaddr, server, AF_UNSPEC) < 0) {
VIR_FREE(file); VIR_FREE(file);
VIR_FREE(server); VIR_FREE(server);
return -1; return -1;
@@ -504,7 +504,7 @@ virNetworkDNSHostsDefParseXML(virNetworkDNSDefPtr def,
} }
if (!(ip = virXMLPropString(node, "ip")) || if (!(ip = virXMLPropString(node, "ip")) ||
(virSocketParseAddr(ip, &inaddr, AF_UNSPEC) < 0)) { (virSocketAddrParse(&inaddr, ip, AF_UNSPEC) < 0)) {
virNetworkReportError(VIR_ERR_XML_DETAIL, virNetworkReportError(VIR_ERR_XML_DETAIL,
_("Missing IP address in DNS host definition")); _("Missing IP address in DNS host definition"));
VIR_FREE(ip); VIR_FREE(ip);
@@ -649,7 +649,7 @@ virNetworkIPParseXML(const char *networkName,
netmask = virXPathString("string(./@netmask)", ctxt); netmask = virXPathString("string(./@netmask)", ctxt);
if (address) { if (address) {
if (virSocketParseAddr(address, &def->address, AF_UNSPEC) < 0) { if (virSocketAddrParse(&def->address, address, AF_UNSPEC) < 0) {
virNetworkReportError(VIR_ERR_XML_ERROR, virNetworkReportError(VIR_ERR_XML_ERROR,
_("Bad address '%s' in definition of network '%s'"), _("Bad address '%s' in definition of network '%s'"),
address, networkName); address, networkName);
@@ -660,22 +660,22 @@ virNetworkIPParseXML(const char *networkName,
/* validate family vs. address */ /* validate family vs. address */
if (def->family == NULL) { if (def->family == NULL) {
if (!(VIR_SOCKET_IS_FAMILY(&def->address, AF_INET) || if (!(VIR_SOCKET_ADDR_IS_FAMILY(&def->address, AF_INET) ||
VIR_SOCKET_IS_FAMILY(&def->address, AF_UNSPEC))) { VIR_SOCKET_ADDR_IS_FAMILY(&def->address, AF_UNSPEC))) {
virNetworkReportError(VIR_ERR_CONFIG_UNSUPPORTED, virNetworkReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("no family specified for non-IPv4 address address '%s' in network '%s'"), _("no family specified for non-IPv4 address address '%s' in network '%s'"),
address, networkName); address, networkName);
goto error; goto error;
} }
} else if (STREQ(def->family, "ipv4")) { } else if (STREQ(def->family, "ipv4")) {
if (!VIR_SOCKET_IS_FAMILY(&def->address, AF_INET)) { if (!VIR_SOCKET_ADDR_IS_FAMILY(&def->address, AF_INET)) {
virNetworkReportError(VIR_ERR_CONFIG_UNSUPPORTED, virNetworkReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("family 'ipv4' specified for non-IPv4 address '%s' in network '%s'"), _("family 'ipv4' specified for non-IPv4 address '%s' in network '%s'"),
address, networkName); address, networkName);
goto error; goto error;
} }
} else if (STREQ(def->family, "ipv6")) { } else if (STREQ(def->family, "ipv6")) {
if (!VIR_SOCKET_IS_FAMILY(&def->address, AF_INET6)) { if (!VIR_SOCKET_ADDR_IS_FAMILY(&def->address, AF_INET6)) {
virNetworkReportError(VIR_ERR_CONFIG_UNSUPPORTED, virNetworkReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("family 'ipv6' specified for non-IPv6 address '%s' in network '%s'"), _("family 'ipv6' specified for non-IPv6 address '%s' in network '%s'"),
address, networkName); address, networkName);
@@ -698,7 +698,7 @@ virNetworkIPParseXML(const char *networkName,
goto error; goto error;
} }
if (!VIR_SOCKET_IS_FAMILY(&def->address, AF_INET)) { if (!VIR_SOCKET_ADDR_IS_FAMILY(&def->address, AF_INET)) {
virNetworkReportError(VIR_ERR_CONFIG_UNSUPPORTED, virNetworkReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("netmask not supported for address '%s' in network '%s' (IPv4 only)"), _("netmask not supported for address '%s' in network '%s' (IPv4 only)"),
address, networkName); address, networkName);
@@ -713,10 +713,10 @@ virNetworkIPParseXML(const char *networkName,
goto error; goto error;
} }
if (virSocketParseAddr(netmask, &def->netmask, AF_UNSPEC) < 0) if (virSocketAddrParse(&def->netmask, netmask, AF_UNSPEC) < 0)
goto error; goto error;
if (!VIR_SOCKET_IS_FAMILY(&def->netmask, AF_INET)) { if (!VIR_SOCKET_ADDR_IS_FAMILY(&def->netmask, AF_INET)) {
virNetworkReportError(VIR_ERR_CONFIG_UNSUPPORTED, virNetworkReportError(VIR_ERR_CONFIG_UNSUPPORTED,
_("network '%s' has invalid netmask '%s' for address '%s' (both must be IPv4)"), _("network '%s' has invalid netmask '%s' for address '%s' (both must be IPv4)"),
networkName, netmask, address); networkName, netmask, address);
@@ -724,7 +724,7 @@ virNetworkIPParseXML(const char *networkName,
} }
} }
if (VIR_SOCKET_IS_FAMILY(&def->address, AF_INET)) { if (VIR_SOCKET_ADDR_IS_FAMILY(&def->address, AF_INET)) {
/* parse IPv4-related info */ /* parse IPv4-related info */
cur = node->children; cur = node->children;
while (cur != NULL) { while (cur != NULL) {
@@ -1151,7 +1151,7 @@ virNetworkDNSDefFormat(virBufferPtr buf,
int ii, j; int ii, j;
for (ii = 0 ; ii < def->nhosts; ii++) { for (ii = 0 ; ii < def->nhosts; ii++) {
char *ip = virSocketFormatAddr(&def->hosts[ii].ip); char *ip = virSocketAddrFormat(&def->hosts[ii].ip);
virBufferAsprintf(buf, " <host ip='%s'>\n", ip); virBufferAsprintf(buf, " <host ip='%s'>\n", ip);
@@ -1180,15 +1180,15 @@ virNetworkIpDefFormat(virBufferPtr buf,
if (def->family) { if (def->family) {
virBufferAsprintf(buf, " family='%s'", def->family); virBufferAsprintf(buf, " family='%s'", def->family);
} }
if (VIR_SOCKET_HAS_ADDR(&def->address)) { if (VIR_SOCKET_ADDR_VALID(&def->address)) {
char *addr = virSocketFormatAddr(&def->address); char *addr = virSocketAddrFormat(&def->address);
if (!addr) if (!addr)
goto error; goto error;
virBufferAsprintf(buf, " address='%s'", addr); virBufferAsprintf(buf, " address='%s'", addr);
VIR_FREE(addr); VIR_FREE(addr);
} }
if (VIR_SOCKET_HAS_ADDR(&def->netmask)) { if (VIR_SOCKET_ADDR_VALID(&def->netmask)) {
char *addr = virSocketFormatAddr(&def->netmask); char *addr = virSocketAddrFormat(&def->netmask);
if (!addr) if (!addr)
goto error; goto error;
virBufferAsprintf(buf, " netmask='%s'", addr); virBufferAsprintf(buf, " netmask='%s'", addr);
@@ -1207,10 +1207,10 @@ virNetworkIpDefFormat(virBufferPtr buf,
int ii; int ii;
virBufferAddLit(buf, " <dhcp>\n"); virBufferAddLit(buf, " <dhcp>\n");
for (ii = 0 ; ii < def->nranges ; ii++) { for (ii = 0 ; ii < def->nranges ; ii++) {
char *saddr = virSocketFormatAddr(&def->ranges[ii].start); char *saddr = virSocketAddrFormat(&def->ranges[ii].start);
if (!saddr) if (!saddr)
goto error; goto error;
char *eaddr = virSocketFormatAddr(&def->ranges[ii].end); char *eaddr = virSocketAddrFormat(&def->ranges[ii].end);
if (!eaddr) { if (!eaddr) {
VIR_FREE(saddr); VIR_FREE(saddr);
goto error; goto error;
@@ -1226,8 +1226,8 @@ virNetworkIpDefFormat(virBufferPtr buf,
virBufferAsprintf(buf, "mac='%s' ", def->hosts[ii].mac); virBufferAsprintf(buf, "mac='%s' ", def->hosts[ii].mac);
if (def->hosts[ii].name) if (def->hosts[ii].name)
virBufferAsprintf(buf, "name='%s' ", def->hosts[ii].name); virBufferAsprintf(buf, "name='%s' ", def->hosts[ii].name);
if (VIR_SOCKET_HAS_ADDR(&def->hosts[ii].ip)) { if (VIR_SOCKET_ADDR_VALID(&def->hosts[ii].ip)) {
char *ipaddr = virSocketFormatAddr(&def->hosts[ii].ip); char *ipaddr = virSocketAddrFormat(&def->hosts[ii].ip);
if (!ipaddr) if (!ipaddr)
goto error; goto error;
virBufferAsprintf(buf, "ip='%s' ", ipaddr); virBufferAsprintf(buf, "ip='%s' ", ipaddr);
@@ -1238,8 +1238,8 @@ virNetworkIpDefFormat(virBufferPtr buf,
if (def->bootfile) { if (def->bootfile) {
virBufferEscapeString(buf, " <bootp file='%s' ", virBufferEscapeString(buf, " <bootp file='%s' ",
def->bootfile); def->bootfile);
if (VIR_SOCKET_HAS_ADDR(&def->bootserver)) { if (VIR_SOCKET_ADDR_VALID(&def->bootserver)) {
char *ipaddr = virSocketFormatAddr(&def->bootserver); char *ipaddr = virSocketAddrFormat(&def->bootserver);
if (!ipaddr) if (!ipaddr)
goto error; goto error;
virBufferEscapeString(buf, "server='%s' ", ipaddr); virBufferEscapeString(buf, "server='%s' ", ipaddr);

View File

@@ -1523,8 +1523,7 @@ virNWFilterRuleDetailsParse(xmlNodePtr node,
break; break;
case DATATYPE_IPADDR: case DATATYPE_IPADDR:
if (virSocketParseIpv4Addr(prop, if (virSocketAddrParseIPv4(&item->u.ipaddr, prop) < 0)
&item->u.ipaddr) < 0)
rc = -1; rc = -1;
found = 1; found = 1;
break; break;
@@ -1539,10 +1538,10 @@ virNWFilterRuleDetailsParse(xmlNodePtr node,
} else } else
rc = -1; rc = -1;
} else { } else {
if (virSocketParseIpv4Addr(prop, &ipaddr) < 0) { if (virSocketAddrParseIPv4(&ipaddr, prop) < 0) {
rc = -1; rc = -1;
} else { } else {
int_val = virSocketGetNumNetmaskBits(&ipaddr); int_val = virSocketAddrGetNumNetmaskBits(&ipaddr);
if (int_val >= 0) if (int_val >= 0)
item->u.u8 = int_val; item->u.u8 = int_val;
else else
@@ -1571,8 +1570,7 @@ virNWFilterRuleDetailsParse(xmlNodePtr node,
break; break;
case DATATYPE_IPV6ADDR: case DATATYPE_IPV6ADDR:
if (virSocketParseIpv6Addr(prop, if (virSocketAddrParseIPv6(&item->u.ipaddr, prop) < 0)
&item->u.ipaddr) < 0)
rc = -1; rc = -1;
found = 1; found = 1;
break; break;
@@ -1587,10 +1585,10 @@ virNWFilterRuleDetailsParse(xmlNodePtr node,
} else } else
rc = -1; rc = -1;
} else { } else {
if (virSocketParseIpv6Addr(prop, &ipaddr) < 0) { if (virSocketAddrParseIPv6(&ipaddr, prop) < 0) {
rc = -1; rc = -1;
} else { } else {
int_val = virSocketGetNumNetmaskBits(&ipaddr); int_val = virSocketAddrGetNumNetmaskBits(&ipaddr);
if (int_val >= 0) if (int_val >= 0)
item->u.u8 = int_val; item->u.u8 = int_val;
else else
@@ -2596,7 +2594,7 @@ virNWFilterObjDeleteDef(virNWFilterObjPtr nwfilter)
static void static void
virNWIPAddressFormat(virBufferPtr buf, virSocketAddrPtr ipaddr) virNWIPAddressFormat(virBufferPtr buf, virSocketAddrPtr ipaddr)
{ {
char *output = virSocketFormatAddr(ipaddr); char *output = virSocketAddrFormat(ipaddr);
if (output) { if (output) {
virBufferAdd(buf, output, -1); virBufferAdd(buf, output, -1);

View File

@@ -773,19 +773,19 @@ virBandwidthEnable;
virBandwidthEqual; virBandwidthEqual;
virSocketAddrBroadcast; virSocketAddrBroadcast;
virSocketAddrBroadcastByPrefix; virSocketAddrBroadcastByPrefix;
virSocketAddrCheckNetmask;
virSocketAddrFormat;
virSocketAddrFormatFull;
virSocketAddrGetPort;
virSocketAddrGetRange;
virSocketAddrIsNetmask; virSocketAddrIsNetmask;
virSocketAddrMask; virSocketAddrMask;
virSocketAddrMaskByPrefix; virSocketAddrMaskByPrefix;
virSocketAddrParse;
virSocketAddrParseIPv4;
virSocketAddrParseIPv6;
virSocketAddrPrefixToNetmask; virSocketAddrPrefixToNetmask;
virSocketCheckNetmask; virSocketAddrSetPort;
virSocketFormatAddr;
virSocketFormatAddrFull;
virSocketGetPort;
virSocketGetRange;
virSocketParseAddr;
virSocketParseIpv4Addr;
virSocketParseIpv6Addr;
virSocketSetPort;
virVirtualPortProfileEqual; virVirtualPortProfileEqual;
virVirtualPortProfileFormat; virVirtualPortProfileFormat;
virVirtualPortProfileParseXML; virVirtualPortProfileParseXML;

View File

@@ -432,7 +432,7 @@ networkBuildDnsmasqHostsfile(dnsmasqContext *dctx,
for (i = 0; i < ipdef->nhosts; i++) { for (i = 0; i < ipdef->nhosts; i++) {
virNetworkDHCPHostDefPtr host = &(ipdef->hosts[i]); virNetworkDHCPHostDefPtr host = &(ipdef->hosts[i]);
if ((host->mac) && VIR_SOCKET_HAS_ADDR(&host->ip)) if ((host->mac) && VIR_SOCKET_ADDR_VALID(&host->ip))
if (dnsmasqAddDhcpHost(dctx, host->mac, &host->ip, host->name) < 0) if (dnsmasqAddDhcpHost(dctx, host->mac, &host->ip, host->name) < 0)
return -1; return -1;
} }
@@ -440,7 +440,7 @@ networkBuildDnsmasqHostsfile(dnsmasqContext *dctx,
if (dnsdef) { if (dnsdef) {
for (i = 0; i < dnsdef->nhosts; i++) { for (i = 0; i < dnsdef->nhosts; i++) {
virNetworkDNSHostsDefPtr host = &(dnsdef->hosts[i]); virNetworkDNSHostsDefPtr host = &(dnsdef->hosts[i]);
if (VIR_SOCKET_HAS_ADDR(&host->ip)) { if (VIR_SOCKET_ADDR_VALID(&host->ip)) {
for (j = 0; j < host->nnames; j++) for (j = 0; j < host->nnames; j++)
if (dnsmasqAddHost(dctx, &host->ip, host->names[j]) < 0) if (dnsmasqAddHost(dctx, &host->ip, host->names[j]) < 0)
return -1; return -1;
@@ -543,7 +543,7 @@ networkBuildDnsmasqArgv(virNetworkObjPtr network,
for (ii = 0; for (ii = 0;
(tmpipdef = virNetworkDefGetIpByIndex(network->def, AF_UNSPEC, ii)); (tmpipdef = virNetworkDefGetIpByIndex(network->def, AF_UNSPEC, ii));
ii++) { ii++) {
char *ipaddr = virSocketFormatAddr(&tmpipdef->address); char *ipaddr = virSocketAddrFormat(&tmpipdef->address);
if (!ipaddr) if (!ipaddr)
goto cleanup; goto cleanup;
virCommandAddArgList(cmd, "--listen-address", ipaddr, NULL); virCommandAddArgList(cmd, "--listen-address", ipaddr, NULL);
@@ -552,10 +552,10 @@ networkBuildDnsmasqArgv(virNetworkObjPtr network,
if (ipdef) { if (ipdef) {
for (r = 0 ; r < ipdef->nranges ; r++) { for (r = 0 ; r < ipdef->nranges ; r++) {
char *saddr = virSocketFormatAddr(&ipdef->ranges[r].start); char *saddr = virSocketAddrFormat(&ipdef->ranges[r].start);
if (!saddr) if (!saddr)
goto cleanup; goto cleanup;
char *eaddr = virSocketFormatAddr(&ipdef->ranges[r].end); char *eaddr = virSocketAddrFormat(&ipdef->ranges[r].end);
if (!eaddr) { if (!eaddr) {
VIR_FREE(saddr); VIR_FREE(saddr);
goto cleanup; goto cleanup;
@@ -564,8 +564,8 @@ networkBuildDnsmasqArgv(virNetworkObjPtr network,
virCommandAddArgFormat(cmd, "%s,%s", saddr, eaddr); virCommandAddArgFormat(cmd, "%s,%s", saddr, eaddr);
VIR_FREE(saddr); VIR_FREE(saddr);
VIR_FREE(eaddr); VIR_FREE(eaddr);
nbleases += virSocketGetRange(&ipdef->ranges[r].start, nbleases += virSocketAddrGetRange(&ipdef->ranges[r].start,
&ipdef->ranges[r].end); &ipdef->ranges[r].end);
} }
/* /*
@@ -574,7 +574,7 @@ networkBuildDnsmasqArgv(virNetworkObjPtr network,
* dnsmasq. * dnsmasq.
*/ */
if (!ipdef->nranges && ipdef->nhosts) { if (!ipdef->nranges && ipdef->nhosts) {
char *bridgeaddr = virSocketFormatAddr(&ipdef->address); char *bridgeaddr = virSocketAddrFormat(&ipdef->address);
if (!bridgeaddr) if (!bridgeaddr)
goto cleanup; goto cleanup;
virCommandAddArg(cmd, "--dhcp-range"); virCommandAddArg(cmd, "--dhcp-range");
@@ -615,8 +615,8 @@ networkBuildDnsmasqArgv(virNetworkObjPtr network,
} }
if (ipdef->bootfile) { if (ipdef->bootfile) {
virCommandAddArg(cmd, "--dhcp-boot"); virCommandAddArg(cmd, "--dhcp-boot");
if (VIR_SOCKET_HAS_ADDR(&ipdef->bootserver)) { if (VIR_SOCKET_ADDR_VALID(&ipdef->bootserver)) {
char *bootserver = virSocketFormatAddr(&ipdef->bootserver); char *bootserver = virSocketAddrFormat(&ipdef->bootserver);
if (!bootserver) if (!bootserver)
goto cleanup; goto cleanup;
@@ -815,7 +815,7 @@ networkStartRadvd(virNetworkObjPtr network)
network->def->bridge); network->def->bridge);
goto cleanup; goto cleanup;
} }
if (!(netaddr = virSocketFormatAddr(&ipdef->address))) if (!(netaddr = virSocketAddrFormat(&ipdef->address)))
goto cleanup; goto cleanup;
virBufferAsprintf(&configbuf, virBufferAsprintf(&configbuf,
" prefix %s/%d\n" " prefix %s/%d\n"
@@ -1389,9 +1389,9 @@ networkAddIpSpecificIptablesRules(struct network_driver *driver,
*/ */
if (network->def->forwardType == VIR_NETWORK_FORWARD_NAT) { if (network->def->forwardType == VIR_NETWORK_FORWARD_NAT) {
if (VIR_SOCKET_IS_FAMILY(&ipdef->address, AF_INET)) if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET))
return networkAddMasqueradingIptablesRules(driver, network, ipdef); return networkAddMasqueradingIptablesRules(driver, network, ipdef);
else if (VIR_SOCKET_IS_FAMILY(&ipdef->address, AF_INET6)) else if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET6))
return networkAddRoutingIptablesRules(driver, network, ipdef); return networkAddRoutingIptablesRules(driver, network, ipdef);
} else if (network->def->forwardType == VIR_NETWORK_FORWARD_ROUTE) { } else if (network->def->forwardType == VIR_NETWORK_FORWARD_ROUTE) {
return networkAddRoutingIptablesRules(driver, network, ipdef); return networkAddRoutingIptablesRules(driver, network, ipdef);
@@ -1405,9 +1405,9 @@ networkRemoveIpSpecificIptablesRules(struct network_driver *driver,
virNetworkIpDefPtr ipdef) virNetworkIpDefPtr ipdef)
{ {
if (network->def->forwardType == VIR_NETWORK_FORWARD_NAT) { if (network->def->forwardType == VIR_NETWORK_FORWARD_NAT) {
if (VIR_SOCKET_IS_FAMILY(&ipdef->address, AF_INET)) if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET))
networkRemoveMasqueradingIptablesRules(driver, network, ipdef); networkRemoveMasqueradingIptablesRules(driver, network, ipdef);
else if (VIR_SOCKET_IS_FAMILY(&ipdef->address, AF_INET6)) else if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET6))
networkRemoveRoutingIptablesRules(driver, network, ipdef); networkRemoveRoutingIptablesRules(driver, network, ipdef);
} else if (network->def->forwardType == VIR_NETWORK_FORWARD_ROUTE) { } else if (network->def->forwardType == VIR_NETWORK_FORWARD_ROUTE) {
networkRemoveRoutingIptablesRules(driver, network, ipdef); networkRemoveRoutingIptablesRules(driver, network, ipdef);
@@ -1746,9 +1746,9 @@ networkStartNetworkVirtual(struct network_driver *driver,
for (ii = 0; for (ii = 0;
(ipdef = virNetworkDefGetIpByIndex(network->def, AF_UNSPEC, ii)); (ipdef = virNetworkDefGetIpByIndex(network->def, AF_UNSPEC, ii));
ii++) { ii++) {
if (VIR_SOCKET_IS_FAMILY(&ipdef->address, AF_INET)) if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET))
v4present = true; v4present = true;
if (VIR_SOCKET_IS_FAMILY(&ipdef->address, AF_INET6)) if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET6))
v6present = true; v6present = true;
/* Add the IP address/netmask to the bridge */ /* Add the IP address/netmask to the bridge */
@@ -2302,7 +2302,7 @@ static virNetworkPtr networkDefine(virConnectPtr conn, const char *xml) {
for (ii = 0; for (ii = 0;
(ipdef = virNetworkDefGetIpByIndex(def, AF_UNSPEC, ii)); (ipdef = virNetworkDefGetIpByIndex(def, AF_UNSPEC, ii));
ii++) { ii++) {
if (VIR_SOCKET_IS_FAMILY(&ipdef->address, AF_INET)) { if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET)) {
if (ipdef->nranges || ipdef->nhosts) { if (ipdef->nranges || ipdef->nhosts) {
if (ipv4def) { if (ipv4def) {
networkReportError(VIR_ERR_CONFIG_UNSUPPORTED, networkReportError(VIR_ERR_CONFIG_UNSUPPORTED,
@@ -2366,10 +2366,10 @@ static int networkUndefine(virNetworkPtr net) {
for (ii = 0; for (ii = 0;
(ipdef = virNetworkDefGetIpByIndex(network->def, AF_UNSPEC, ii)); (ipdef = virNetworkDefGetIpByIndex(network->def, AF_UNSPEC, ii));
ii++) { ii++) {
if (VIR_SOCKET_IS_FAMILY(&ipdef->address, AF_INET)) { if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET)) {
if (ipdef->nranges || ipdef->nhosts) if (ipdef->nranges || ipdef->nhosts)
dhcp_present = true; dhcp_present = true;
} else if (VIR_SOCKET_IS_FAMILY(&ipdef->address, AF_INET6)) { } else if (VIR_SOCKET_ADDR_IS_FAMILY(&ipdef->address, AF_INET6)) {
v6present = true; v6present = true;
} }
} }
@@ -3165,7 +3165,7 @@ networkGetNetworkAddress(const char *netname, char **netaddr)
} }
if (addrptr && if (addrptr &&
(*netaddr = virSocketFormatAddr(addrptr))) { (*netaddr = virSocketAddrFormat(addrptr))) {
ret = 0; ret = 0;
} }

View File

@@ -196,7 +196,7 @@ _printDataType(virNWFilterHashTablePtr vars,
switch (item->datatype) { switch (item->datatype) {
case DATATYPE_IPADDR: case DATATYPE_IPADDR:
data = virSocketFormatAddr(&item->u.ipaddr); data = virSocketAddrFormat(&item->u.ipaddr);
if (!data) if (!data)
return 1; return 1;
if (snprintf(buf, bufsize, "%s", data) >= bufsize) { if (snprintf(buf, bufsize, "%s", data) >= bufsize) {
@@ -209,7 +209,7 @@ _printDataType(virNWFilterHashTablePtr vars,
break; break;
case DATATYPE_IPV6ADDR: case DATATYPE_IPV6ADDR:
data = virSocketFormatAddr(&item->u.ipaddr); data = virSocketAddrFormat(&item->u.ipaddr);
if (!data) if (!data)
return 1; return 1;

View File

@@ -630,7 +630,7 @@ learnIPAddressThread(void *arg)
sa.data.inet4.sin_addr.s_addr = vmaddr; sa.data.inet4.sin_addr.s_addr = vmaddr;
char *inetaddr; char *inetaddr;
if ((inetaddr = virSocketFormatAddr(&sa))!= NULL) { if ((inetaddr = virSocketAddrFormat(&sa))!= NULL) {
virNWFilterAddIpAddrForIfname(req->ifname, inetaddr); virNWFilterAddIpAddrForIfname(req->ifname, inetaddr);
ret = virNWFilterInstantiateFilterLate(NULL, ret = virNWFilterInstantiateFilterLate(NULL,

View File

@@ -4440,10 +4440,10 @@ qemuBuildCommandLine(virConnectPtr conn,
virCommandAddArg(cmd, devstr); virCommandAddArg(cmd, devstr);
VIR_FREE(devstr); VIR_FREE(devstr);
addr = virSocketFormatAddr(channel->target.addr); addr = virSocketAddrFormat(channel->target.addr);
if (!addr) if (!addr)
goto error; goto error;
port = virSocketGetPort(channel->target.addr); port = virSocketAddrGetPort(channel->target.addr);
virCommandAddArg(cmd, "-netdev"); virCommandAddArg(cmd, "-netdev");
virCommandAddArgFormat(cmd, virCommandAddArgFormat(cmd,

View File

@@ -163,11 +163,11 @@ static virNetSocketPtr virNetSocketNew(virSocketAddrPtr localAddr,
if (localAddr && if (localAddr &&
!(sock->localAddrStr = virSocketFormatAddrFull(localAddr, true, ";"))) !(sock->localAddrStr = virSocketAddrFormatFull(localAddr, true, ";")))
goto error; goto error;
if (remoteAddr && if (remoteAddr &&
!(sock->remoteAddrStr = virSocketFormatAddrFull(remoteAddr, true, ";"))) !(sock->remoteAddrStr = virSocketAddrFormatFull(remoteAddr, true, ";")))
goto error; goto error;
sock->client = isClient; sock->client = isClient;
@@ -809,7 +809,7 @@ int virNetSocketGetPort(virNetSocketPtr sock)
{ {
int port; int port;
virMutexLock(&sock->lock); virMutexLock(&sock->lock);
port = virSocketGetPort(&sock->localAddr); port = virSocketAddrGetPort(&sock->localAddr);
virMutexUnlock(&sock->lock); virMutexUnlock(&sock->lock);
return port; return port;
} }

View File

@@ -95,7 +95,7 @@ addnhostsAdd(dnsmasqAddnHostsfile *addnhostsfile,
int idx = -1; int idx = -1;
int i; int i;
if (!(ipstr = virSocketFormatAddr(ip))) if (!(ipstr = virSocketAddrFormat(ip)))
return -1; return -1;
for (i = 0; i < addnhostsfile->nhosts; i++) { for (i = 0; i < addnhostsfile->nhosts; i++) {
@@ -300,7 +300,7 @@ hostsfileAdd(dnsmasqHostsfile *hostsfile,
if (VIR_REALLOC_N(hostsfile->hosts, hostsfile->nhosts + 1) < 0) if (VIR_REALLOC_N(hostsfile->hosts, hostsfile->nhosts + 1) < 0)
goto alloc_error; goto alloc_error;
if (!(ipstr = virSocketFormatAddr(ip))) if (!(ipstr = virSocketAddrFormat(ip)))
return -1; return -1;
if (name) { if (name) {

View File

@@ -291,8 +291,8 @@ static char *iptablesFormatNetwork(virSocketAddr *netaddr,
char *netstr; char *netstr;
char *ret; char *ret;
if (!(VIR_SOCKET_IS_FAMILY(netaddr, AF_INET) || if (!(VIR_SOCKET_ADDR_IS_FAMILY(netaddr, AF_INET) ||
VIR_SOCKET_IS_FAMILY(netaddr, AF_INET6))) { VIR_SOCKET_ADDR_IS_FAMILY(netaddr, AF_INET6))) {
iptablesError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", iptablesError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
_("Only IPv4 or IPv6 addresses can be used with iptables")); _("Only IPv4 or IPv6 addresses can be used with iptables"));
return NULL; return NULL;
@@ -304,7 +304,7 @@ static char *iptablesFormatNetwork(virSocketAddr *netaddr,
return NULL; return NULL;
} }
netstr = virSocketFormatAddr(&network); netstr = virSocketAddrFormat(&network);
if (!netstr) if (!netstr)
return NULL; return NULL;
@@ -336,7 +336,7 @@ iptablesForwardAllowOut(iptablesContext *ctx,
if (physdev && physdev[0]) { if (physdev && physdev[0]) {
ret = iptablesAddRemoveRule(ctx->forward_filter, ret = iptablesAddRemoveRule(ctx->forward_filter,
VIR_SOCKET_FAMILY(netaddr), VIR_SOCKET_ADDR_FAMILY(netaddr),
action, action,
"--source", networkstr, "--source", networkstr,
"--in-interface", iface, "--in-interface", iface,
@@ -345,7 +345,7 @@ iptablesForwardAllowOut(iptablesContext *ctx,
NULL); NULL);
} else { } else {
ret = iptablesAddRemoveRule(ctx->forward_filter, ret = iptablesAddRemoveRule(ctx->forward_filter,
VIR_SOCKET_FAMILY(netaddr), VIR_SOCKET_ADDR_FAMILY(netaddr),
action, action,
"--source", networkstr, "--source", networkstr,
"--in-interface", iface, "--in-interface", iface,
@@ -422,7 +422,7 @@ iptablesForwardAllowRelatedIn(iptablesContext *ctx,
if (physdev && physdev[0]) { if (physdev && physdev[0]) {
ret = iptablesAddRemoveRule(ctx->forward_filter, ret = iptablesAddRemoveRule(ctx->forward_filter,
VIR_SOCKET_FAMILY(netaddr), VIR_SOCKET_ADDR_FAMILY(netaddr),
action, action,
"--destination", networkstr, "--destination", networkstr,
"--in-interface", physdev, "--in-interface", physdev,
@@ -433,7 +433,7 @@ iptablesForwardAllowRelatedIn(iptablesContext *ctx,
NULL); NULL);
} else { } else {
ret = iptablesAddRemoveRule(ctx->forward_filter, ret = iptablesAddRemoveRule(ctx->forward_filter,
VIR_SOCKET_FAMILY(netaddr), VIR_SOCKET_ADDR_FAMILY(netaddr),
action, action,
"--destination", networkstr, "--destination", networkstr,
"--out-interface", iface, "--out-interface", iface,
@@ -510,7 +510,7 @@ iptablesForwardAllowIn(iptablesContext *ctx,
if (physdev && physdev[0]) { if (physdev && physdev[0]) {
ret = iptablesAddRemoveRule(ctx->forward_filter, ret = iptablesAddRemoveRule(ctx->forward_filter,
VIR_SOCKET_FAMILY(netaddr), VIR_SOCKET_ADDR_FAMILY(netaddr),
action, action,
"--destination", networkstr, "--destination", networkstr,
"--in-interface", physdev, "--in-interface", physdev,
@@ -519,7 +519,7 @@ iptablesForwardAllowIn(iptablesContext *ctx,
NULL); NULL);
} else { } else {
ret = iptablesAddRemoveRule(ctx->forward_filter, ret = iptablesAddRemoveRule(ctx->forward_filter,
VIR_SOCKET_FAMILY(netaddr), VIR_SOCKET_ADDR_FAMILY(netaddr),
action, action,
"--destination", networkstr, "--destination", networkstr,
"--out-interface", iface, "--out-interface", iface,
@@ -761,7 +761,7 @@ iptablesForwardMasquerade(iptablesContext *ctx,
if (!(networkstr = iptablesFormatNetwork(netaddr, prefix))) if (!(networkstr = iptablesFormatNetwork(netaddr, prefix)))
return -1; return -1;
if (!VIR_SOCKET_IS_FAMILY(netaddr, AF_INET)) { if (!VIR_SOCKET_ADDR_IS_FAMILY(netaddr, AF_INET)) {
/* Higher level code *should* guaranteee it's impossible to get here. */ /* Higher level code *should* guaranteee it's impossible to get here. */
iptablesError(VIR_ERR_INTERNAL_ERROR, iptablesError(VIR_ERR_INTERNAL_ERROR,
_("Attempted to NAT '%s'. NAT is only supported for IPv4."), _("Attempted to NAT '%s'. NAT is only supported for IPv4."),

View File

@@ -27,12 +27,12 @@
* Helpers to extract the IP arrays from the virSocketAddrPtr * Helpers to extract the IP arrays from the virSocketAddrPtr
* That part is the less portable of the module * That part is the less portable of the module
*/ */
typedef unsigned char virIPv4Addr[4]; typedef unsigned char virSocketAddrIPv4[4];
typedef virIPv4Addr *virIPv4AddrPtr; typedef virSocketAddrIPv4 *virSocketAddrIPv4Ptr;
typedef unsigned short virIPv6Addr[8]; typedef unsigned short virSocketAddrIPv6[8];
typedef virIPv6Addr *virIPv6AddrPtr; typedef virSocketAddrIPv6 *virSocketAddrIPv6Ptr;
static int getIPv4Addr(virSocketAddrPtr addr, virIPv4AddrPtr tab) { static int virSocketAddrGetIPv4Addr(virSocketAddrPtr addr, virSocketAddrIPv4Ptr tab) {
unsigned long val; unsigned long val;
int i; int i;
@@ -49,7 +49,7 @@ static int getIPv4Addr(virSocketAddrPtr addr, virIPv4AddrPtr tab) {
return(0); return(0);
} }
static int getIPv6Addr(virSocketAddrPtr addr, virIPv6AddrPtr tab) { static int virSocketAddrGetIPv6Addr(virSocketAddrPtr addr, virSocketAddrIPv6Ptr tab) {
int i; int i;
if ((addr == NULL) || (tab == NULL) || (addr->data.stor.ss_family != AF_INET6)) if ((addr == NULL) || (tab == NULL) || (addr->data.stor.ss_family != AF_INET6))
@@ -64,7 +64,7 @@ static int getIPv6Addr(virSocketAddrPtr addr, virIPv6AddrPtr tab) {
} }
/** /**
* virSocketParseAddr: * virSocketAddrParse:
* @val: a numeric network address IPv4 or IPv6 * @val: a numeric network address IPv4 or IPv6
* @addr: where to store the return value, optional. * @addr: where to store the return value, optional.
* @family: address family to pass down to getaddrinfo * @family: address family to pass down to getaddrinfo
@@ -74,8 +74,7 @@ static int getIPv6Addr(virSocketAddrPtr addr, virIPv6AddrPtr tab) {
* *
* Returns the length of the network address or -1 in case of error. * Returns the length of the network address or -1 in case of error.
*/ */
int int virSocketAddrParse(virSocketAddrPtr addr, const char *val, int family) {
virSocketParseAddr(const char *val, virSocketAddrPtr addr, int family) {
int len; int len;
struct addrinfo hints; struct addrinfo hints;
struct addrinfo *res = NULL; struct addrinfo *res = NULL;
@@ -114,7 +113,7 @@ virSocketParseAddr(const char *val, virSocketAddrPtr addr, int family) {
} }
/* /*
* virSocketParseIpv4Addr: * virSocketAddrParseIPv4:
* @val: an IPv4 numeric address * @val: an IPv4 numeric address
* @addr: the location to store the result * @addr: the location to store the result
* *
@@ -123,12 +122,12 @@ virSocketParseAddr(const char *val, virSocketAddrPtr addr, int family) {
* Returns the length of the network address or -1 in case of error. * Returns the length of the network address or -1 in case of error.
*/ */
int int
virSocketParseIpv4Addr(const char *val, virSocketAddrPtr addr) { virSocketAddrParseIPv4(virSocketAddrPtr addr, const char *val) {
return(virSocketParseAddr(val, addr, AF_INET)); return virSocketAddrParse(addr, val, AF_INET);
} }
/* /*
* virSocketParseIpv6Addr: * virSocketAddrParseIPv6:
* @val: an IPv6 numeric address * @val: an IPv6 numeric address
* @addr: the location to store the result * @addr: the location to store the result
* *
@@ -137,12 +136,12 @@ virSocketParseIpv4Addr(const char *val, virSocketAddrPtr addr) {
* Returns the length of the network address or -1 in case of error. * Returns the length of the network address or -1 in case of error.
*/ */
int int
virSocketParseIpv6Addr(const char *val, virSocketAddrPtr addr) { virSocketAddrParseIPv6(virSocketAddrPtr addr, const char *val) {
return(virSocketParseAddr(val, addr, AF_INET6)); return virSocketAddrParse(addr, val, AF_INET6);
} }
/* /*
* virSocketFormatAddr: * virSocketAddrFormat:
* @addr: an initialized virSocketAddrPtr * @addr: an initialized virSocketAddrPtr
* *
* Returns a string representation of the given address * Returns a string representation of the given address
@@ -150,13 +149,13 @@ virSocketParseIpv6Addr(const char *val, virSocketAddrPtr addr) {
* Caller must free the returned string * Caller must free the returned string
*/ */
char * char *
virSocketFormatAddr(virSocketAddrPtr addr) { virSocketAddrFormat(virSocketAddrPtr addr) {
return virSocketFormatAddrFull(addr, false, NULL); return virSocketAddrFormatFull(addr, false, NULL);
} }
/* /*
* virSocketFormatAddrFull: * virSocketAddrFormatFull:
* @addr: an initialized virSocketAddrPtr * @addr: an initialized virSocketAddrPtr
* @withService: if true, then service info is appended * @withService: if true, then service info is appended
* @separator: separator between hostname & service. * @separator: separator between hostname & service.
@@ -166,7 +165,7 @@ virSocketFormatAddr(virSocketAddrPtr addr) {
* Caller must free the returned string * Caller must free the returned string
*/ */
char * char *
virSocketFormatAddrFull(virSocketAddrPtr addr, virSocketAddrFormatFull(virSocketAddrPtr addr,
bool withService, bool withService,
const char *separator) const char *separator)
{ {
@@ -221,7 +220,7 @@ no_memory:
/* /*
* virSocketSetPort: * virSocketAddrSetPort:
* @addr: an initialized virSocketAddrPtr * @addr: an initialized virSocketAddrPtr
* @port: the port number to set * @port: the port number to set
* *
@@ -230,7 +229,7 @@ no_memory:
* Returns 0 on success, -1 on failure * Returns 0 on success, -1 on failure
*/ */
int int
virSocketSetPort(virSocketAddrPtr addr, int port) { virSocketAddrSetPort(virSocketAddrPtr addr, int port) {
if (addr == NULL) if (addr == NULL)
return -1; return -1;
@@ -259,7 +258,7 @@ virSocketSetPort(virSocketAddrPtr addr, int port) {
* Returns -1 if @addr is invalid * Returns -1 if @addr is invalid
*/ */
int int
virSocketGetPort(virSocketAddrPtr addr) { virSocketAddrGetPort(virSocketAddrPtr addr) {
if (addr == NULL) if (addr == NULL)
return -1; return -1;
@@ -283,7 +282,7 @@ virSocketGetPort(virSocketAddrPtr addr) {
* Returns 0 in case of success and -1 in case of error * Returns 0 in case of success and -1 in case of error
*/ */
int virSocketAddrIsNetmask(virSocketAddrPtr netmask) { int virSocketAddrIsNetmask(virSocketAddrPtr netmask) {
int n = virSocketGetNumNetmaskBits(netmask); int n = virSocketAddrGetNumNetmaskBits(netmask);
if (n < 0) if (n < 0)
return -1; return -1;
return 0; return 0;
@@ -429,8 +428,8 @@ virSocketAddrBroadcastByPrefix(const virSocketAddrPtr addr,
* Returns 1 in case of success and 0 in case of failure and * Returns 1 in case of success and 0 in case of failure and
* -1 in case of error * -1 in case of error
*/ */
int virSocketCheckNetmask(virSocketAddrPtr addr1, virSocketAddrPtr addr2, int virSocketAddrCheckNetmask(virSocketAddrPtr addr1, virSocketAddrPtr addr2,
virSocketAddrPtr netmask) { virSocketAddrPtr netmask) {
int i; int i;
if ((addr1 == NULL) || (addr2 == NULL) || (netmask == NULL)) if ((addr1 == NULL) || (addr2 == NULL) || (netmask == NULL))
@@ -443,11 +442,11 @@ int virSocketCheckNetmask(virSocketAddrPtr addr1, virSocketAddrPtr addr2,
return(-1); return(-1);
if (addr1->data.stor.ss_family == AF_INET) { if (addr1->data.stor.ss_family == AF_INET) {
virIPv4Addr t1, t2, tm; virSocketAddrIPv4 t1, t2, tm;
if ((getIPv4Addr(addr1, &t1) < 0) || if ((virSocketAddrGetIPv4Addr(addr1, &t1) < 0) ||
(getIPv4Addr(addr2, &t2) < 0) || (virSocketAddrGetIPv4Addr(addr2, &t2) < 0) ||
(getIPv4Addr(netmask, &tm) < 0)) (virSocketAddrGetIPv4Addr(netmask, &tm) < 0))
return(-1); return(-1);
for (i = 0;i < 4;i++) { for (i = 0;i < 4;i++) {
@@ -456,11 +455,11 @@ int virSocketCheckNetmask(virSocketAddrPtr addr1, virSocketAddrPtr addr2,
} }
} else if (addr1->data.stor.ss_family == AF_INET6) { } else if (addr1->data.stor.ss_family == AF_INET6) {
virIPv6Addr t1, t2, tm; virSocketAddrIPv6 t1, t2, tm;
if ((getIPv6Addr(addr1, &t1) < 0) || if ((virSocketAddrGetIPv6Addr(addr1, &t1) < 0) ||
(getIPv6Addr(addr2, &t2) < 0) || (virSocketAddrGetIPv6Addr(addr2, &t2) < 0) ||
(getIPv6Addr(netmask, &tm) < 0)) (virSocketAddrGetIPv6Addr(netmask, &tm) < 0))
return(-1); return(-1);
for (i = 0;i < 8;i++) { for (i = 0;i < 8;i++) {
@@ -486,7 +485,7 @@ int virSocketCheckNetmask(virSocketAddrPtr addr1, virSocketAddrPtr addr2,
* *
* Returns the size of the range or -1 in case of failure * Returns the size of the range or -1 in case of failure
*/ */
int virSocketGetRange(virSocketAddrPtr start, virSocketAddrPtr end) { int virSocketAddrGetRange(virSocketAddrPtr start, virSocketAddrPtr end) {
int ret = 0, i; int ret = 0, i;
if ((start == NULL) || (end == NULL)) if ((start == NULL) || (end == NULL))
@@ -495,10 +494,10 @@ int virSocketGetRange(virSocketAddrPtr start, virSocketAddrPtr end) {
return(-1); return(-1);
if (start->data.stor.ss_family == AF_INET) { if (start->data.stor.ss_family == AF_INET) {
virIPv4Addr t1, t2; virSocketAddrIPv4 t1, t2;
if ((getIPv4Addr(start, &t1) < 0) || if ((virSocketAddrGetIPv4Addr(start, &t1) < 0) ||
(getIPv4Addr(end, &t2) < 0)) (virSocketAddrGetIPv4Addr(end, &t2) < 0))
return(-1); return(-1);
for (i = 0;i < 2;i++) { for (i = 0;i < 2;i++) {
@@ -510,10 +509,10 @@ int virSocketGetRange(virSocketAddrPtr start, virSocketAddrPtr end) {
return(-1); return(-1);
ret++; ret++;
} else if (start->data.stor.ss_family == AF_INET6) { } else if (start->data.stor.ss_family == AF_INET6) {
virIPv6Addr t1, t2; virSocketAddrIPv6 t1, t2;
if ((getIPv6Addr(start, &t1) < 0) || if ((virSocketAddrGetIPv6Addr(start, &t1) < 0) ||
(getIPv6Addr(end, &t2) < 0)) (virSocketAddrGetIPv6Addr(end, &t2) < 0))
return(-1); return(-1);
for (i = 0;i < 7;i++) { for (i = 0;i < 7;i++) {
@@ -532,7 +531,7 @@ int virSocketGetRange(virSocketAddrPtr start, virSocketAddrPtr end) {
/** /**
* virGetNumNetmaskBits * virSocketAddrGetNumNetmaskBits
* @netmask: the presumed netmask * @netmask: the presumed netmask
* *
* Get the number of netmask bits in a netmask. * Get the number of netmask bits in a netmask.
@@ -540,16 +539,16 @@ int virSocketGetRange(virSocketAddrPtr start, virSocketAddrPtr end) {
* Returns the number of bits in the netmask or -1 if an error occurred * Returns the number of bits in the netmask or -1 if an error occurred
* or the netmask is invalid. * or the netmask is invalid.
*/ */
int virSocketGetNumNetmaskBits(const virSocketAddrPtr netmask) int virSocketAddrGetNumNetmaskBits(const virSocketAddrPtr netmask)
{ {
int i, j; int i, j;
int c = 0; int c = 0;
if (netmask->data.stor.ss_family == AF_INET) { if (netmask->data.stor.ss_family == AF_INET) {
virIPv4Addr tm; virSocketAddrIPv4 tm;
uint8_t bit; uint8_t bit;
if (getIPv4Addr(netmask, &tm) < 0) if (virSocketAddrGetIPv4Addr(netmask, &tm) < 0)
return -1; return -1;
for (i = 0; i < 4; i++) for (i = 0; i < 4; i++)
@@ -580,10 +579,10 @@ int virSocketGetNumNetmaskBits(const virSocketAddrPtr netmask)
return c; return c;
} else if (netmask->data.stor.ss_family == AF_INET6) { } else if (netmask->data.stor.ss_family == AF_INET6) {
virIPv6Addr tm; virSocketAddrIPv6 tm;
uint16_t bit; uint16_t bit;
if (getIPv6Addr(netmask, &tm) < 0) if (virSocketAddrGetIPv6Addr(netmask, &tm) < 0)
return -1; return -1;
for (i = 0; i < 8; i++) for (i = 0; i < 8; i++)

View File

@@ -37,13 +37,13 @@ typedef struct {
socklen_t len; socklen_t len;
} virSocketAddr; } virSocketAddr;
# define VIR_SOCKET_HAS_ADDR(s) \ # define VIR_SOCKET_ADDR_VALID(s) \
((s)->data.sa.sa_family != AF_UNSPEC) ((s)->data.sa.sa_family != AF_UNSPEC)
# define VIR_SOCKET_IS_FAMILY(s, f) \ # define VIR_SOCKET_ADDR_IS_FAMILY(s, f) \
((s)->data.sa.sa_family == f) ((s)->data.sa.sa_family == f)
# define VIR_SOCKET_FAMILY(s) \ # define VIR_SOCKET_ADDR_FAMILY(s) \
((s)->data.sa.sa_family) ((s)->data.sa.sa_family)
typedef virSocketAddr *virSocketAddrPtr; typedef virSocketAddr *virSocketAddrPtr;
@@ -62,36 +62,36 @@ typedef struct {
typedef virBandwidth *virBandwidthPtr; typedef virBandwidth *virBandwidthPtr;
int virSocketParseAddr (const char *val, int virSocketAddrParse(virSocketAddrPtr addr,
virSocketAddrPtr addr, const char *val,
int hint); int family);
int virSocketParseIpv4Addr(const char *val, int virSocketAddrParseIPv4(virSocketAddrPtr addr,
virSocketAddrPtr addr); const char *val);
int virSocketParseIpv6Addr(const char *val, int virSocketAddrParseIPv6(virSocketAddrPtr addr,
virSocketAddrPtr addr); const char *val);
char * virSocketFormatAddr(virSocketAddrPtr addr); char * virSocketAddrFormat(virSocketAddrPtr addr);
char * virSocketFormatAddrFull(virSocketAddrPtr addr, char * virSocketAddrFormatFull(virSocketAddrPtr addr,
bool withService, bool withService,
const char *separator); const char *separator);
int virSocketSetPort(virSocketAddrPtr addr, int port); int virSocketAddrSetPort(virSocketAddrPtr addr, int port);
int virSocketGetPort(virSocketAddrPtr addr); int virSocketAddrGetPort(virSocketAddrPtr addr);
int virSocketGetRange (virSocketAddrPtr start, int virSocketAddrGetRange(virSocketAddrPtr start,
virSocketAddrPtr end); virSocketAddrPtr end);
int virSocketAddrIsNetmask(virSocketAddrPtr netmask); int virSocketAddrIsNetmask(virSocketAddrPtr netmask);
int virSocketCheckNetmask (virSocketAddrPtr addr1, int virSocketAddrCheckNetmask(virSocketAddrPtr addr1,
virSocketAddrPtr addr2, virSocketAddrPtr addr2,
virSocketAddrPtr netmask); virSocketAddrPtr netmask);
int virSocketAddrMask (const virSocketAddrPtr addr, int virSocketAddrMask(const virSocketAddrPtr addr,
const virSocketAddrPtr netmask, const virSocketAddrPtr netmask,
virSocketAddrPtr network); virSocketAddrPtr network);
int virSocketAddrMaskByPrefix(const virSocketAddrPtr addr, int virSocketAddrMaskByPrefix(const virSocketAddrPtr addr,
unsigned int prefix, unsigned int prefix,
virSocketAddrPtr network); virSocketAddrPtr network);
@@ -102,7 +102,7 @@ int virSocketAddrBroadcastByPrefix(const virSocketAddrPtr addr,
unsigned int prefix, unsigned int prefix,
virSocketAddrPtr broadcast); virSocketAddrPtr broadcast);
int virSocketGetNumNetmaskBits(const virSocketAddrPtr netmask); int virSocketAddrGetNumNetmaskBits(const virSocketAddrPtr netmask);
int virSocketAddrPrefixToNetmask(unsigned int prefix, int virSocketAddrPrefixToNetmask(unsigned int prefix,
virSocketAddrPtr netmask, virSocketAddrPtr netmask,
int family); int family);

View File

@@ -461,12 +461,12 @@ int virNetDevSetIPv4Address(const char *ifname,
virSocketAddr broadcast; virSocketAddr broadcast;
int ret = -1; int ret = -1;
if (!(addrstr = virSocketFormatAddr(addr))) if (!(addrstr = virSocketAddrFormat(addr)))
goto cleanup; goto cleanup;
/* format up a broadcast address if this is IPv4 */ /* format up a broadcast address if this is IPv4 */
if ((VIR_SOCKET_IS_FAMILY(addr, AF_INET)) && if ((VIR_SOCKET_ADDR_IS_FAMILY(addr, AF_INET)) &&
((virSocketAddrBroadcastByPrefix(addr, prefix, &broadcast) < 0) || ((virSocketAddrBroadcastByPrefix(addr, prefix, &broadcast) < 0) ||
!(bcaststr = virSocketFormatAddr(&broadcast)))) { !(bcaststr = virSocketAddrFormat(&broadcast)))) {
goto cleanup; goto cleanup;
} }
cmd = virCommandNew(IP_PATH); cmd = virCommandNew(IP_PATH);
@@ -506,7 +506,7 @@ int virNetDevClearIPv4Address(const char *ifname,
char *addrstr; char *addrstr;
int ret = -1; int ret = -1;
if (!(addrstr = virSocketFormatAddr(addr))) if (!(addrstr = virSocketAddrFormat(addr)))
goto cleanup; goto cleanup;
cmd = virCommandNew(IP_PATH); cmd = virCommandNew(IP_PATH);
virCommandAddArgList(cmd, "addr", "del", NULL); virCommandAddArgList(cmd, "addr", "del", NULL);

View File

@@ -792,7 +792,7 @@ vboxSocketFormatAddrUtf16(vboxGlobalData *data, virSocketAddrPtr addr)
char *utf8 = NULL; char *utf8 = NULL;
PRUnichar *utf16 = NULL; PRUnichar *utf16 = NULL;
utf8 = virSocketFormatAddr(addr); utf8 = virSocketAddrFormat(addr);
if (utf8 == NULL) { if (utf8 == NULL) {
return NULL; return NULL;
@@ -813,7 +813,7 @@ vboxSocketParseAddrUtf16(vboxGlobalData *data, const PRUnichar *utf16,
VBOX_UTF16_TO_UTF8(utf16, &utf8); VBOX_UTF16_TO_UTF8(utf16, &utf8);
if (virSocketParseAddr(utf8, addr, AF_UNSPEC) < 0) { if (virSocketAddrParse(addr, utf8, AF_UNSPEC) < 0) {
goto cleanup; goto cleanup;
} }
@@ -7679,8 +7679,8 @@ static virNetworkPtr vboxNetworkDefineCreateXML(virConnectPtr conn, const char *
* with contigious address space from start to end * with contigious address space from start to end
*/ */
if ((ipdef->nranges >= 1) && if ((ipdef->nranges >= 1) &&
VIR_SOCKET_HAS_ADDR(&ipdef->ranges[0].start) && VIR_SOCKET_ADDR_VALID(&ipdef->ranges[0].start) &&
VIR_SOCKET_HAS_ADDR(&ipdef->ranges[0].end)) { VIR_SOCKET_ADDR_VALID(&ipdef->ranges[0].end)) {
IDHCPServer *dhcpServer = NULL; IDHCPServer *dhcpServer = NULL;
data->vboxObj->vtbl->FindDHCPServerByNetworkName(data->vboxObj, data->vboxObj->vtbl->FindDHCPServerByNetworkName(data->vboxObj,
@@ -7741,7 +7741,7 @@ static virNetworkPtr vboxNetworkDefineCreateXML(virConnectPtr conn, const char *
} }
if ((ipdef->nhosts >= 1) && if ((ipdef->nhosts >= 1) &&
VIR_SOCKET_HAS_ADDR(&ipdef->hosts[0].ip)) { VIR_SOCKET_ADDR_VALID(&ipdef->hosts[0].ip)) {
PRUnichar *ipAddressUtf16 = NULL; PRUnichar *ipAddressUtf16 = NULL;
PRUnichar *networkMaskUtf16 = NULL; PRUnichar *networkMaskUtf16 = NULL;

View File

@@ -40,7 +40,7 @@ static int testParse(virSocketAddr *addr, const char *addrstr, int family, bool
{ {
int rc; int rc;
rc = virSocketParseAddr(addrstr, addr, family); rc = virSocketAddrParse(addr, addrstr, family);
if (rc < 0) if (rc < 0)
return pass ? -1 : 0; return pass ? -1 : 0;
@@ -52,7 +52,7 @@ static int testFormat(virSocketAddr *addr, const char *addrstr, bool pass)
{ {
char *newaddrstr; char *newaddrstr;
newaddrstr = virSocketFormatAddr(addr); newaddrstr = virSocketAddrFormat(addr);
if (!newaddrstr) if (!newaddrstr)
return pass ? -1 : 0; return pass ? -1 : 0;
@@ -95,12 +95,12 @@ static int testRange(const char *saddrstr, const char *eaddrstr, int size, bool
virSocketAddr saddr; virSocketAddr saddr;
virSocketAddr eaddr; virSocketAddr eaddr;
if (virSocketParseAddr(saddrstr, &saddr, AF_UNSPEC) < 0) if (virSocketAddrParse(&saddr, saddrstr, AF_UNSPEC) < 0)
return -1; return -1;
if (virSocketParseAddr(eaddrstr, &eaddr, AF_UNSPEC) < 0) if (virSocketAddrParse(&eaddr, eaddrstr, AF_UNSPEC) < 0)
return -1; return -1;
int gotsize = virSocketGetRange(&saddr, &eaddr); int gotsize = virSocketAddrGetRange(&saddr, &eaddr);
VIR_DEBUG("Size want %d vs got %d", size, gotsize); VIR_DEBUG("Size want %d vs got %d", size, gotsize);
if (gotsize < 0 || gotsize != size) { if (gotsize < 0 || gotsize != size) {
return pass ? -1 : 0; return pass ? -1 : 0;
@@ -129,14 +129,14 @@ static int testNetmask(const char *addr1str, const char *addr2str,
virSocketAddr addr2; virSocketAddr addr2;
virSocketAddr netmask; virSocketAddr netmask;
if (virSocketParseAddr(addr1str, &addr1, AF_UNSPEC) < 0) if (virSocketAddrParse(&addr1, addr1str, AF_UNSPEC) < 0)
return -1; return -1;
if (virSocketParseAddr(addr2str, &addr2, AF_UNSPEC) < 0) if (virSocketAddrParse(&addr2, addr2str, AF_UNSPEC) < 0)
return -1; return -1;
if (virSocketParseAddr(netmaskstr, &netmask, AF_UNSPEC) < 0) if (virSocketAddrParse(&netmask, netmaskstr, AF_UNSPEC) < 0)
return -1; return -1;
int ret = virSocketCheckNetmask(&addr1, &addr2, &netmask); int ret = virSocketAddrCheckNetmask(&addr1, &addr2, &netmask);
if (ret <= 0) { if (ret <= 0) {
return pass ? -1 : 0; return pass ? -1 : 0;

View File

@@ -25,6 +25,7 @@
#ifdef HAVE_IFADDRS_H #ifdef HAVE_IFADDRS_H
# include <ifaddrs.h> # include <ifaddrs.h>
#endif #endif
#include <netdb.h>
#include "testutils.h" #include "testutils.h"
#include "util.h" #include "util.h"

View File

@@ -231,7 +231,7 @@ testTLSGenerateCert(struct testTLSCertReq *req)
virSocketAddr addr; virSocketAddr addr;
char *data; char *data;
int len; int len;
if (virSocketParseAddr(req->ipaddr1, &addr, 0) < 0) { if (virSocketAddrParse(&addr, req->ipaddr1, 0) < 0) {
VIR_WARN("Cannot parse %s", req->ipaddr1); VIR_WARN("Cannot parse %s", req->ipaddr1);
abort(); abort();
} }
@@ -254,7 +254,7 @@ testTLSGenerateCert(struct testTLSCertReq *req)
virSocketAddr addr; virSocketAddr addr;
char *data; char *data;
int len; int len;
if (virSocketParseAddr(req->ipaddr2, &addr, 0) < 0) { if (virSocketAddrParse(&addr, req->ipaddr2, 0) < 0) {
VIR_WARN("Cannot parse %s", req->ipaddr2); VIR_WARN("Cannot parse %s", req->ipaddr2);
abort(); abort();
} }