From 36b8d450f0fa33b3f4a1d2cda9a4854ca2ab4eb6 Mon Sep 17 00:00:00 2001 From: Simon Tatham Date: Wed, 10 Oct 2012 18:32:23 +0000 Subject: [PATCH] Add timestamps to the 'SSH raw data' logging mode. [originally from svn r9687] --- logging.c | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/logging.c b/logging.c index 6252364c..fc89db73 100644 --- a/logging.c +++ b/logging.c @@ -258,8 +258,21 @@ void log_packet(void *handle, int direction, int type, type, type, texttype); } } else { - logprintf(ctx, "%s raw data\r\n", - direction == PKT_INCOMING ? "Incoming" : "Outgoing"); + /* + * Raw data is logged with a timestamp, so that it's possible + * to determine whether a mysterious delay occurred at the + * client or server end. (Timestamping the raw data avoids + * cluttering the normal case of only logging decrypted SSH + * messages, and also adds conceptual rigour in the case where + * an SSH message arrives in several pieces.) + */ + char buf[256]; + struct tm tm; + tm = ltime(); + strftime(buf, 24, "%Y-%m-%d %H:%M:%S", &tm); + logprintf(ctx, "%s raw data at %s\r\n", + direction == PKT_INCOMING ? "Incoming" : "Outgoing", + buf); } /*