Commit 86207c19 authored by Dr. Stephen Henson's avatar Dr. Stephen Henson
Browse files

Make return value from EVP_PKEY_cmp() and EVP_PKEY_cmp_parameters() consistent.

parent 9c62bca1
Loading
Loading
Loading
Loading
+14 −5
Original line number Diff line number Diff line
@@ -161,11 +161,20 @@ int EVP_PKEY_cmp(const EVP_PKEY *a, const EVP_PKEY *b)
	if (a->type != b->type)
		return -1;

	if (EVP_PKEY_cmp_parameters(a, b) == 0)
		return 0;
	if (a->meth)
		{
		int ret;
		/* Compare parameters if the algorithm has them */
		if (a->meth->param_cmp)
			{
			ret = a->meth->param_cmp(a, b);
			if (ret <= 0)
				return ret;
			}

	if (a->ameth && a->ameth->pub_cmp)
		if (a->ameth->pub_cmp)
			return a->ameth->pub_cmp(a, b);
		}

	return -2;
	}