зеркало из https://github.com/github/putty.git
Move the stderr output of event log messages in verbose mode to the
general logging module rather than localising it in ssh.c. This means it should work in other protocols as well (notably Telnet, where it might actually be useful for debugging negotiations). [originally from svn r2360]
This commit is contained in:
Родитель
6adef8429a
Коммит
6c34f06a71
12
logging.c
12
logging.c
|
@ -34,11 +34,21 @@ void logtraffic(void *handle, unsigned char c, int logmode)
|
|||
}
|
||||
|
||||
/*
|
||||
* Log an Event Log entry (used in SSH packet logging mode).
|
||||
* Log an Event Log entry. Used in SSH packet logging mode; this is
|
||||
* also as convenient a place as any to put the output of Event Log
|
||||
* entries to stderr when a command-line tool is in verbose mode.
|
||||
* (In particular, this is a better place to put it than in the
|
||||
* front ends, because it only has to be done once for all
|
||||
* platforms. Platforms which don't have a meaningful stderr can
|
||||
* just avoid defining FLAG_STDERR.
|
||||
*/
|
||||
void log_eventlog(void *handle, char *event)
|
||||
{
|
||||
struct LogContext *ctx = (struct LogContext *)handle;
|
||||
if ((flags & FLAG_STDERR) && (flags & FLAG_VERBOSE)) {
|
||||
fprintf(stderr, "%s\n", event);
|
||||
fflush(stderr);
|
||||
}
|
||||
if (cfg.logtype != LGTYP_PACKETS)
|
||||
return;
|
||||
if (!ctx->lgfp)
|
||||
|
|
8
ssh.c
8
ssh.c
|
@ -638,13 +638,7 @@ struct ssh_tag {
|
|||
int (*s_rdpkt) (Ssh ssh, unsigned char **data, int *datalen);
|
||||
};
|
||||
|
||||
#define logevent(s) do { \
|
||||
logevent(ssh->frontend, s); \
|
||||
if ((flags & FLAG_STDERR) && (flags & FLAG_VERBOSE)) { \
|
||||
fprintf(stderr, "%s\n", s); \
|
||||
fflush(stderr); \
|
||||
} \
|
||||
} while (0)
|
||||
#define logevent(s) logevent(ssh->frontend, s)
|
||||
|
||||
/* logevent, only printf-formatted. */
|
||||
void logeventf(Ssh ssh, char *fmt, ...)
|
||||
|
|
Загрузка…
Ссылка в новой задаче