summaryrefslogtreecommitdiff
path: root/bufaux.c
diff options
context:
space:
mode:
authorColin Watson <cjwatson@debian.org>2014-04-21 21:24:52 +0100
committerColin Watson <cjwatson@debian.org>2014-04-21 21:28:19 +0100
commit7cc2be72098d7b3384daf09d85d9969d9da0420e (patch)
treec762cfc9b928dc4b8dc41399308e3552b1e6a5ca /bufaux.c
parentc730d55d220e15fb7bc6b9b56633541e97817175 (diff)
parent02883061577ec43ff8d0e8f0cf486bc5131db507 (diff)
Apply upstream-recommended patch to fix bignum encoding for curve25519-sha256@libssh.org, fixing occasional key exchange failures.
Diffstat (limited to 'bufaux.c')
-rw-r--r--bufaux.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/bufaux.c b/bufaux.c
index e24b5fc0a..f6a6f2ab2 100644
--- a/bufaux.c
+++ b/bufaux.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: bufaux.c,v 1.56 2014/02/02 03:44:31 djm Exp $ */ 1/* $OpenBSD: bufaux.c,v 1.57 2014/04/16 23:22:45 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
@@ -372,6 +372,9 @@ buffer_put_bignum2_from_string(Buffer *buffer, const u_char *s, u_int l)
372 372
373 if (l > 8 * 1024) 373 if (l > 8 * 1024)
374 fatal("%s: length %u too long", __func__, l); 374 fatal("%s: length %u too long", __func__, l);
375 /* Skip leading zero bytes */
376 for (; l > 0 && *s == 0; l--, s++)
377 ;
375 p = buf = xmalloc(l + 1); 378 p = buf = xmalloc(l + 1);
376 /* 379 /*
377 * If most significant bit is set then prepend a zero byte to 380 * If most significant bit is set then prepend a zero byte to