Update from HEAD.
[oweals/openssl.git] / crypto / x509v3 / v3_addr.c
index 0e397d44475d431907f2ec66dd758ebecdeac13d..a37f844d3c28d4cc35a63f17724ab3dab2c38f8a 100644 (file)
@@ -66,6 +66,7 @@
 #include <openssl/conf.h>
 #include <openssl/asn1.h>
 #include <openssl/asn1t.h>
+#include <openssl/buffer.h>
 #include <openssl/x509v3.h>
 
 #ifndef OPENSSL_NO_RFC3779
@@ -593,10 +594,10 @@ static IPAddressOrRanges *make_prefix_or_range(IPAddrBlocks *addr,
     return NULL;
   switch (afi) {
   case IANA_AFI_IPV4:
-    sk_IPAddressOrRange_set_cmp_func(aors, v4IPAddressOrRange_cmp);
+    (void)sk_IPAddressOrRange_set_cmp_func(aors, v4IPAddressOrRange_cmp);
     break;
   case IANA_AFI_IPV6:
-    sk_IPAddressOrRange_set_cmp_func(aors, v6IPAddressOrRange_cmp);
+    (void)sk_IPAddressOrRange_set_cmp_func(aors, v6IPAddressOrRange_cmp);
     break;
   }
   f->ipAddressChoice->type = IPAddressChoice_addressesOrRanges;
@@ -853,7 +854,7 @@ static int IPAddressOrRanges_canonize(IPAddressOrRanges *aors,
       if (!make_addressRange(&merged, a_min, b_max, length))
        return 0;
       sk_IPAddressOrRange_set(aors, i, merged);
-      sk_IPAddressOrRange_delete(aors, i + 1);
+      (void)sk_IPAddressOrRange_delete(aors, i + 1);
       IPAddressOrRange_free(a);
       IPAddressOrRange_free(b);
       --i;
@@ -877,6 +878,7 @@ int v3_addr_canonize(IPAddrBlocks *addr)
                                    v3_addr_get_afi(f)))
       return 0;
   }
+  (void)sk_IPAddressFamily_set_cmp_func(addr, IPAddressFamily_cmp);
   sk_IPAddressFamily_sort(addr);
   assert(v3_addr_is_canonical(addr));
   return 1;
@@ -935,7 +937,7 @@ static void *v2i_IPAddrBlocks(struct v3_ext_method *method,
     length = length_from_afi(afi);
 
     /*
-     * Handle SAFI, if any, and strdup() so we can null-terminate
+     * Handle SAFI, if any, and BUF_strdup() so we can null-terminate
      * the other input values.
      */
     if (safi != NULL) {
@@ -947,9 +949,9 @@ static void *v2i_IPAddrBlocks(struct v3_ext_method *method,
        goto err;
       }
       t += strspn(t, " \t");
-      s = strdup(t);
+      s = BUF_strdup(t);
     } else {
-      s = strdup(val->value);
+      s = BUF_strdup(val->value);
     }
     if (s == NULL) {
       X509V3err(X509V3_F_V2I_IPADDRBLOCKS, ERR_R_MALLOC_FAILURE);
@@ -1045,7 +1047,7 @@ static void *v2i_IPAddrBlocks(struct v3_ext_method *method,
 /*
  * OpenSSL dispatch
  */
-X509V3_EXT_METHOD v3_addr = {
+const X509V3_EXT_METHOD v3_addr = {
   NID_sbgp_ipAddrBlock,                /* nid */
   0,                           /* flags */
   ASN1_ITEM_ref(IPAddrBlocks), /* template */
@@ -1121,7 +1123,7 @@ int v3_addr_subset(IPAddrBlocks *a, IPAddrBlocks *b)
     return 1;
   if (b == NULL || v3_addr_inherits(a) || v3_addr_inherits(b))
     return 0;
-  sk_IPAddressFamily_set_cmp_func(b, IPAddressFamily_cmp);
+  (void)sk_IPAddressFamily_set_cmp_func(b, IPAddressFamily_cmp);
   for (i = 0; i < sk_IPAddressFamily_num(a); i++) {
     IPAddressFamily *fa = sk_IPAddressFamily_value(a, i);
     int j = sk_IPAddressFamily_find(b, fa);
@@ -1182,7 +1184,7 @@ static int v3_addr_validate_path_internal(X509_STORE_CTX *ctx,
   }
   if (!v3_addr_is_canonical(ext))
     validation_err(X509_V_ERR_INVALID_EXTENSION);
-  sk_IPAddressFamily_set_cmp_func(ext, IPAddressFamily_cmp);
+  (void)sk_IPAddressFamily_set_cmp_func(ext, IPAddressFamily_cmp);
   if ((child = sk_IPAddressFamily_dup(ext)) == NULL) {
     X509V3err(X509V3_F_V3_ADDR_VALIDATE_PATH_INTERNAL, ERR_R_MALLOC_FAILURE);
     ret = 0;
@@ -1208,7 +1210,7 @@ static int v3_addr_validate_path_internal(X509_STORE_CTX *ctx,
       }
       continue;
     }
-    sk_IPAddressFamily_set_cmp_func(x->rfc3779_addr, IPAddressFamily_cmp);
+    (void)sk_IPAddressFamily_set_cmp_func(x->rfc3779_addr, IPAddressFamily_cmp);
     for (j = 0; j < sk_IPAddressFamily_num(child); j++) {
       IPAddressFamily *fc = sk_IPAddressFamily_value(child, j);
       int k = sk_IPAddressFamily_find(x->rfc3779_addr, fc);