]>
Commit | Line | Data |
---|---|---|
8efc0c15 | 1 | /* |
5260325f | 2 | * Author: Tatu Ylonen <ylo@cs.hut.fi> |
5260325f | 3 | * Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland |
4 | * All rights reserved | |
5260325f | 5 | * Client-side versions of debug(), log(), etc. These print to stderr. |
6 | * This is a stripped down version of log-server.c. | |
6ae2364d | 7 | * |
bcbf86ec | 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. | |
5260325f | 36 | */ |
8efc0c15 | 37 | |
38 | #include "includes.h" | |
bcbf86ec | 39 | RCSID("$OpenBSD: log-client.c,v 1.12 2000/09/12 20:53:10 markus Exp $"); |
8efc0c15 | 40 | |
41 | #include "xmalloc.h" | |
42 | #include "ssh.h" | |
43 | ||
6a17f9c2 | 44 | static LogLevel log_level = SYSLOG_LEVEL_INFO; |
8efc0c15 | 45 | |
6a17f9c2 | 46 | /* Initialize the log. |
5260325f | 47 | * av0 program name (should be argv[0]) |
48 | * level logging level | |
49 | */ | |
8efc0c15 | 50 | |
6a17f9c2 | 51 | void |
52 | log_init(char *av0, LogLevel level, SyslogFacility ignored1, int ignored2) | |
8efc0c15 | 53 | { |
5260325f | 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: | |
bcbf86ec | 60 | case SYSLOG_LEVEL_DEBUG1: |
61 | case SYSLOG_LEVEL_DEBUG2: | |
62 | case SYSLOG_LEVEL_DEBUG3: | |
5260325f | 63 | log_level = level; |
64 | break; | |
65 | default: | |
66 | /* unchanged */ | |
67 | break; | |
68 | } | |
8efc0c15 | 69 | } |
70 | ||
c8d54615 | 71 | #define MSGBUFSIZ 1024 |
8efc0c15 | 72 | |
6a17f9c2 | 73 | void |
74 | do_log(LogLevel level, const char *fmt, va_list args) | |
8efc0c15 | 75 | { |
c8d54615 | 76 | char msgbuf[MSGBUFSIZ]; |
5260325f | 77 | |
78 | if (level > log_level) | |
79 | return; | |
bcbf86ec | 80 | if (level >= SYSLOG_LEVEL_DEBUG1) |
5260325f | 81 | fprintf(stderr, "debug: "); |
82 | vsnprintf(msgbuf, sizeof(msgbuf), fmt, args); | |
2e73a022 | 83 | fprintf(stderr, "%s\r\n", msgbuf); |
8efc0c15 | 84 | } |