summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkrw <krw@openbsd.org>2017-02-13 23:04:05 +0000
committerkrw <krw@openbsd.org>2017-02-13 23:04:05 +0000
commit0438cf0a6dd2ae5931d8546ace2f4647dd255172 (patch)
tree36ab6d40c605d64282178c33dab3b403a56516f8
parentEliminate pointless'%m' (a.k.a. hand rolled strerror()) by using fatal() and (diff)
downloadwireguard-openbsd-0438cf0a6dd2ae5931d8546ace2f4647dd255172.tar.xz
wireguard-openbsd-0438cf0a6dd2ae5931d8546ace2f4647dd255172.zip
Eliminate pointless'%m' (a.k.a. hand rolled strerror()) by using fatal() and
log_warn(). Zap a couple of explicit 'syslog()' calls.
-rw-r--r--usr.sbin/dhcpd/bpf.c25
-rw-r--r--usr.sbin/dhcpd/confpars.c9
-rw-r--r--usr.sbin/dhcpd/db.c8
-rw-r--r--usr.sbin/dhcpd/dhcp.c4
-rw-r--r--usr.sbin/dhcpd/dhcpd.c14
-rw-r--r--usr.sbin/dhcpd/dhcpd.h3
-rw-r--r--usr.sbin/dhcpd/dispatch.c11
-rw-r--r--usr.sbin/dhcpd/icmp.c10
-rw-r--r--usr.sbin/dhcpd/memory.c4
-rw-r--r--usr.sbin/dhcpd/parse.c40
-rw-r--r--usr.sbin/dhcpd/pfutils.c14
-rw-r--r--usr.sbin/dhcpd/sync.c6
12 files changed, 53 insertions, 95 deletions
diff --git a/usr.sbin/dhcpd/bpf.c b/usr.sbin/dhcpd/bpf.c
index b862a44cd62..d046681e957 100644
--- a/usr.sbin/dhcpd/bpf.c
+++ b/usr.sbin/dhcpd/bpf.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: bpf.c,v 1.15 2017/02/13 19:13:14 krw Exp $ */
+/* $OpenBSD: bpf.c,v 1.16 2017/02/13 23:04:05 krw Exp $ */
/* BPF socket interface code, originally contributed by Archie Cobbs. */
@@ -78,12 +78,11 @@ if_register_bpf(struct interface_info *info)
int sock;
if ((sock = open("/dev/bpf0", O_RDWR)) == -1)
- fatalx("Can't open bpf device: %m");
+ fatal("Can't open bpf device");
/* Set the BPF device to point at this interface. */
if (ioctl(sock, BIOCSETIF, info->ifp) == -1)
- fatalx("Can't attach interface %s to bpf device: %m",
- info->name);
+ fatal("Can't attach interface %s to bpf device", info->name);
info->send_packet = send_packet;
return (sock);
@@ -182,7 +181,7 @@ if_register_receive(struct interface_info *info)
/* Make sure the BPF version is in range... */
if (ioctl(info->rfdesc, BIOCVERSION, &v) == -1)
- fatalx("Can't get BPF version: %m");
+ fatal("Can't get BPF version");
if (v.bv_major != BPF_MAJOR_VERSION ||
v.bv_minor < BPF_MINOR_VERSION)
@@ -194,18 +193,18 @@ if_register_receive(struct interface_info *info)
* with packets.
*/
if (ioctl(info->rfdesc, BIOCIMMEDIATE, &flag) == -1)
- fatalx("Can't set immediate mode on bpf device: %m");
+ fatal("Can't set immediate mode on bpf device");
if (ioctl(info->rfdesc, BIOCSFILDROP, &flag) == -1)
- fatalx("Can't set filter-drop mode on bpf device: %m");
+ fatal("Can't set filter-drop mode on bpf device");
/* make sure kernel fills in the source ethernet address */
if (ioctl(info->rfdesc, BIOCSHDRCMPLT, &cmplt) == -1)
- fatalx("Can't set header complete flag on bpf device: %m");
+ fatal("Can't set header complete flag on bpf device");
/* Get the required BPF buffer length from the kernel. */
if (ioctl(info->rfdesc, BIOCGBLEN, &sz) == -1)
- fatalx("Can't get bpf buffer length: %m");
+ fatal("Can't get bpf buffer length");
info->rbuf_max = sz;
info->rbuf = malloc(info->rbuf_max);
if (!info->rbuf)
@@ -219,18 +218,18 @@ if_register_receive(struct interface_info *info)
p.bf_insns = dhcp_bpf_filter;
if (ioctl(info->rfdesc, BIOCSETF, &p) == -1)
- fatalx("Can't install packet filter program: %m");
+ fatal("Can't install packet filter program");
/* Set up the bpf write filter program structure. */
p.bf_len = dhcp_bpf_wfilter_len;
p.bf_insns = dhcp_bpf_wfilter;
if (ioctl(info->rfdesc, BIOCSETWF, &p) == -1)
- fatalx("Can't install write filter program: %m");
+ fatal("Can't install write filter program");
/* make sure these settings cannot be changed after dropping privs */
if (ioctl(info->rfdesc, BIOCLOCK) == -1)
- fatalx("Failed to lock bpf descriptor: %m");
+ fatal("Failed to lock bpf descriptor");
}
ssize_t
@@ -256,7 +255,7 @@ send_packet(struct interface_info *interface, struct dhcp_packet *raw,
result = writev(interface->wfdesc, iov, 2);
if (result == -1)
- log_warnx("send_packet: %m");
+ log_warn("send_packet");
return (result);
}
diff --git a/usr.sbin/dhcpd/confpars.c b/usr.sbin/dhcpd/confpars.c
index d23ea620bd5..4d5f1d1eb1c 100644
--- a/usr.sbin/dhcpd/confpars.c
+++ b/usr.sbin/dhcpd/confpars.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: confpars.c,v 1.30 2017/02/13 22:33:39 krw Exp $ */
+/* $OpenBSD: confpars.c,v 1.31 2017/02/13 23:04:05 krw Exp $ */
/*
* Copyright (c) 1995, 1996, 1997 The Internet Software Consortium.
@@ -82,7 +82,7 @@ readconf(void)
root_group.authoritative = 1;
if ((cfile = fopen(path_dhcpd_conf, "r")) == NULL)
- fatalx("Can't open %s: %m", path_dhcpd_conf);
+ fatal("Can't open %s", path_dhcpd_conf);
do {
token = peek_token(&val, cfile);
@@ -126,9 +126,8 @@ read_leases(void)
* could create severe network chaos.
*/
if ((cfile = fopen(path_dhcpd_db, "r")) == NULL) {
- log_warnx("Can't open lease database %s: %m -- %s",
- path_dhcpd_db,
- "check for failed database rewrite attempt!");
+ log_warn("Can't open lease database (%s)", path_dhcpd_db);
+ log_warnx("check for failed database rewrite attempt!");
log_warnx("Please read the dhcpd.leases manual page if you");
fatalx("don't know what to do about this.");
}
diff --git a/usr.sbin/dhcpd/db.c b/usr.sbin/dhcpd/db.c
index cc153373da4..295e522b1ce 100644
--- a/usr.sbin/dhcpd/db.c
+++ b/usr.sbin/dhcpd/db.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: db.c,v 1.17 2017/02/13 19:13:14 krw Exp $ */
+/* $OpenBSD: db.c,v 1.18 2017/02/13 23:04:05 krw Exp $ */
/*
* Persistent database management routines for DHCPD.
@@ -168,12 +168,12 @@ commit_leases(void)
* rewrite fails.
*/
if (fflush(db_file) == EOF) {
- log_info("commit_leases: unable to commit: %m");
+ log_warn("commit_leases: unable to commit");
return (0);
}
if (fsync(fileno(db_file)) == -1) {
- log_info("commit_leases: unable to commit: %m");
+ log_warn("commit_leases: unable to commit");
return (0);
}
@@ -198,7 +198,7 @@ db_startup(void)
/* open lease file. once we dropped privs it has to stay open */
db_fd = open(path_dhcpd_db, O_WRONLY|O_CREAT, 0640);
if (db_fd == -1)
- fatalx("Can't create new lease file: %m");
+ fatal("Can't create new lease file");
if ((db_file = fdopen(db_fd, "w")) == NULL)
fatalx("Can't fdopen new lease file!");
diff --git a/usr.sbin/dhcpd/dhcp.c b/usr.sbin/dhcpd/dhcp.c
index 48e9f92f1e1..27355ebccab 100644
--- a/usr.sbin/dhcpd/dhcp.c
+++ b/usr.sbin/dhcpd/dhcp.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: dhcp.c,v 1.54 2017/02/13 22:33:39 krw Exp $ */
+/* $OpenBSD: dhcp.c,v 1.55 2017/02/13 23:04:05 krw Exp $ */
/*
* Copyright (c) 1995, 1996, 1997, 1998, 1999
@@ -688,7 +688,7 @@ nak_lease(struct packet *packet, struct iaddr *cip)
result = packet->interface->send_packet(packet->interface, &raw,
outgoing.packet_length, from, &to, packet->haddr);
if (result == -1)
- log_warnx("send_fallback: %m");
+ log_warn("send_fallback");
return;
} else {
to.sin_addr.s_addr = htonl(INADDR_BROADCAST);
diff --git a/usr.sbin/dhcpd/dhcpd.c b/usr.sbin/dhcpd/dhcpd.c
index e7c1698dcc5..569fc48c36f 100644
--- a/usr.sbin/dhcpd/dhcpd.c
+++ b/usr.sbin/dhcpd/dhcpd.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: dhcpd.c,v 1.54 2017/02/13 22:33:39 krw Exp $ */
+/* $OpenBSD: dhcpd.c,v 1.55 2017/02/13 23:04:05 krw Exp $ */
/*
* Copyright (c) 2004 Henning Brauer <henning@cvs.openbsd.org>
@@ -202,7 +202,7 @@ main(int argc, char *argv[])
if (rdomain != -1)
if (setrtable(rdomain) == -1)
- fatalx("setrtable (%m)");
+ fatal("setrtable");
if (syncsend || syncrecv) {
syncfd = sync_init(sync_iface, sync_baddr, sync_port);
@@ -224,10 +224,10 @@ main(int argc, char *argv[])
(changedmac_tab != NULL) ||
(leased_tab != NULL)){
if (pipe(pfpipe) == -1)
- fatalx("pipe (%m)");
+ fatal("pipe");
switch (pfproc_pid = fork()){
case -1:
- fatalx("fork (%m)");
+ fatal("fork");
/* NOTREACHED */
exit(1);
case 0:
@@ -249,13 +249,13 @@ main(int argc, char *argv[])
icmp_startup(1, lease_pinged);
if (chroot(_PATH_VAREMPTY) == -1)
- fatalx("chroot %s: %m", _PATH_VAREMPTY);
+ fatal("chroot %s", _PATH_VAREMPTY);
if (chdir("/") == -1)
- fatalx("chdir(\"/\"): %m");
+ fatal("chdir(\"/\")");
if (setgroups(1, &pw->pw_gid) ||
setresgid(pw->pw_gid, pw->pw_gid, pw->pw_gid) ||
setresuid(pw->pw_uid, pw->pw_uid, pw->pw_uid))
- fatalx("can't drop privileges: %m");
+ fatal("can't drop privileges");
if (udpsockmode) {
if (pledge("stdio inet route sendfd", NULL) == -1)
diff --git a/usr.sbin/dhcpd/dhcpd.h b/usr.sbin/dhcpd/dhcpd.h
index 2096c2c81a5..97596ab18a3 100644
--- a/usr.sbin/dhcpd/dhcpd.h
+++ b/usr.sbin/dhcpd/dhcpd.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: dhcpd.h,v 1.58 2017/02/13 22:33:39 krw Exp $ */
+/* $OpenBSD: dhcpd.h,v 1.59 2017/02/13 23:04:05 krw Exp $ */
/*
* Copyright (c) 1995, 1996, 1997, 1998, 1999
@@ -447,7 +447,6 @@ typedef unsigned char option_mask[16];
/* parse.c */
extern int warnings_occurred;
-void do_percentm(char *obuf, size_t size, char *ibuf);
int parse_warn(char *, ...) __attribute__ ((__format__ (__printf__, 1,
2)));
diff --git a/usr.sbin/dhcpd/dispatch.c b/usr.sbin/dhcpd/dispatch.c
index dfe51513881..cb23d17d2f7 100644
--- a/usr.sbin/dhcpd/dispatch.c
+++ b/usr.sbin/dhcpd/dispatch.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: dispatch.c,v 1.41 2017/02/13 22:33:39 krw Exp $ */
+/* $OpenBSD: dispatch.c,v 1.42 2017/02/13 23:04:05 krw Exp $ */
/*
* Copyright (c) 1995, 1996, 1997, 1998, 1999
@@ -376,7 +376,7 @@ another:
switch (poll(fds, nfds, to_msec)) {
case -1:
if (errno != EAGAIN && errno != EINTR)
- fatalx("poll: %m");
+ fatal("poll");
/* FALLTHROUGH */
case 0:
continue; /* no packets */
@@ -455,7 +455,7 @@ interface_status(struct interface_info *ifinfo)
memset(&ifr, 0, sizeof(ifr));
strlcpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name));
if (ioctl(ifsock, SIOCGIFFLAGS, &ifr) == -1) {
- syslog(LOG_ERR, "ioctl(SIOCGIFFLAGS) on %s: %m", ifname);
+ log_warn("ioctl(SIOCGIFFLAGS) on %s", ifname);
goto inactive;
}
/*
@@ -472,8 +472,7 @@ interface_status(struct interface_info *ifinfo)
strlcpy(ifmr.ifm_name, ifname, sizeof(ifmr.ifm_name));
if (ioctl(ifsock, SIOCGIFMEDIA, (caddr_t)&ifmr) == -1) {
if (errno != EINVAL) {
- syslog(LOG_DEBUG, "ioctl(SIOCGIFMEDIA) on %s: %m",
- ifname);
+ log_debug("ioctl(SIOCGIFMEDIA) on %s", ifname);
ifinfo->noifmedia = 1;
goto active;
}
@@ -652,7 +651,7 @@ get_rdomain(char *name)
struct ifreq ifr;
if ((s = socket(AF_INET, SOCK_DGRAM, 0)) == -1)
- fatalx("get_rdomain socket: %m");
+ fatal("get_rdomain socket");
memset(&ifr, 0, sizeof(ifr));
strlcpy(ifr.ifr_name, name, sizeof(ifr.ifr_name));
diff --git a/usr.sbin/dhcpd/icmp.c b/usr.sbin/dhcpd/icmp.c
index e63f64390cd..512aebe6c59 100644
--- a/usr.sbin/dhcpd/icmp.c
+++ b/usr.sbin/dhcpd/icmp.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: icmp.c,v 1.17 2017/02/13 22:33:39 krw Exp $ */
+/* $OpenBSD: icmp.c,v 1.18 2017/02/13 23:04:05 krw Exp $ */
/*
* Copyright (c) 1997, 1998 The Internet Software Consortium.
@@ -80,13 +80,13 @@ icmp_startup(int routep, void (*handler)(struct iaddr, u_int8_t *, int))
/* Get a raw socket for the ICMP protocol. */
if ((icmp_protocol_fd = socket(AF_INET, SOCK_RAW, protocol)) == -1)
- fatalx("unable to create icmp socket: %m");
+ fatal("unable to create icmp socket");
/* Make sure it does routing... */
state = 0;
if (setsockopt(icmp_protocol_fd, SOL_SOCKET, SO_DONTROUTE,
&state, sizeof(state)) == -1)
- fatalx("Unable to disable SO_DONTROUTE on ICMP socket: %m");
+ fatal("Unable to disable SO_DONTROUTE on ICMP socket");
add_protocol("icmp", icmp_protocol_fd, icmp_echoreply,
(void *)handler);
@@ -120,7 +120,7 @@ icmp_echorequest(struct iaddr *addr)
status = sendto(icmp_protocol_fd, &icmp, sizeof(icmp), 0,
(struct sockaddr *)&to, sizeof(to));
if (status == -1)
- log_warnx("icmp_echorequest %s: %m", inet_ntoa(to.sin_addr));
+ log_warn("icmp_echorequest %s", inet_ntoa(to.sin_addr));
if (status != sizeof icmp)
return 0;
@@ -142,7 +142,7 @@ icmp_echoreply(struct protocol *protocol)
status = recvfrom(protocol->fd, icbuf, sizeof(icbuf), 0,
(struct sockaddr *)&from, &salen);
if (status == -1) {
- log_warnx("icmp_echoreply: %m");
+ log_warn("icmp_echoreply");
return;
}
diff --git a/usr.sbin/dhcpd/memory.c b/usr.sbin/dhcpd/memory.c
index c5f17c38e01..d0b44d69132 100644
--- a/usr.sbin/dhcpd/memory.c
+++ b/usr.sbin/dhcpd/memory.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: memory.c,v 1.27 2017/02/13 22:33:39 krw Exp $ */
+/* $OpenBSD: memory.c,v 1.28 2017/02/13 23:04:05 krw Exp $ */
/*
* Copyright (c) 1995, 1996, 1997, 1998 The Internet Software Consortium.
@@ -886,5 +886,5 @@ write_leases(void)
}
}
if (!commit_leases())
- fatalx("Can't commit leases to new database: %m");
+ fatal("Can't commit leases to new database");
}
diff --git a/usr.sbin/dhcpd/parse.c b/usr.sbin/dhcpd/parse.c
index 9639914529b..3e0ff2b9479 100644
--- a/usr.sbin/dhcpd/parse.c
+++ b/usr.sbin/dhcpd/parse.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: parse.c,v 1.24 2017/02/13 22:33:39 krw Exp $ */
+/* $OpenBSD: parse.c,v 1.25 2017/02/13 23:04:05 krw Exp $ */
/* Common parser code for dhcpd and dhclient. */
@@ -548,43 +548,6 @@ parse_date(FILE *cfile)
return (guess);
}
-/*
- * Find %m in the input string and substitute an error message string.
- */
-void
-do_percentm(char *obuf, size_t size, char *ibuf)
-{
- char ch;
- char *s = ibuf;
- char *t = obuf;
- size_t prlen;
- size_t fmt_left;
- int saved_errno = errno;
-
- /*
- * We wouldn't need this mess if printf handled %m, or if
- * strerror() had been invented before syslog_r().
- */
- for (fmt_left = size; (ch = *s); ++s) {
- if (ch == '%' && s[1] == 'm') {
- ++s;
- prlen = snprintf(t, fmt_left, "%s",
- strerror(saved_errno));
- if (prlen == -1)
- prlen = 0;
- if (prlen >= fmt_left)
- prlen = fmt_left - 1;
- t += prlen;
- fmt_left -= prlen;
- } else {
- if (fmt_left > 1) {
- *t++ = ch;
- fmt_left--;
- }
- }
- }
- *t = '\0';
-}
int warnings_occurred;
int
@@ -599,7 +562,6 @@ parse_warn(char *fmt, ...)
struct iovec iov[6];
size_t iovcnt;
- do_percentm(mbuf, sizeof(mbuf), fmt);
snprintf(fbuf, sizeof(fbuf), "%s line %d: %s", tlname, lexline, mbuf);
va_start(list, fmt);
vsnprintf(mbuf, sizeof(mbuf), fbuf, list);
diff --git a/usr.sbin/dhcpd/pfutils.c b/usr.sbin/dhcpd/pfutils.c
index 419515e942a..6f661f7d8a4 100644
--- a/usr.sbin/dhcpd/pfutils.c
+++ b/usr.sbin/dhcpd/pfutils.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pfutils.c,v 1.17 2017/02/13 21:53:53 krw Exp $ */
+/* $OpenBSD: pfutils.c,v 1.18 2017/02/13 23:04:05 krw Exp $ */
/*
* Copyright (c) 2006 Chris Kuethe <ckuethe@openbsd.org>
*
@@ -53,15 +53,15 @@ pftable_handler()
int l, r, fd, nfds;
if ((fd = open(_PATH_DEV_PF, O_RDWR|O_NOFOLLOW, 0660)) == -1)
- log_warnx("can't open pf device: %m");
+ log_warn("can't open pf device");
if (chroot(_PATH_VAREMPTY) == -1)
- log_warnx("chroot %s: %m", _PATH_VAREMPTY);
+ log_warn("chroot %s", _PATH_VAREMPTY);
if (chdir("/") == -1)
- log_warnx("chdir(\"/\"): %m");
+ log_warn("chdir(\"/\")");
if (setgroups(1, &pw->pw_gid) ||
setresgid(pw->pw_gid, pw->pw_gid, pw->pw_gid) ||
setresuid(pw->pw_uid, pw->pw_uid, pw->pw_uid))
- log_warnx("can't drop privileges: %m");
+ log_warn("can't drop privileges");
setproctitle("pf table handler");
l = sizeof(struct pf_cmd);
@@ -71,7 +71,7 @@ pftable_handler()
pfd[0].events = POLLIN;
if ((nfds = poll(pfd, 1, -1)) == -1)
if (errno != EINTR)
- log_warnx("poll: %m");
+ log_warn("poll");
if (nfds > 0 && (pfd[0].revents & POLLHUP))
log_warnx("pf pipe closed");
@@ -81,7 +81,7 @@ pftable_handler()
r = atomicio(read, pfpipe[0], &cmd, l);
if (r != l)
- log_warnx("pf pipe error: %m");
+ log_warn("pf pipe error");
switch (cmd.type) {
case 'A':
diff --git a/usr.sbin/dhcpd/sync.c b/usr.sbin/dhcpd/sync.c
index 4cb2d45ea21..d17455e8fb9 100644
--- a/usr.sbin/dhcpd/sync.c
+++ b/usr.sbin/dhcpd/sync.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: sync.c,v 1.22 2017/02/13 22:33:39 krw Exp $ */
+/* $OpenBSD: sync.c,v 1.23 2017/02/13 23:04:05 krw Exp $ */
/*
* Copyright (c) 2008 Bob Beck <beck@openbsd.org>
@@ -369,7 +369,7 @@ sync_send(struct iovec *iov, int iovlen)
msg.msg_name = &sync_out;
msg.msg_namelen = sizeof(sync_out);
if (sendmsg(syncfd, &msg, 0) == -1)
- log_warnx("sending multicast sync message failed: %m");
+ log_warn("sending multicast sync message failed");
}
LIST_FOREACH(shost, &sync_hosts, h_entry) {
@@ -379,7 +379,7 @@ sync_send(struct iovec *iov, int iovlen)
msg.msg_name = &shost->sh_addr;
msg.msg_namelen = sizeof(shost->sh_addr);
if (sendmsg(syncfd, &msg, 0) == -1)
- log_warnx("sending sync message failed: %m");
+ log_warn("sending sync message failed");
}
}