kernel - SWAP CACHE part 18/many - Minor enablement swapspace check
[dragonfly.git] / usr.sbin / atm / atmarpd / atmarp_log.c
blobeb0da10b0ffc8cc485120d7994beeb6292da1bf5
1 /*
3 * ===================================
4 * HARP | Host ATM Research Platform
5 * ===================================
8 * This Host ATM Research Platform ("HARP") file (the "Software") is
9 * made available by Network Computing Services, Inc. ("NetworkCS")
10 * "AS IS". NetworkCS does not provide maintenance, improvements or
11 * support of any kind.
13 * NETWORKCS MAKES NO WARRANTIES OR REPRESENTATIONS, EXPRESS OR IMPLIED,
14 * INCLUDING, BUT NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY
15 * AND FITNESS FOR A PARTICULAR PURPOSE, AS TO ANY ELEMENT OF THE
16 * SOFTWARE OR ANY SUPPORT PROVIDED IN CONNECTION WITH THIS SOFTWARE.
17 * In no event shall NetworkCS be responsible for any damages, including
18 * but not limited to consequential damages, arising from or relating to
19 * any use of the Software or related support.
21 * Copyright 1994-1998 Network Computing Services, Inc.
23 * Copies of this Software may be made, however, the above copyright
24 * notice must be reproduced on all copies.
26 * @(#) $FreeBSD: src/usr.sbin/atm/atmarpd/atmarp_log.c,v 1.3 1999/08/28 01:15:30 peter Exp $
27 * @(#) $DragonFly: src/usr.sbin/atm/atmarpd/atmarp_log.c,v 1.4 2007/11/25 01:28:23 swildner Exp $
32 * Server Cache Synchronization Protocol (SCSP) Support
33 * ----------------------------------------------------
35 * SCSP-ATMARP server interface: logging routines
39 #include <sys/types.h>
40 #include <sys/param.h>
41 #include <sys/socket.h>
42 #include <net/if.h>
43 #include <netinet/in.h>
44 #include <netatm/queue.h>
45 #include <netatm/atm.h>
46 #include <netatm/atm_if.h>
47 #include <netatm/atm_sap.h>
48 #include <netatm/atm_sys.h>
49 #include <netatm/atm_ioctl.h>
51 #include <errno.h>
52 #include <libatm.h>
53 #if __STDC__
54 #include <stdarg.h>
55 #else
56 #include <varargs.h>
57 #endif
58 #include <stdio.h>
59 #include <stdlib.h>
60 #include <syslog.h>
62 #include "../scspd/scsp_msg.h"
63 #include "../scspd/scsp_if.h"
64 #include "../scspd/scsp_var.h"
65 #include "atmarp_var.h"
68 * Write a message to atmarpd's log
70 * Arguments:
71 * level the level (error, info, etc.) of the message
72 * fmt printf-style format string
73 * ... parameters for printf-style use according to fmt
75 * Returns:
76 * none
79 void
80 atmarp_log(const int level, const char *fmt, ...)
82 va_list ap;
84 va_start(ap, fmt);
87 * In debug mode, just write to stdout
89 if (atmarp_debug_mode) {
90 vprintf(fmt, ap);
91 printf("\n");
92 return;
96 * Check whether we have a log file set up
98 if (!atmarp_log_file) {
100 * Write to syslog
102 vsyslog(level, fmt, ap);
103 } else {
105 * Write to the log file
107 vfprintf(atmarp_log_file, fmt, ap);
108 fprintf(atmarp_log_file, "\n");
111 va_end(ap);
116 * Log a memory error and exit
118 * Arguments:
119 * cp message to log
121 * Returns:
122 * exits, does not return
125 void
126 atmarp_mem_err(char *cp)
128 atmarp_log(LOG_CRIT, "out of memory: %s", cp);
129 exit(2);