summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDarren Tucker <dtucker@zip.com.au>2012-09-06 21:19:51 +1000
committerDarren Tucker <dtucker@zip.com.au>2012-09-06 21:19:51 +1000
commitae608bdd83c8bc37ef701aba9603a4f69d473b2d (patch)
tree880b70abb4b0f2076b7ea6ccb25fa34653bcd627
parent66cb0e0733782c2f6773abd9fd1d87f5efef6c27 (diff)
- djm@cvs.openbsd.org 2012/08/17 01:22:56
[kex.c] add some comments about better handling first-KEX-follows notifications from the server. Nothing uses these right now. No binary change
-rw-r--r--ChangeLog4
-rw-r--r--kex.c16
2 files changed, 17 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index bdaaa0ae3..dd2877436 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -9,6 +9,10 @@
9 Force a clean shutdown of ControlMaster client sessions when the ~. escape 9 Force a clean shutdown of ControlMaster client sessions when the ~. escape
10 sequence is used. This means that ~. should now work in mux clients even 10 sequence is used. This means that ~. should now work in mux clients even
11 if the server is no longer responding. Found by tedu, ok djm. 11 if the server is no longer responding. Found by tedu, ok djm.
12 - djm@cvs.openbsd.org 2012/08/17 01:22:56
13 [kex.c]
14 add some comments about better handling first-KEX-follows notifications
15 from the server. Nothing uses these right now. No binary change
12 16
1320120830 1720120830
14 - (dtucker) [moduli] Import new moduli file. 18 - (dtucker) [moduli] Import new moduli file.
diff --git a/kex.c b/kex.c
index c65e28f94..f77b3c925 100644
--- a/kex.c
+++ b/kex.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: kex.c,v 1.86 2010/09/22 05:01:29 djm Exp $ */ 1/* $OpenBSD: kex.c,v 1.87 2012/08/17 01:22:56 djm Exp $ */
2/* 2/*
3 * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved. 3 * Copyright (c) 2000, 2001 Markus Friedl. All rights reserved.
4 * 4 *
@@ -242,8 +242,18 @@ kex_input_kexinit(int type, u_int32_t seq, void *ctxt)
242 packet_get_char(); 242 packet_get_char();
243 for (i = 0; i < PROPOSAL_MAX; i++) 243 for (i = 0; i < PROPOSAL_MAX; i++)
244 xfree(packet_get_string(NULL)); 244 xfree(packet_get_string(NULL));
245 (void) packet_get_char(); 245 /*
246 (void) packet_get_int(); 246 * XXX RFC4253 sec 7: "each side MAY guess" - currently no supported
247 * KEX method has the server move first, but a server might be using
248 * a custom method or one that we otherwise don't support. We should
249 * be prepared to remember first_kex_follows here so we can eat a
250 * packet later.
251 * XXX2 - RFC4253 is kind of ambiguous on what first_kex_follows means
252 * for cases where the server *doesn't* go first. I guess we should
253 * ignore it when it is set for these cases, which is what we do now.
254 */
255 (void) packet_get_char(); /* first_kex_follows */
256 (void) packet_get_int(); /* reserved */
247 packet_check_eom(); 257 packet_check_eom();
248 258
249 kex_kexinit_finish(kex); 259 kex_kexinit_finish(kex);