Date: Sat, 18 Dec 2010 20:15:47 +0000 (UTC) From: Bernhard Schmidt <bschmidt@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r216535 - head/usr.sbin/wpa/hostapd Message-ID: <201012182015.oBIKFleA027847@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: bschmidt Date: Sat Dec 18 20:15:47 2010 New Revision: 216535 URL: http://svn.freebsd.org/changeset/base/216535 Log: Prefer os_memset, os_strlcpy and os_free. While here adjust the return value checks for 2 ioctl calls and rewrite error handling in bsd_init to better integrate with upstream code. Modified: head/usr.sbin/wpa/hostapd/driver_freebsd.c Modified: head/usr.sbin/wpa/hostapd/driver_freebsd.c ============================================================================== --- head/usr.sbin/wpa/hostapd/driver_freebsd.c Sat Dec 18 20:14:47 2010 (r216534) +++ head/usr.sbin/wpa/hostapd/driver_freebsd.c Sat Dec 18 20:15:47 2010 (r216535) @@ -168,10 +168,10 @@ bsd_set_iface_flags(void *priv, int flag if (drv->sock < 0) return -1; - memset(&ifr, 0, sizeof(ifr)); - snprintf(ifr.ifr_name, IFNAMSIZ, "%s", drv->ifname); + os_memset(&ifr, 0, sizeof(ifr)); + os_strlcpy(ifr.ifr_name, drv->ifname, sizeof(ifr.ifr_name)); - if (ioctl(drv->sock, SIOCGIFFLAGS, &ifr) != 0) { + if (ioctl(drv->sock, SIOCGIFFLAGS, &ifr) < 0) { perror("ioctl[SIOCGIFFLAGS]"); return -1; } @@ -187,7 +187,7 @@ bsd_set_iface_flags(void *priv, int flag ifr.ifr_flags |= flags; } - if (ioctl(drv->sock, SIOCSIFFLAGS, &ifr) != 0) { + if (ioctl(drv->sock, SIOCSIFFLAGS, &ifr) < 0) { perror("ioctl[SIOCSIFFLAGS]"); return -1; } @@ -697,7 +697,7 @@ bsd_init(struct hostapd_data *hapd, stru perror("socket[PF_INET,SOCK_DGRAM]"); goto bad; } - memcpy(drv->ifname, params->ifname, sizeof(drv->ifname)); + os_strlcpy(drv->ifname, params->ifname, sizeof(drv->ifname)); /* * NB: We require the interface name be mappable to an index. * This implies we do not support having wpa_supplicant @@ -733,13 +733,13 @@ bsd_init(struct hostapd_data *hapd, stru return drv; bad: - if (drv != NULL) { - if (drv->sock_xmit != NULL) - l2_packet_deinit(drv->sock_xmit); - if (drv->sock >= 0) - close(drv->sock); - free(drv); - } + if (drv == NULL) + return NULL; + if (drv->sock_xmit != NULL) + l2_packet_deinit(drv->sock_xmit); + if (drv->sock >= 0) + close(drv->sock); + os_free(drv); return NULL; } @@ -758,7 +758,7 @@ bsd_deinit(void *priv) close(drv->sock); if (drv->sock_xmit != NULL) l2_packet_deinit(drv->sock_xmit); - free(drv); + os_free(drv); } const struct wpa_driver_ops wpa_driver_bsd_ops = {
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201012182015.oBIKFleA027847>