diff options
author | Damien Miller <djm@mindrot.org> | 2008-07-17 18:57:06 +1000 |
---|---|---|
committer | Damien Miller <djm@mindrot.org> | 2008-07-17 18:57:06 +1000 |
commit | 7ba0ca7f6fa0c517822051412cf9f0e7b35304d4 (patch) | |
tree | 6b0e7b95b0840ed7681c6206be9b57d4b2db5cd4 | |
parent | 6ef17495e9c867ef01860a7c97fc1f24ef7aa8db (diff) |
- djm@cvs.openbsd.org 2008/07/17 08:48:00
[sshconnect2.c]
strnvis preauth banner; pointed out by mpf@ ok markus@
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | sshconnect2.c | 18 |
2 files changed, 20 insertions, 6 deletions
@@ -1,3 +1,9 @@ | |||
1 | 20080717 | ||
2 | - (djm) OpenBSD CVS Sync | ||
3 | - djm@cvs.openbsd.org 2008/07/17 08:48:00 | ||
4 | [sshconnect2.c] | ||
5 | strnvis preauth banner; pointed out by mpf@ ok markus@ | ||
6 | |||
1 | 20080716 | 7 | 20080716 |
2 | - OpenBSD CVS Sync | 8 | - OpenBSD CVS Sync |
3 | - djm@cvs.openbsd.org 2008/07/15 02:23:14 | 9 | - djm@cvs.openbsd.org 2008/07/15 02:23:14 |
@@ -4684,4 +4690,4 @@ | |||
4684 | OpenServer 6 and add osr5bigcrypt support so when someone migrates | 4690 | OpenServer 6 and add osr5bigcrypt support so when someone migrates |
4685 | passwords between UnixWare and OpenServer they will still work. OK dtucker@ | 4691 | passwords between UnixWare and OpenServer they will still work. OK dtucker@ |
4686 | 4692 | ||
4687 | $Id: ChangeLog,v 1.5087 2008/07/16 12:42:06 djm Exp $ | 4693 | $Id: ChangeLog,v 1.5088 2008/07/17 08:57:06 djm Exp $ |
diff --git a/sshconnect2.c b/sshconnect2.c index 5bb772368..067fad545 100644 --- a/sshconnect2.c +++ b/sshconnect2.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: sshconnect2.c,v 1.165 2008/01/19 23:09:49 djm Exp $ */ | 1 | /* $OpenBSD: sshconnect2.c,v 1.166 2008/07/17 08:48:00 djm Exp $ */ |
2 | /* | 2 | /* |
3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. | 3 | * Copyright (c) 2000 Markus Friedl. All rights reserved. |
4 | * | 4 | * |
@@ -38,6 +38,7 @@ | |||
38 | #include <stdio.h> | 38 | #include <stdio.h> |
39 | #include <string.h> | 39 | #include <string.h> |
40 | #include <unistd.h> | 40 | #include <unistd.h> |
41 | #include <vis.h> | ||
41 | 42 | ||
42 | #include "openbsd-compat/sys-queue.h" | 43 | #include "openbsd-compat/sys-queue.h" |
43 | 44 | ||
@@ -374,14 +375,21 @@ input_userauth_error(int type, u_int32_t seq, void *ctxt) | |||
374 | void | 375 | void |
375 | input_userauth_banner(int type, u_int32_t seq, void *ctxt) | 376 | input_userauth_banner(int type, u_int32_t seq, void *ctxt) |
376 | { | 377 | { |
377 | char *msg, *lang; | 378 | char *msg, *raw, *lang; |
379 | u_int len; | ||
378 | 380 | ||
379 | debug3("input_userauth_banner"); | 381 | debug3("input_userauth_banner"); |
380 | msg = packet_get_string(NULL); | 382 | raw = packet_get_string(&len); |
381 | lang = packet_get_string(NULL); | 383 | lang = packet_get_string(NULL); |
382 | if (options.log_level >= SYSLOG_LEVEL_INFO) | 384 | if (options.log_level >= SYSLOG_LEVEL_INFO) { |
385 | if (len > 65536) | ||
386 | len = 65536; | ||
387 | msg = xmalloc(len * 4); /* max expansion from strnvis() */ | ||
388 | strnvis(msg, raw, len * 4, VIS_SAFE|VIS_OCTAL); | ||
383 | fprintf(stderr, "%s", msg); | 389 | fprintf(stderr, "%s", msg); |
384 | xfree(msg); | 390 | xfree(msg); |
391 | } | ||
392 | xfree(raw); | ||
385 | xfree(lang); | 393 | xfree(lang); |
386 | } | 394 | } |
387 | 395 | ||