prepare for next release
[oweals/openssl.git] / crypto / x509v3 / v3_utl.c
index ac171ca940a3cb6d721797f79cafde5d3d587266..7a45216c007f5721a342f49332afd59afcc58cc2 100644 (file)
@@ -1,5 +1,5 @@
 /* v3_utl.c */
-/* Written by Dr Stephen N Henson (shenson@bigfoot.com) for the OpenSSL
+/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
  * project.
  */
 /* ====================================================================
@@ -84,7 +84,7 @@ int X509V3_add_value(const char *name, const char *value,
        CONF_VALUE *vtmp = NULL;
        char *tname = NULL, *tvalue = NULL;
        if(name && !(tname = BUF_strdup(name))) goto err;
-       if(value && !(tvalue = BUF_strdup(value))) goto err;;
+       if(value && !(tvalue = BUF_strdup(value))) goto err;
        if(!(vtmp = (CONF_VALUE *)OPENSSL_malloc(sizeof(CONF_VALUE)))) goto err;
        if(!*extlist && !(*extlist = sk_CONF_VALUE_new_null())) goto err;
        vtmp->section = NULL;
@@ -736,17 +736,20 @@ static int ipv6_from_asc(unsigned char *v6, const char *in)
 
        /* Format result */
 
-       /* Copy initial part */
-       if (v6stat.zero_pos > 0)
+       if (v6stat.zero_pos >= 0)
+               {
+               /* Copy initial part */
                memcpy(v6, v6stat.tmp, v6stat.zero_pos);
-       /* Zero middle */
-       if (v6stat.total != 16)
+               /* Zero middle */
                memset(v6 + v6stat.zero_pos, 0, 16 - v6stat.total);
-       /* Copy final part */
-       if (v6stat.total != v6stat.zero_pos)
-               memcpy(v6 + v6stat.zero_pos + 16 - v6stat.total,
-                       v6stat.tmp + v6stat.zero_pos,
-                       v6stat.total - v6stat.zero_pos);
+               /* Copy final part */
+               if (v6stat.total != v6stat.zero_pos)
+                       memcpy(v6 + v6stat.zero_pos + 16 - v6stat.total,
+                               v6stat.tmp + v6stat.zero_pos,
+                               v6stat.total - v6stat.zero_pos);
+               }
+       else
+               memcpy(v6, v6stat.tmp, 16);
 
        return 1;
        }