2
0
mirror of https://gitlab.isc.org/isc-projects/dhcp synced 2025-09-03 15:56:00 +00:00

If log_perror is nonzero, print to stderr as well as logging; no more DEBUG ifdefs; parse_warn now prints offending line and points arrow at offending token.

This commit is contained in:
Ted Lemon
1996-08-28 01:38:09 +00:00
parent 4593073fc8
commit 555261121a
2 changed files with 98 additions and 58 deletions

View File

@@ -42,7 +42,7 @@
#ifndef lint #ifndef lint
static char copyright[] = static char copyright[] =
"$Id: errwarn.c,v 1.8 1996/08/27 09:49:06 mellon Exp $ Copyright (c) 1996 The Internet Software Consortium. All rights reserved.\n"; "$Id: errwarn.c,v 1.9 1996/08/28 01:38:09 mellon Exp $ Copyright (c) 1996 The Internet Software Consortium. All rights reserved.\n";
#endif /* not lint */ #endif /* not lint */
#include "dhcpd.h" #include "dhcpd.h"
@@ -67,12 +67,14 @@ void error (ANSI_DECL(char *) fmt, VA_DOTDOTDOT)
VA_start (list, fmt); VA_start (list, fmt);
vsnprintf (mbuf, sizeof mbuf, fbuf, list); vsnprintf (mbuf, sizeof mbuf, fbuf, list);
va_end (list); va_end (list);
#ifndef DEBUG
syslog (log_priority | LOG_ERR, mbuf); syslog (log_priority | LOG_ERR, mbuf);
#else
/* Also log it to stderr? */
if (log_perror) {
write (1, mbuf, strlen (mbuf)); write (1, mbuf, strlen (mbuf));
write (1, "\n", 1); write (1, "\n", 1);
#endif }
cleanup (); cleanup ();
exit (1); exit (1);
@@ -91,12 +93,14 @@ int warn (ANSI_DECL (char *) fmt, VA_DOTDOTDOT)
VA_start (list, fmt); VA_start (list, fmt);
vsnprintf (mbuf, sizeof mbuf, fbuf, list); vsnprintf (mbuf, sizeof mbuf, fbuf, list);
va_end (list); va_end (list);
#ifndef DEBUG
syslog (log_priority | LOG_ERR, mbuf); syslog (log_priority | LOG_ERR, mbuf);
#else
if (log_perror) {
write (1, mbuf, strlen (mbuf)); write (1, mbuf, strlen (mbuf));
write (1, "\n", 1); write (1, "\n", 1);
#endif }
return 0; return 0;
} }
@@ -113,12 +117,14 @@ int note (ANSI_DECL (char *) fmt, VA_DOTDOTDOT)
VA_start (list, fmt); VA_start (list, fmt);
vsnprintf (mbuf, sizeof mbuf, fbuf, list); vsnprintf (mbuf, sizeof mbuf, fbuf, list);
va_end (list); va_end (list);
#ifndef DEBUG
syslog (log_priority | LOG_INFO, mbuf); syslog (log_priority | LOG_INFO, mbuf);
#else
if (log_perror) {
write (1, mbuf, strlen (mbuf)); write (1, mbuf, strlen (mbuf));
write (1, "\n", 1); write (1, "\n", 1);
#endif }
return 0; return 0;
} }
@@ -135,12 +141,14 @@ int debug (ANSI_DECL (char *) fmt, VA_DOTDOTDOT)
VA_start (list, fmt); VA_start (list, fmt);
vsnprintf (mbuf, sizeof mbuf, fbuf, list); vsnprintf (mbuf, sizeof mbuf, fbuf, list);
va_end (list); va_end (list);
#ifndef DEBUG
syslog (log_priority | LOG_DEBUG, mbuf); syslog (log_priority | LOG_DEBUG, mbuf);
#else
if (log_perror) {
write (1, mbuf, strlen (mbuf)); write (1, mbuf, strlen (mbuf));
write (1, "\n", 1); write (1, "\n", 1);
#endif }
return 0; return 0;
} }
@@ -184,24 +192,36 @@ int parse_warn (ANSI_DECL (char *) fmt, VA_DOTDOTDOT)
va_dcl va_dcl
{ {
va_list list; va_list list;
static char spaces [] = " ";
do_percentm (mbuf, fmt); do_percentm (mbuf, fmt);
#ifndef NO_SNPRINTF #ifndef NO_SNPRINTF
snprintf (fbuf, sizeof fbuf, "%s line %d char %d: %s", snprintf (fbuf, sizeof fbuf, "%s line %d: %s",
tlname, lexline, lexchar, mbuf); tlname, lexline, mbuf);
#else #else
sprintf (fbuf, "%s line %d char %d: %s", tlname, tline, tlpos, mbuf); sprintf (fbuf, "%s line %d: %s",
tlname, lexline, mbuf);
#endif #endif
VA_start (list, fmt); VA_start (list, fmt);
vsnprintf (mbuf, sizeof mbuf, fbuf, list); vsnprintf (mbuf, sizeof mbuf, fbuf, list);
va_end (list); va_end (list);
#ifndef DEBUG
syslog (log_priority | LOG_ERR, mbuf); syslog (log_priority | LOG_ERR, mbuf);
#else syslog (log_priority | LOG_ERR, token_line);
if (lexline < 81)
syslog (log_priority | LOG_ERR,
"%s^", &spaces [sizeof spaces - lexchar]);
if (log_perror) {
write (1, mbuf, strlen (mbuf)); write (1, mbuf, strlen (mbuf));
write (1, "\n", 1); write (1, "\n", 1);
#endif write (1, token_line, strlen (token_line));
write (1, "\n", 1);
write (1, spaces, lexchar - 1);
write (1, "^\n", 2);
}
return 0; return 0;
} }

