From: Rui Paulo Date: Wed, 7 Aug 2013 08:01:12 +0000 (+0300) Subject: bsd: Mark the interface down before opening the routing socket X-Git-Tag: aosp-kk-from-upstream~96 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=70a867c26814da1957f926e7e2d6dc21b7d331b4;p=thirdparty%2Fhostap.git bsd: Mark the interface down before opening the routing socket Signed-hostap: Rui Paulo --- diff --git a/src/drivers/driver_bsd.c b/src/drivers/driver_bsd.c index 4dd611ae7..cb898c13d 100644 --- a/src/drivers/driver_bsd.c +++ b/src/drivers/driver_bsd.c @@ -1507,6 +1507,12 @@ wpa_driver_bsd_init(void *ctx, const char *ifname) drv->sock = socket(PF_INET, SOCK_DGRAM, 0); if (drv->sock < 0) goto fail1; + + os_strlcpy(drv->ifname, ifname, sizeof(drv->ifname)); + /* Down interface during setup. */ + if (bsd_ctrl_iface(drv, 0) < 0) + goto fail; + drv->route = socket(PF_ROUTE, SOCK_RAW, 0); if (drv->route < 0) goto fail; @@ -1514,11 +1520,6 @@ wpa_driver_bsd_init(void *ctx, const char *ifname) wpa_driver_bsd_event_receive, ctx, drv); drv->ctx = ctx; - os_strlcpy(drv->ifname, ifname, sizeof(drv->ifname)); - - /* Down interface during setup. */ - if (bsd_ctrl_iface(drv, 0) < 0) - goto fail; if (!GETPARAM(drv, IEEE80211_IOC_ROAMING, drv->prev_roaming)) { wpa_printf(MSG_DEBUG, "%s: failed to get roaming state: %s",