From df69c215c7c66baf660f3f65414fd34796c96152 Mon Sep 17 00:00:00 2001 From: deraadt Date: Fri, 28 Jun 2019 13:32:41 +0000 Subject: When system calls indicate an error they return -1, not some arbitrary value < 0. errno is only updated in this case. Change all (most?) callers of syscalls to follow this better, and let's see if this strictness helps us in the future. --- usr.sbin/dvmrpd/interface.c | 22 +++++++++++----------- usr.sbin/dvmrpd/kmroute.c | 14 +++++++------- 2 files changed, 18 insertions(+), 18 deletions(-) (limited to 'usr.sbin/dvmrpd') diff --git a/usr.sbin/dvmrpd/interface.c b/usr.sbin/dvmrpd/interface.c index 76bf469d749..33156463fa9 100644 --- a/usr.sbin/dvmrpd/interface.c +++ b/usr.sbin/dvmrpd/interface.c @@ -1,4 +1,4 @@ -/* $OpenBSD: interface.c,v 1.11 2015/09/27 17:29:46 stsp Exp $ */ +/* $OpenBSD: interface.c,v 1.12 2019/06/28 13:32:47 deraadt Exp $ */ /* * Copyright (c) 2005 Claudio Jeker @@ -182,7 +182,7 @@ if_new(struct kif *kif) /* set up ifreq */ strlcpy(ifr->ifr_name, kif->ifname, sizeof(ifr->ifr_name)); - if ((s = socket(AF_INET, SOCK_DGRAM, 0)) < 0) + if ((s = socket(AF_INET, SOCK_DGRAM, 0)) == -1) err(1, "if_new: socket"); /* get type */ @@ -201,20 +201,20 @@ if_new(struct kif *kif) iface->baudrate = kif->baudrate; /* get address */ - if (ioctl(s, SIOCGIFADDR, (caddr_t)ifr) < 0) + if (ioctl(s, SIOCGIFADDR, (caddr_t)ifr) == -1) err(1, "if_new: cannot get address"); sain = (struct sockaddr_in *) &ifr->ifr_addr; iface->addr = sain->sin_addr; /* get mask */ - if (ioctl(s, SIOCGIFNETMASK, (caddr_t)ifr) < 0) + if (ioctl(s, SIOCGIFNETMASK, (caddr_t)ifr) == -1) err(1, "if_new: cannot get mask"); sain = (struct sockaddr_in *) &ifr->ifr_addr; iface->mask = sain->sin_addr; /* get p2p dst address */ if (iface->type == IF_TYPE_POINTOPOINT) { - if (ioctl(s, SIOCGIFDSTADDR, (caddr_t)ifr) < 0) + if (ioctl(s, SIOCGIFDSTADDR, (caddr_t)ifr) == -1) err(1, "if_new: cannot get dst addr"); sain = (struct sockaddr_in *) &ifr->ifr_addr; iface->dst = sain->sin_addr; @@ -513,7 +513,7 @@ int if_set_mcast_ttl(int fd, u_int8_t ttl) { if (setsockopt(fd, IPPROTO_IP, IP_MULTICAST_TTL, - (char *)&ttl, sizeof(ttl)) < 0) { + (char *)&ttl, sizeof(ttl)) == -1) { log_warn("if_set_mcast_ttl: error setting " "IP_MULTICAST_TTL to %d", ttl); return (-1); @@ -526,7 +526,7 @@ int if_set_tos(int fd, int tos) { if (setsockopt(fd, IPPROTO_IP, IP_TOS, - (int *)&tos, sizeof(tos)) < 0) { + (int *)&tos, sizeof(tos)) == -1) { log_warn("if_set_tos: error setting IP_TOS to 0x%x", tos); return (-1); } @@ -557,7 +557,7 @@ if_join_group(struct iface *iface, struct in_addr *addr) mreq.imr_interface.s_addr = iface->addr.s_addr; if (setsockopt(iface->fd, IPPROTO_IP, IP_ADD_MEMBERSHIP, - (void *)&mreq, sizeof(mreq)) < 0) { + (void *)&mreq, sizeof(mreq)) == -1) { log_debug("if_join_group: error IP_ADD_MEMBERSHIP, " "interface %s", iface->name); return (-1); @@ -582,7 +582,7 @@ if_leave_group(struct iface *iface, struct in_addr *addr) mreq.imr_interface.s_addr = iface->addr.s_addr; if (setsockopt(iface->fd, IPPROTO_IP, IP_DROP_MEMBERSHIP, - (void *)&mreq, sizeof(mreq)) < 0) { + (void *)&mreq, sizeof(mreq)) == -1) { log_debug("if_leave_group: error IP_DROP_MEMBERSHIP, " "interface %s", iface->name); return (-1); @@ -603,7 +603,7 @@ if_set_mcast(struct iface *iface) case IF_TYPE_BROADCAST: if (setsockopt(iface->fd, IPPROTO_IP, IP_MULTICAST_IF, (char *)&iface->addr.s_addr, - sizeof(iface->addr.s_addr)) < 0) { + sizeof(iface->addr.s_addr)) == -1) { log_debug("if_set_mcast: error setting " "IP_MULTICAST_IF, interface %s", iface->name); return (-1); @@ -622,7 +622,7 @@ if_set_mcast_loop(int fd) u_int8_t loop = 0; if (setsockopt(fd, IPPROTO_IP, IP_MULTICAST_LOOP, - (char *)&loop, sizeof(loop)) < 0) { + (char *)&loop, sizeof(loop)) == -1) { log_warn("if_set_mcast_loop: error setting IP_MULTICAST_LOOP"); return (-1); } diff --git a/usr.sbin/dvmrpd/kmroute.c b/usr.sbin/dvmrpd/kmroute.c index 891f630e27a..8a811ac2182 100644 --- a/usr.sbin/dvmrpd/kmroute.c +++ b/usr.sbin/dvmrpd/kmroute.c @@ -1,4 +1,4 @@ -/* $OpenBSD: kmroute.c,v 1.2 2010/05/26 13:56:07 nicm Exp $ */ +/* $OpenBSD: kmroute.c,v 1.3 2019/06/28 13:32:47 deraadt Exp $ */ /* * Copyright (c) 2005, 2006 Esben Norby @@ -153,7 +153,7 @@ mrt_init(int fd) int flag = 1; if (setsockopt(fd, IPPROTO_IP, MRT_INIT, &flag, - sizeof(flag)) < 0) { + sizeof(flag)) == -1) { log_warn("mrt_init: error setting MRT_INIT"); return (-1); } @@ -167,7 +167,7 @@ mrt_done(int fd) int flag = 0; if (setsockopt(fd, IPPROTO_IP, MRT_DONE, &flag, - sizeof(flag)) < 0) { + sizeof(flag)) == -1) { log_warn("mrt_done: error setting MRT_DONE"); return (-1); } @@ -188,7 +188,7 @@ mrt_add_vif(int fd, struct iface *iface) vc.vifc_rmt_addr.s_addr = 0; if (setsockopt(fd, IPPROTO_IP, MRT_ADD_VIF, &vc, - sizeof(vc)) < 0) { + sizeof(vc)) == -1) { log_warn("mrt_add_vif: error adding VIF"); return (-1); } @@ -204,7 +204,7 @@ mrt_del_vif(int fd, struct iface *iface) vifi = iface->ifindex; if (setsockopt(fd, IPPROTO_IP, MRT_DEL_VIF, &vifi, - sizeof(vifi)) < 0) + sizeof(vifi)) == -1) log_warn("mrt_del_vif: error deleting VIF"); } @@ -226,7 +226,7 @@ mrt_add_mfc(int fd, struct mfc *mfc) } if (setsockopt(fd, IPPROTO_IP, MRT_ADD_MFC, &mc, sizeof(mc)) - < 0) { + == -1) { log_warnx("mrt_add_mfc: error adding group %s to interface %d", inet_ntoa(mfc->group), mfc->ifindex); return (-1); @@ -246,7 +246,7 @@ mrt_del_mfc(int fd, struct mfc *mfc) mc.mfcc_mcastgrp = mfc->group; if (setsockopt(fd, IPPROTO_IP, MRT_DEL_MFC, &mc, sizeof(mc)) - < 0) { + == -1) { log_warnx("mrt_del_mfc: error deleting group %s ", inet_ntoa(mfc->group)); return (-1); -- cgit v1.2.3-59-g8ed1b