View File

@@ -42,7 +42,7 @@
#ifndef lint #ifndef lint
static char copyright[] = static char copyright[] =
"$Id: errwarn.c,v 1.8 1996/08/27 09:49:06 mellon Exp $ Copyright (c) 1996 The Internet Software Consortium. All rights reserved.\n"; "$Id: errwarn.c,v 1.9 1996/08/28 01:38:09 mellon Exp $ Copyright (c) 1996 The Internet Software Consortium. All rights reserved.\n";
#endif /* not lint */ #endif /* not lint */
#include "dhcpd.h" #include "dhcpd.h"
@@ -67,12 +67,14 @@ void error (ANSI_DECL(char *) fmt, VA_DOTDOTDOT)
VA_start (list, fmt); VA_start (list, fmt);
vsnprintf (mbuf, sizeof mbuf, fbuf, list); vsnprintf (mbuf, sizeof mbuf, fbuf, list);
va_end (list); va_end (list);
#ifndef DEBUG
syslog (log_priority | LOG_ERR, mbuf); syslog (log_priority | LOG_ERR, mbuf);
#else
/* Also log it to stderr? */
if (log_perror) {
write (1, mbuf, strlen (mbuf)); write (1, mbuf, strlen (mbuf));
write (1, "\n", 1); write (1, "\n", 1);
#endif }
cleanup (); cleanup ();
exit (1); exit (1);
@@ -91,12 +93,14 @@ int warn (ANSI_DECL (char *) fmt, VA_DOTDOTDOT)
VA_start (list, fmt); VA_start (list, fmt);
vsnprintf (mbuf, sizeof mbuf, fbuf, list); vsnprintf (mbuf, sizeof mbuf, fbuf, list);
va_end (list); va_end (list);
#ifndef DEBUG
syslog (log_priority | LOG_ERR, mbuf); syslog (log_priority | LOG_ERR, mbuf);
#else
if (log_perror) {
write (1, mbuf, strlen (mbuf)); write (1, mbuf, strlen (mbuf));
write (1, "\n", 1); write (1, "\n", 1);
#endif }
return 0; return 0;
} }
@@ -113,12 +117,14 @@ int note (ANSI_DECL (char *) fmt, VA_DOTDOTDOT)
VA_start (list, fmt); VA_start (list, fmt);
vsnprintf (mbuf, sizeof mbuf, fbuf, list); vsnprintf (mbuf, sizeof mbuf, fbuf, list);
va_end (list); va_end (list);
#ifndef DEBUG
syslog (log_priority | LOG_INFO, mbuf); syslog (log_priority | LOG_INFO, mbuf);
#else
if (log_perror) {
write (1, mbuf, strlen (mbuf)); write (1, mbuf, strlen (mbuf));
write (1, "\n", 1); write (1, "\n", 1);
#endif }
return 0; return 0;
} }
@@ -135,12 +141,14 @@ int debug (ANSI_DECL (char *) fmt, VA_DOTDOTDOT)
VA_start (list, fmt); VA_start (list, fmt);
vsnprintf (mbuf, sizeof mbuf, fbuf, list); vsnprintf (mbuf, sizeof mbuf, fbuf, list);
va_end (list); va_end (list);
#ifndef DEBUG
syslog (log_priority | LOG_DEBUG, mbuf); syslog (log_priority | LOG_DEBUG, mbuf);
#else
if (log_perror) {
write (1, mbuf, strlen (mbuf)); write (1, mbuf, strlen (mbuf));
write (1, "\n", 1); write (1, "\n", 1);
#endif }
return 0; return 0;
} }
@@ -184,24 +192,36 @@ int parse_warn (ANSI_DECL (char *) fmt, VA_DOTDOTDOT)
va_dcl va_dcl
{ {
va_list list; va_list list;
static char spaces [] = " ";
do_percentm (mbuf, fmt); do_percentm (mbuf, fmt);
#ifndef NO_SNPRINTF #ifndef NO_SNPRINTF
snprintf (fbuf, sizeof fbuf, "%s line %d char %d: %s", snprintf (fbuf, sizeof fbuf, "%s line %d: %s",
tlname, lexline, lexchar, mbuf); tlname, lexline, mbuf);
#else #else
sprintf (fbuf, "%s line %d char %d: %s", tlname, tline, tlpos, mbuf); sprintf (fbuf, "%s line %d: %s",
tlname, lexline, mbuf);
#endif #endif
VA_start (list, fmt); VA_start (list, fmt);
vsnprintf (mbuf, sizeof mbuf, fbuf, list); vsnprintf (mbuf, sizeof mbuf, fbuf, list);
va_end (list); va_end (list);
#ifndef DEBUG
syslog (log_priority | LOG_ERR, mbuf); syslog (log_priority | LOG_ERR, mbuf);
#else syslog (log_priority | LOG_ERR, token_line);
if (lexline < 81)
syslog (log_priority | LOG_ERR,
"%s^", &spaces [sizeof spaces - lexchar]);
if (log_perror) {
write (1, mbuf, strlen (mbuf)); write (1, mbuf, strlen (mbuf));
write (1, "\n", 1); write (1, "\n", 1);
#endif write (1, token_line, strlen (token_line));
write (1, "\n", 1);
write (1, spaces, lexchar - 1);
write (1, "^\n", 2);
}
return 0; return 0;
} }