Annotation of src/usr.bin/ssh/log-client.c, Revision 1.8.2.2
1.1 deraadt 1: /*
1.6 deraadt 2: * Author: Tatu Ylonen <ylo@cs.hut.fi>
3: * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
4: * All rights reserved
5: * Client-side versions of debug(), log(), etc. These print to stderr.
6: * This is a stripped down version of log-server.c.
1.8 markus 7: *
1.8.2.2 ! jason 8: * As far as I am concerned, the code I have written for this software
! 9: * can be used freely for any purpose. Any derived versions of this
! 10: * software must be clearly marked as such, and if the derived work is
! 11: * incompatible with the protocol description in the RFC file, it must be
! 12: * called by a name other than "ssh" or "Secure Shell".
! 13: *
! 14: *
! 15: * Copyright (c) 2000 Markus Friedl. All rights reserved.
! 16: *
! 17: * Redistribution and use in source and binary forms, with or without
! 18: * modification, are permitted provided that the following conditions
! 19: * are met:
! 20: * 1. Redistributions of source code must retain the above copyright
! 21: * notice, this list of conditions and the following disclaimer.
! 22: * 2. Redistributions in binary form must reproduce the above copyright
! 23: * notice, this list of conditions and the following disclaimer in the
! 24: * documentation and/or other materials provided with the distribution.
! 25: *
! 26: * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
! 27: * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
! 28: * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
! 29: * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
! 30: * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
! 31: * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
! 32: * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
! 33: * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
! 34: * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
! 35: * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
1.6 deraadt 36: */
1.1 deraadt 37:
38: #include "includes.h"
1.8.2.2 ! jason 39: RCSID("$OpenBSD: log-client.c,v 1.12 2000/09/12 20:53:10 markus Exp $");
1.1 deraadt 40:
41: #include "xmalloc.h"
42: #include "ssh.h"
43:
1.3 markus 44: static LogLevel log_level = SYSLOG_LEVEL_INFO;
1.1 deraadt 45:
1.3 markus 46: /* Initialize the log.
1.5 markus 47: * av0 program name (should be argv[0])
48: * level logging level
49: */
1.1 deraadt 50:
1.3 markus 51: void
52: log_init(char *av0, LogLevel level, SyslogFacility ignored1, int ignored2)
1.1 deraadt 53: {
1.5 markus 54: switch (level) {
55: case SYSLOG_LEVEL_QUIET:
56: case SYSLOG_LEVEL_ERROR:
57: case SYSLOG_LEVEL_FATAL:
58: case SYSLOG_LEVEL_INFO:
59: case SYSLOG_LEVEL_VERBOSE:
1.8.2.2 ! jason 60: case SYSLOG_LEVEL_DEBUG1:
! 61: case SYSLOG_LEVEL_DEBUG2:
! 62: case SYSLOG_LEVEL_DEBUG3:
1.5 markus 63: log_level = level;
64: break;
65: default:
66: /* unchanged */
67: break;
68: }
1.1 deraadt 69: }
70:
1.7 deraadt 71: #define MSGBUFSIZ 1024
1.1 deraadt 72:
1.3 markus 73: void
74: do_log(LogLevel level, const char *fmt, va_list args)
1.1 deraadt 75: {
1.7 deraadt 76: char msgbuf[MSGBUFSIZ];
1.1 deraadt 77:
1.5 markus 78: if (level > log_level)
79: return;
1.8.2.2 ! jason 80: if (level >= SYSLOG_LEVEL_DEBUG1)
1.5 markus 81: fprintf(stderr, "debug: ");
82: vsnprintf(msgbuf, sizeof(msgbuf), fmt, args);
1.8.2.1 jason 83: fprintf(stderr, "%s\r\n", msgbuf);
1.1 deraadt 84: }