X-Git-Url: https://git.distorted.org.uk/u/mdw/putty/blobdiff_plain/bf61b5660299e88399304cd8eb9bacddc73a765b..02cf40019f8ae19176a73f9220603cc9e28d5224:/console.c diff --git a/console.c b/console.c index c9284b19..b51e7e77 100644 --- a/console.c +++ b/console.c @@ -15,6 +15,8 @@ int console_batch_mode = FALSE; +static void *console_logctx = NULL; + /* * Clean up and exit. */ @@ -190,7 +192,7 @@ void askcipher(void *frontend, char *ciphername, int cs) * Ask whether to wipe a session log file before writing to it. * Returns 2 for wipe, 1 for append, 0 for cancel (don't log). */ -int askappend(void *frontend, char *filename) +int askappend(void *frontend, Filename filename) { HANDLE hin; DWORD savemode, i; @@ -211,11 +213,11 @@ int askappend(void *frontend, char *filename) char line[32]; if (console_batch_mode) { - fprintf(stderr, msgtemplate_batch, FILENAME_MAX, filename); + fprintf(stderr, msgtemplate_batch, FILENAME_MAX, filename.path); fflush(stderr); return 0; } - fprintf(stderr, msgtemplate, FILENAME_MAX, filename); + fprintf(stderr, msgtemplate, FILENAME_MAX, filename.path); fflush(stderr); hin = GetStdHandle(STD_INPUT_HANDLE); @@ -259,8 +261,15 @@ void old_keyfile_warning(void) fputs(message, stderr); } +void console_provide_logctx(void *logctx) +{ + console_logctx = logctx; +} + void logevent(void *frontend, char *string) { + if (console_logctx) + log_eventlog(console_logctx, string); } int console_get_line(const char *prompt, char *str,