diff options
author | Damien Miller <djm@mindrot.org> | 2011-12-19 10:52:50 +1100 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2011-12-19 10:52:50 +1100 |
commit | 8ed4de8f1dcebddd7edc0dd3c10f1cb947d831eb (patch) | |
tree | 3c9442e4dfcae3662f42cb53cccc7e45f98c0897 /dh.c | |
parent | 913ddff40d090751d50be2339cd859505b24f65b (diff) |
- djm@cvs.openbsd.org 2011/12/07 05:44:38
[auth2.c dh.c packet.c roaming.h roaming_client.c roaming_common.c]
fix some harmless and/or unreachable int overflows;
reported Xi Wang, ok markus@
Diffstat (limited to 'dh.c')
-rw-r--r-- | dh.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: dh.c,v 1.48 2009/10/01 11:37:33 grunk Exp $ */ | 1 | /* $OpenBSD: dh.c,v 1.49 2011/12/07 05:44:38 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000 Niels Provos. All rights reserved. | 3 | * Copyright (c) 2000 Niels Provos. All rights reserved. |
4 | * | 4 | * |
@@ -236,6 +236,8 @@ dh_gen_key(DH *dh, int need) | |||
236 | { | 236 | { |
237 | int i, bits_set, tries = 0; | 237 | int i, bits_set, tries = 0; |
238 | 238 | ||
239 | if (need < 0) | ||
240 | fatal("dh_gen_key: need < 0"); | ||
239 | if (dh->p == NULL) | 241 | if (dh->p == NULL) |
240 | fatal("dh_gen_key: dh->p == NULL"); | 242 | fatal("dh_gen_key: dh->p == NULL"); |
241 | if (need > INT_MAX / 2 || 2 * need >= BN_num_bits(dh->p)) | 243 | if (need > INT_MAX / 2 || 2 * need >= BN_num_bits(dh->p)) |