comparison dss.c @ 340:454a34b2dfd1

Fixes from Erik Hovland: cli-authpubkey.c: fix leak of keybuf cli-kex.c: fix leak of fingerprint fp cli-service.c: remove commented out code dropbearkey.c: don't attepmt to free NULL key on failure common-kex.c: only free key if it is initialised keyimport.c: remove dead encrypted-key code don't leak a FILE* loading OpenSSH keys rsa.c, dss.c: check return values for some libtommath functions svr-kex.c: check return value retrieving DH kex mpint svr-tcpfwd.c: fix null-dereference if remote tcp forward request fails tcp-accept.c: don't incorrectly free the tcpinfo var
author Matt Johnston <matt@ucc.asn.au>
date Fri, 07 Jul 2006 09:17:18 +0000
parents c5d3ef11155f
children a124aff0cbf1
comparison
equal deleted inserted replaced
339:31743c9bdf78 340:454a34b2dfd1
336 sha512_done(&hs, proto_k); 336 sha512_done(&hs, proto_k);
337 337
338 /* generate k */ 338 /* generate k */
339 m_mp_init(&dss_protok); 339 m_mp_init(&dss_protok);
340 bytes_to_mp(&dss_protok, proto_k, SHA512_HASH_SIZE); 340 bytes_to_mp(&dss_protok, proto_k, SHA512_HASH_SIZE);
341 mp_mod(&dss_protok, key->q, &dss_k); 341 if (mp_mod(&dss_protok, key->q, &dss_k) != MP_OKAY) {
342 dropbear_exit("dss error");
343 }
342 mp_clear(&dss_protok); 344 mp_clear(&dss_protok);
343 m_burn(proto_k, SHA512_HASH_SIZE); 345 m_burn(proto_k, SHA512_HASH_SIZE);
344 #else /* DSS_PROTOK not defined*/ 346 #else /* DSS_PROTOK not defined*/
345 gen_random_mpint(key->q, &dss_k); 347 gen_random_mpint(key->q, &dss_k);
346 #endif 348 #endif