]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
virsocketaddr: Introduce virSocketAddrSetIPv6Addr
authorMichal Privoznik <mprivozn@redhat.com>
Tue, 15 Mar 2016 15:35:23 +0000 (16:35 +0100)
committerMichal Privoznik <mprivozn@redhat.com>
Fri, 18 Mar 2016 16:29:53 +0000 (17:29 +0100)
This is a missing counterpart for virSocketAddrSetIPv4Addr()
and is going to be needed later in the tests.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
src/libvirt_private.syms
src/util/virsocketaddr.c
src/util/virsocketaddr.h

index 3ae18b8f2923883fef2be31832c7f65cea3e212a..640c6b3138a83e012b6e1abed3b9a26663fd68ed 100644 (file)
@@ -2165,6 +2165,7 @@ virSocketAddrParseIPv4;
 virSocketAddrParseIPv6;
 virSocketAddrPrefixToNetmask;
 virSocketAddrSetIPv4Addr;
+virSocketAddrSetIPv6Addr;
 virSocketAddrSetPort;
 
 # util/virstats.h
index 900aa5b783abb76b92b5ccd6479f1bbdd8abfa9e..b44d12e65216ec933b134d605c6ea90870f44a6b 100644 (file)
@@ -188,6 +188,21 @@ virSocketAddrSetIPv4Addr(virSocketAddrPtr addr, uint32_t val)
     addr->len = sizeof(struct sockaddr_in);
 }
 
+/*
+ * virSocketAddrSetIPv6Addr:
+ * @addr: the location to store the result
+ * @val: the 128bit integer in host byte order representing the IPv6 address
+ *
+ * Set the IPv6 address given an integer in host order. This function does not
+ * touch any previously set port.
+ */
+void virSocketAddrSetIPv6Addr(virSocketAddrPtr addr, uint32_t val[4])
+{
+    addr->data.stor.ss_family = AF_INET6;
+    memcpy(addr->data.inet6.sin6_addr.s6_addr, val, 4 * sizeof(*val));
+    addr->len = sizeof(struct sockaddr_in6);
+}
+
 /*
  * virSocketAddrEqual:
  * @s1: the location of the one IP address
index 9e2680a4d2f6f1eb9000e238ad8ef74fe1db6b8f..9a6e1ecfa08accc337eb8ae196739fc9cf1b607d 100644 (file)
@@ -85,6 +85,7 @@ int virSocketAddrParseIPv6(virSocketAddrPtr addr,
                            const char *val);
 
 void virSocketAddrSetIPv4Addr(virSocketAddrPtr s, uint32_t addr);
+void virSocketAddrSetIPv6Addr(virSocketAddrPtr s, uint32_t addr[4]);
 
 char *virSocketAddrFormat(const virSocketAddr *addr);
 char *virSocketAddrFormatFull(const virSocketAddr *addr,