Fix the build and tests following constification of DH, DSA, RSA

Misc fixes following the constification of the DH, DSA and RSA
getters.

Reviewed-by: Stephen Henson <steve@openssl.org>
This commit is contained in:
Matt Caswell 2016-06-16 10:07:32 +01:00
parent cf3404fcc7
commit b84e12266f
5 changed files with 22 additions and 24 deletions

View File

@ -199,8 +199,8 @@ int DH_set0_pqg(DH *dh, BIGNUM *p, BIGNUM *q, BIGNUM *g)
/* If the fields p and g in d are NULL, the corresponding input
* parameters MUST be non-NULL. q may remain NULL.
*/
if (dh->p == NULL && p == NULL
|| dh->g == NULL && g == NULL)
if ((dh->p == NULL && p == NULL)
|| (dh->g == NULL && g == NULL))
return 0;
if (p != NULL) {

View File

@ -269,9 +269,9 @@ int DSA_set0_pqg(DSA *d, BIGNUM *p, BIGNUM *q, BIGNUM *g)
/* If the fields p, q and g in d are NULL, the corresponding input
* parameters MUST be non-NULL.
*/
if (d->p == NULL && p == NULL
|| d->q == NULL && q == NULL
|| d->g == NULL && g == NULL)
if ((d->p == NULL && p == NULL)
|| (d->q == NULL && q == NULL)
|| (d->g == NULL && g == NULL))
return 0;
if (p != NULL) {

View File

@ -236,8 +236,8 @@ int RSA_set0_key(RSA *r, BIGNUM *n, BIGNUM *e, BIGNUM *d)
* parameters MUST be non-NULL for n and e. d may be
* left NULL (in case only the public key is used).
*/
if (r->n == NULL && n == NULL
|| r->e == NULL && e == NULL)
if ((r->n == NULL && n == NULL)
|| (r->e == NULL && e == NULL))
return 0;
if (n != NULL) {
@ -261,8 +261,8 @@ int RSA_set0_factors(RSA *r, BIGNUM *p, BIGNUM *q)
/* If the fields p and q in r are NULL, the corresponding input
* parameters MUST be non-NULL.
*/
if (r->p == NULL && p == NULL
|| r->q == NULL && q == NULL)
if ((r->p == NULL && p == NULL)
|| (r->q == NULL && q == NULL))
return 0;
if (p != NULL) {
@ -282,9 +282,9 @@ int RSA_set0_crt_params(RSA *r, BIGNUM *dmp1, BIGNUM *dmq1, BIGNUM *iqmp)
/* If the fields dmp1, dmq1 and iqmp in r are NULL, the corresponding input
* parameters MUST be non-NULL.
*/
if (r->dmp1 == NULL && dmp1 == NULL
|| r->dmq1 == NULL && dmq1 == NULL
|| r->iqmp == NULL && iqmp == NULL)
if ((r->dmp1 == NULL && dmp1 == NULL)
|| (r->dmq1 == NULL && dmq1 == NULL)
|| (r->iqmp == NULL && iqmp == NULL))
return 0;
if (dmp1 != NULL) {

View File

@ -40,8 +40,9 @@ int main(int argc, char *argv[])
BN_GENCB *_cb = NULL;
DH *a = NULL;
DH *b = NULL;
BIGNUM *ap = NULL, *ag = NULL, *bp = NULL, *bg = NULL, *apub_key = NULL;
BIGNUM *bpub_key = NULL, *priv_key = NULL;
const BIGNUM *ap = NULL, *ag = NULL, *apub_key = NULL, *priv_key = NULL;
const BIGNUM *bpub_key = NULL;
BIGNUM *bp = NULL, *bg = NULL;
char buf[12] = {0};
unsigned char *abuf = NULL;
unsigned char *bbuf = NULL;
@ -476,6 +477,7 @@ static int run_rfc5114_tests(void)
unsigned char *Z2 = NULL;
const rfc5114_td *td = NULL;
BIGNUM *bady = NULL, *priv_key = NULL, *pub_key = NULL;
const BIGNUM *pub_key_tmp;
for (i = 0; i < (int)OSSL_NELEM(rfctd); i++) {
td = rfctd + i;
@ -511,17 +513,13 @@ static int run_rfc5114_tests(void)
* Work out shared secrets using both sides and compare with expected
* values.
*/
DH_get0_key(dhB, &pub_key, NULL);
if (DH_compute_key(Z1, pub_key, dhA) == -1) {
pub_key = NULL;
DH_get0_key(dhB, &pub_key_tmp, NULL);
if (DH_compute_key(Z1, pub_key_tmp, dhA) == -1)
goto bad_err;
}
DH_get0_key(dhA, &pub_key, NULL);
if (DH_compute_key(Z2, pub_key, dhB) == -1) {
pub_key = NULL;
DH_get0_key(dhA, &pub_key_tmp, NULL);
if (DH_compute_key(Z2, pub_key_tmp, dhB) == -1)
goto bad_err;
}
pub_key = NULL;
if (memcmp(Z1, td->Z, td->Z_len))
goto err;

View File

@ -85,7 +85,7 @@ int main(int argc, char **argv)
unsigned long h;
unsigned char sig[256];
unsigned int siglen;
BIGNUM *p = NULL, *q = NULL, *g = NULL;
const BIGNUM *p = NULL, *q = NULL, *g = NULL;
if (bio_err == NULL)
bio_err = BIO_new_fp(stderr, BIO_NOCLOSE | BIO_FP_TEXT);