summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2008-02-10 22:25:52 +1100
committerDamien Miller <djm@mindrot.org>2008-02-10 22:25:52 +1100
commit3dff176ed9509b5bd92947b9504545495a2052cc (patch)
treefbd3f0d740ebd8e9c00ce2d4a621d416c49cb985
parent3de49f8951d8ea4401b0a8ec053fd51d6f309cbe (diff)
- djm@cvs.openbsd.org 2008/01/19 23:09:49
[readconf.c readconf.h sshconnect2.c] promote rekeylimit to a int64 so it can hold the maximum useful limit of 2^32; report and patch from Jan.Pechanec AT Sun.COM, ok dtucker@
-rw-r--r--ChangeLog6
-rw-r--r--readconf.c9
-rw-r--r--readconf.h4
-rw-r--r--sshconnect2.c4
4 files changed, 13 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index 3843aeee9..3c5a374dc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -40,6 +40,10 @@
40 and v6 addresses when connected to a server with this quirk, despite 40 and v6 addresses when connected to a server with this quirk, despite
41 having set 0.0.0.0 as a bind_address. 41 having set 0.0.0.0 as a bind_address.
42 report and patch from Jan.Pechanec AT Sun.COM; ok dtucker@ 42 report and patch from Jan.Pechanec AT Sun.COM; ok dtucker@
43 - djm@cvs.openbsd.org 2008/01/19 23:09:49
44 [readconf.c readconf.h sshconnect2.c]
45 promote rekeylimit to a int64 so it can hold the maximum useful limit
46 of 2^32; report and patch from Jan.Pechanec AT Sun.COM, ok dtucker@
43 47
4420080119 4820080119
45 - (djm) Silence noice from expr in ssh-copy-id; patch from 49 - (djm) Silence noice from expr in ssh-copy-id; patch from
@@ -3568,4 +3572,4 @@
3568 OpenServer 6 and add osr5bigcrypt support so when someone migrates 3572 OpenServer 6 and add osr5bigcrypt support so when someone migrates
3569 passwords between UnixWare and OpenServer they will still work. OK dtucker@ 3573 passwords between UnixWare and OpenServer they will still work. OK dtucker@
3570 3574
3571$Id: ChangeLog,v 1.4827 2008/02/10 11:25:24 djm Exp $ 3575$Id: ChangeLog,v 1.4828 2008/02/10 11:25:52 djm Exp $
diff --git a/readconf.c b/readconf.c
index 1d6409fdb..3ddb4d392 100644
--- a/readconf.c
+++ b/readconf.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: readconf.c,v 1.164 2007/12/31 10:41:31 dtucker Exp $ */ 1/* $OpenBSD: readconf.c,v 1.165 2008/01/19 23:09:49 djm Exp $ */
2/* 2/*
3 * Author: Tatu Ylonen <ylo@cs.hut.fi> 3 * Author: Tatu Ylonen <ylo@cs.hut.fi>
4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland 4 * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
@@ -499,7 +499,6 @@ parse_yesnoask:
499 goto parse_int; 499 goto parse_int;
500 500
501 case oRekeyLimit: 501 case oRekeyLimit:
502 intptr = &options->rekey_limit;
503 arg = strdelim(&s); 502 arg = strdelim(&s);
504 if (!arg || *arg == '\0') 503 if (!arg || *arg == '\0')
505 fatal("%.200s line %d: Missing argument.", filename, linenum); 504 fatal("%.200s line %d: Missing argument.", filename, linenum);
@@ -527,14 +526,14 @@ parse_yesnoask:
527 } 526 }
528 val64 *= scale; 527 val64 *= scale;
529 /* detect integer wrap and too-large limits */ 528 /* detect integer wrap and too-large limits */
530 if ((val64 / scale) != orig || val64 > INT_MAX) 529 if ((val64 / scale) != orig || val64 > UINT_MAX)
531 fatal("%.200s line %d: RekeyLimit too large", 530 fatal("%.200s line %d: RekeyLimit too large",
532 filename, linenum); 531 filename, linenum);
533 if (val64 < 16) 532 if (val64 < 16)
534 fatal("%.200s line %d: RekeyLimit too small", 533 fatal("%.200s line %d: RekeyLimit too small",
535 filename, linenum); 534 filename, linenum);
536 if (*activep && *intptr == -1) 535 if (*activep && options->rekey_limit == -1)
537 *intptr = (int)val64; 536 options->rekey_limit = (u_int32_t)val64;
538 break; 537 break;
539 538
540 case oIdentityFile: 539 case oIdentityFile:
diff --git a/readconf.h b/readconf.h
index d484f258e..6257f4b2f 100644
--- a/readconf.h
+++ b/readconf.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: readconf.h,v 1.71 2006/08/03 03:34:42 deraadt Exp $ */ 1/* $OpenBSD: readconf.h,v 1.72 2008/01/19 23:09:49 djm Exp $ */
2 2
3/* 3/*
4 * Author: Tatu Ylonen <ylo@cs.hut.fi> 4 * Author: Tatu Ylonen <ylo@cs.hut.fi>
@@ -100,7 +100,7 @@ typedef struct {
100 int clear_forwardings; 100 int clear_forwardings;
101 101
102 int enable_ssh_keysign; 102 int enable_ssh_keysign;
103 int rekey_limit; 103 int64_t rekey_limit;
104 int no_host_authentication_for_localhost; 104 int no_host_authentication_for_localhost;
105 int identities_only; 105 int identities_only;
106 int server_alive_interval; 106 int server_alive_interval;
diff --git a/sshconnect2.c b/sshconnect2.c
index 208df078c..5bb772368 100644
--- a/sshconnect2.c
+++ b/sshconnect2.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: sshconnect2.c,v 1.164 2007/05/17 23:53:41 jolan Exp $ */ 1/* $OpenBSD: sshconnect2.c,v 1.165 2008/01/19 23:09:49 djm Exp $ */
2/* 2/*
3 * Copyright (c) 2000 Markus Friedl. All rights reserved. 3 * Copyright (c) 2000 Markus Friedl. All rights reserved.
4 * 4 *
@@ -130,7 +130,7 @@ ssh_kex2(char *host, struct sockaddr *hostaddr)
130 options.hostkeyalgorithms; 130 options.hostkeyalgorithms;
131 131
132 if (options.rekey_limit) 132 if (options.rekey_limit)
133 packet_set_rekey_limit(options.rekey_limit); 133 packet_set_rekey_limit((u_int32_t)options.rekey_limit);
134 134
135 /* start key exchange */ 135 /* start key exchange */
136 kex = kex_setup(myproposal); 136 kex = kex_setup(myproposal);