bn_nist.c update from HEAD.
[oweals/openssl.git] / crypto / ec / ec2_smpl.c
index 34c3a953a5a55e20e87f980e88e9fcfe55ccb880..5cd1eac41fc33bb1bf435f4fc6d606870b0c8f85 100644 (file)
@@ -281,7 +281,8 @@ int ec_GF2m_simple_group_check_discriminant(const EC_GROUP *group, BN_CTX *ctx)
        ret = 1;
 
 err:
-       BN_CTX_end(ctx);
+       if (ctx != NULL)
+               BN_CTX_end(ctx);
        if (new_ctx != NULL)
                BN_CTX_free(new_ctx);
        return ret;
@@ -354,11 +355,11 @@ int ec_GF2m_simple_point_set_affine_coordinates(const EC_GROUP *group, EC_POINT
                }
 
        if (!BN_copy(&point->X, x)) goto err;
-       BN_set_sign(&point->X, 0);
+       BN_set_negative(&point->X, 0);
        if (!BN_copy(&point->Y, y)) goto err;
-       BN_set_sign(&point->Y, 0);
+       BN_set_negative(&point->Y, 0);
        if (!BN_copy(&point->Z, BN_value_one())) goto err;
-       BN_set_sign(&point->Z, 0);
+       BN_set_negative(&point->Z, 0);
        point->Z_is_one = 1;
        ret = 1;
 
@@ -389,12 +390,12 @@ int ec_GF2m_simple_point_get_affine_coordinates(const EC_GROUP *group, const EC_
        if (x != NULL)
                {
                if (!BN_copy(x, &point->X)) goto err;
-               BN_set_sign(x, 0);
+               BN_set_negative(x, 0);
                }
        if (y != NULL)
                {
                if (!BN_copy(y, &point->Y)) goto err;
-               BN_set_sign(y, 0);
+               BN_set_negative(y, 0);
                }
        ret = 1;