Hello, Here is a patch to remove the unused variable `log_priority` from dhcpd. This variable seems to be used as a flag for log priority in `syslog_r`. Log priorities are not flags then it makes non sence at all.
Index: dhcpd.c =================================================================== RCS file: /cvs/src/usr.sbin/dhcpd/dhcpd.c,v retrieving revision 1.46 diff -u -p -r1.46 dhcpd.c --- dhcpd.c 16 Jan 2015 06:40:16 -0000 1.46 +++ dhcpd.c 22 Jan 2015 19:19:39 -0000 @@ -54,7 +54,6 @@ u_int16_t server_port; u_int16_t client_port; struct passwd *pw; -int log_priority; int log_perror = 0; int pfpipe[2]; int gotpipe = 0; Index: dhcpd.h =================================================================== RCS file: /cvs/src/usr.sbin/dhcpd/dhcpd.h,v retrieving revision 1.52 diff -u -p -r1.52 dhcpd.h --- dhcpd.h 11 Jul 2014 16:48:29 -0000 1.52 +++ dhcpd.h 22 Jan 2015 19:19:39 -0000 @@ -497,7 +497,6 @@ extern struct group root_group; extern u_int16_t server_port; extern u_int16_t client_port; -extern int log_priority; extern int log_perror; extern char *path_dhcpd_conf; Index: errwarn.c =================================================================== RCS file: /cvs/src/usr.sbin/dhcpd/errwarn.c,v retrieving revision 1.8 diff -u -p -r1.8 errwarn.c --- errwarn.c 7 May 2008 12:19:20 -0000 1.8 +++ errwarn.c 6 Feb 2015 20:24:41 -0000 @@ -73,7 +73,7 @@ error(char *fmt, ...) write(STDERR_FILENO, mbuf, strlen(mbuf)); write(STDERR_FILENO, "\n", 1); } else - syslog_r(log_priority | LOG_ERR, &sdata, "%s", mbuf); + syslog_r(LOG_ERR, &sdata, "%s", mbuf); if (log_perror) { fprintf(stderr, "exiting.\n"); @@ -102,7 +102,7 @@ warning(char *fmt, ...) write(STDERR_FILENO, mbuf, strlen(mbuf)); write(STDERR_FILENO, "\n", 1); } else - syslog_r(log_priority | LOG_ERR, &sdata, "%s", mbuf); + syslog_r(LOG_ERR, &sdata, "%s", mbuf); return (0); } @@ -125,7 +125,7 @@ note(char *fmt, ...) write(STDERR_FILENO, mbuf, strlen(mbuf)); write(STDERR_FILENO, "\n", 1); } else - syslog_r(log_priority | LOG_INFO, &sdata, "%s", mbuf); + syslog_r(LOG_INFO, &sdata, "%s", mbuf); return (0); } @@ -148,7 +148,7 @@ debug(char *fmt, ...) write(STDERR_FILENO, mbuf, strlen(mbuf)); write(STDERR_FILENO, "\n", 1); } else - syslog_r(log_priority | LOG_DEBUG, &sdata, "%s", mbuf); + syslog_r(LOG_DEBUG, &sdata, "%s", mbuf); return (0); } @@ -226,11 +226,10 @@ parse_warn(char *fmt, ...) } writev(STDERR_FILENO, iov, iovcnt); } else { - syslog_r(log_priority | LOG_ERR, &sdata, "%s", mbuf); - syslog_r(log_priority | LOG_ERR, &sdata, "%s", token_line); + syslog_r(LOG_ERR, &sdata, "%s", mbuf); + syslog_r(LOG_ERR, &sdata, "%s", token_line); if (lexchar < 81) - syslog_r(log_priority | LOG_ERR, &sdata, "%*c", lexchar, - '^'); + syslog_r(LOG_ERR, &sdata, "%*c", lexchar, '^'); } warnings_occurred = 1; -- Bertrand Provost