summaryrefslogtreecommitdiff
path: root/monitor.c
diff options
context:
space:
mode:
authorDarren Tucker <dtucker@zip.com.au>2010-03-07 23:05:17 +1100
committerDarren Tucker <dtucker@zip.com.au>2010-03-07 23:05:17 +1100
commitcd70e1b8137023539df57b175b733341d8f4d776 (patch)
tree03efa18fa906f725b07eee451fe96ec9117a3138 /monitor.c
parentac0c4c9c1d511839b2c86ebe5994298b524ceffd (diff)
- dtucker@cvs.openbsd.org 2010/03/07 11:57:13
[auth-rhosts.c monitor.c monitor_wrap.c session.c auth-options.c sshd.c] Hold authentication debug messages until after successful authentication. Fixes an info leak of environment variables specified in authorized_keys, reported by Jacob Appelbaum. ok djm@
Diffstat (limited to 'monitor.c')
-rw-r--r--monitor.c17
1 files changed, 1 insertions, 16 deletions
diff --git a/monitor.c b/monitor.c
index f67cb7670..334aedde5 100644
--- a/monitor.c
+++ b/monitor.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: monitor.c,v 1.105 2010/02/26 20:29:54 djm Exp $ */ 1/* $OpenBSD: monitor.c,v 1.106 2010/03/07 11:57:13 dtucker Exp $ */
2/* 2/*
3 * Copyright 2002 Niels Provos <provos@citi.umich.edu> 3 * Copyright 2002 Niels Provos <provos@citi.umich.edu>
4 * Copyright 2002 Markus Friedl <markus@openbsd.org> 4 * Copyright 2002 Markus Friedl <markus@openbsd.org>
@@ -997,17 +997,6 @@ mm_answer_pam_free_ctx(int sock, Buffer *m)
997} 997}
998#endif 998#endif
999 999
1000static void
1001mm_append_debug(Buffer *m)
1002{
1003 if (auth_debug_init && buffer_len(&auth_debug)) {
1004 debug3("%s: Appending debug messages for child", __func__);
1005 buffer_append(m, buffer_ptr(&auth_debug),
1006 buffer_len(&auth_debug));
1007 buffer_clear(&auth_debug);
1008 }
1009}
1010
1011int 1000int
1012mm_answer_keyallowed(int sock, Buffer *m) 1001mm_answer_keyallowed(int sock, Buffer *m)
1013{ 1002{
@@ -1090,8 +1079,6 @@ mm_answer_keyallowed(int sock, Buffer *m)
1090 buffer_put_int(m, allowed); 1079 buffer_put_int(m, allowed);
1091 buffer_put_int(m, forced_command != NULL); 1080 buffer_put_int(m, forced_command != NULL);
1092 1081
1093 mm_append_debug(m);
1094
1095 mm_request_send(sock, MONITOR_ANS_KEYALLOWED, m); 1082 mm_request_send(sock, MONITOR_ANS_KEYALLOWED, m);
1096 1083
1097 if (type == MM_RSAHOSTKEY) 1084 if (type == MM_RSAHOSTKEY)
@@ -1475,8 +1462,6 @@ mm_answer_rsa_keyallowed(int sock, Buffer *m)
1475 if (key != NULL) 1462 if (key != NULL)
1476 key_free(key); 1463 key_free(key);
1477 1464
1478 mm_append_debug(m);
1479
1480 mm_request_send(sock, MONITOR_ANS_RSAKEYALLOWED, m); 1465 mm_request_send(sock, MONITOR_ANS_RSAKEYALLOWED, m);
1481 1466
1482 monitor_permit(mon_dispatch, MONITOR_REQ_RSACHALLENGE, allowed); 1467 monitor_permit(mon_dispatch, MONITOR_REQ_RSACHALLENGE, allowed);