summaryrefslogtreecommitdiff
path: root/ssh-keyscan.c
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2005-05-26 12:07:32 +1000
committerDamien Miller <djm@mindrot.org>2005-05-26 12:07:32 +1000
commit41bfc29ea5416ea0a389635291bcf388d4bdc225 (patch)
tree85eef9ee1416ca8dea07815847d77197038f212c /ssh-keyscan.c
parentdadfd4dd3862df5cebae2f2dc9b7f112321fa85e (diff)
- moritz@cvs.openbsd.org 2005/04/28 10:17:56
[progressmeter.c ssh-keyscan.c] add snprintf checks. ok djm@ markus@
Diffstat (limited to 'ssh-keyscan.c')
-rw-r--r--ssh-keyscan.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/ssh-keyscan.c b/ssh-keyscan.c
index bc2c3b728..fdcfc5b3c 100644
--- a/ssh-keyscan.c
+++ b/ssh-keyscan.c
@@ -7,7 +7,7 @@
7 */ 7 */
8 8
9#include "includes.h" 9#include "includes.h"
10RCSID("$OpenBSD: ssh-keyscan.c,v 1.52 2005/03/01 15:47:14 jmc Exp $"); 10RCSID("$OpenBSD: ssh-keyscan.c,v 1.53 2005/04/28 10:17:56 moritz Exp $");
11 11
12#include "openbsd-compat/sys-queue.h" 12#include "openbsd-compat/sys-queue.h"
13 13
@@ -543,6 +543,11 @@ congreet(int s)
543 n = snprintf(buf, sizeof buf, "SSH-%d.%d-OpenSSH-keyscan\r\n", 543 n = snprintf(buf, sizeof buf, "SSH-%d.%d-OpenSSH-keyscan\r\n",
544 c->c_keytype == KT_RSA1? PROTOCOL_MAJOR_1 : PROTOCOL_MAJOR_2, 544 c->c_keytype == KT_RSA1? PROTOCOL_MAJOR_1 : PROTOCOL_MAJOR_2,
545 c->c_keytype == KT_RSA1? PROTOCOL_MINOR_1 : PROTOCOL_MINOR_2); 545 c->c_keytype == KT_RSA1? PROTOCOL_MINOR_1 : PROTOCOL_MINOR_2);
546 if (n == -1 || n >= sizeof buf) {
547 error("snprintf: buffer too small");
548 confree(s);
549 return;
550 }
546 if (atomicio(vwrite, s, buf, n) != n) { 551 if (atomicio(vwrite, s, buf, n) != n) {
547 error("write (%s): %s", c->c_name, strerror(errno)); 552 error("write (%s): %s", c->c_name, strerror(errno));
548 confree(s); 553 confree(s);