Changeset 28746


Ignore:
Timestamp:
2011-11-04T02:05:26+01:00 (5 years ago)
Author:
nbd
Message:

hostapd: update to latest git version

Location:
trunk/package/hostapd
Files:
2 added
4 deleted
20 edited
3 moved

Legend:

Unmodified
Added
Removed
  • trunk/package/hostapd/Makefile

    r28056 r28746  
    99 
    1010PKG_NAME:=hostapd 
    11 PKG_VERSION:=20110527 
    12 PKG_RELEASE:=2 
    13 PKG_REV:=ceb34f250af7a7082f18c1e0451dc7fbc0f000f3 
     11PKG_VERSION:=20111103 
     12PKG_RELEASE:=1 
     13PKG_REV:=6caaae1e48da247b21b54ea6001646597e35d9b1 
    1414 
    1515PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2 
     
    1818PKG_SOURCE_VERSION:=$(PKG_REV) 
    1919PKG_SOURCE_PROTO:=git 
    20 PKG_MIRROR_MD5SUM:=4b98902d782813b41aca1faff613f677 
     20PKG_MIRROR_MD5SUM:=2650d83c1d4649a5df9fe265f8a5775f 
    2121 
    2222PKG_BUILD_DEPENDS:= \ 
  • trunk/package/hostapd/patches/300-scan_ssid.patch

    r25094 r28746  
    11--- a/wpa_supplicant/scan.c 
    22+++ b/wpa_supplicant/scan.c 
    3 @@ -251,6 +251,7 @@ static void wpa_supplicant_scan(void *el 
    4         enum wps_request_type req_type = WPS_REQ_ENROLLEE_INFO; 
    5  #endif /* CONFIG_WPS */ 
     3@@ -423,6 +423,7 @@ static void wpa_supplicant_scan(void *el 
     4        int scan_req = 0, ret; 
     5        struct wpabuf *extra_ie; 
    66        struct wpa_driver_scan_params params; 
    77+       int scan_ssid_all = 1; 
     
    99        enum wpa_states prev_state; 
    1010  
    11 @@ -307,6 +308,16 @@ static void wpa_supplicant_scan(void *el 
    12             wpa_s->wpa_state == WPA_INACTIVE) 
    13                 wpa_supplicant_set_state(wpa_s, WPA_SCANNING); 
     11@@ -502,6 +503,16 @@ static void wpa_supplicant_scan(void *el 
     12                } 
     13        } 
    1414  
    1515+       /* check if all configured ssids should be scanned directly */ 
     
    2626        ssid = wpa_s->conf->ssid; 
    2727        if (wpa_s->prev_scan_ssid != WILDCARD_SSID_SCAN) { 
    28 @@ -370,6 +381,9 @@ static void wpa_supplicant_scan(void *el 
     28@@ -564,6 +575,9 @@ static void wpa_supplicant_scan(void *el 
    2929                int_array_sort_unique(params.freqs); 
    3030        } 
  • trunk/package/hostapd/patches/310-madwifi_merge.patch

    r26261 r28746  
    132132        f = fopen(buf, "r"); 
    133133        if (!f) { 
    134 @@ -757,7 +758,7 @@ static int madwifi_receive_probe_req(str 
     134@@ -759,7 +760,7 @@ static int madwifi_receive_probe_req(str 
    135135        if (ret) 
    136136                return ret; 
     
    141141        if (drv->sock_raw == NULL) 
    142142                return -1; 
    143 @@ -1017,7 +1018,7 @@ madwifi_get_we_version(struct madwifi_dr 
     143@@ -812,7 +813,7 @@ static int madwifi_set_freq(void *priv,  
     144        struct iwreq iwr; 
     145  
     146        os_memset(&iwr, 0, sizeof(iwr)); 
     147-       os_strlcpy(iwr.ifr_name, drv->iface, IFNAMSIZ); 
     148+       os_strlcpy(iwr.ifr_name, drv->ifname, IFNAMSIZ); 
     149        iwr.u.freq.m = freq->channel; 
     150        iwr.u.freq.e = 0; 
     151  
     152@@ -1037,7 +1038,7 @@ madwifi_get_we_version(struct madwifi_dr 
    144153                return -1; 
    145154  
     
    150159        iwr.u.data.length = buflen; 
    151160  
    152 @@ -1134,17 +1135,17 @@ madwifi_init(struct hostapd_data *hapd,  
     161@@ -1154,17 +1155,17 @@ madwifi_init(struct hostapd_data *hapd,  
    153162                perror("socket[PF_INET,SOCK_DGRAM]"); 
    154163                goto bad; 
     
    171180        if (drv->sock_xmit == NULL) 
    172181                goto bad; 
    173 @@ -1158,7 +1159,7 @@ madwifi_init(struct hostapd_data *hapd,  
     182@@ -1178,7 +1179,7 @@ madwifi_init(struct hostapd_data *hapd,  
    174183                                                1); 
    175184                if (drv->sock_recv == NULL) 
     
    180189                           "EAPOL receive", brname); 
    181190                drv->sock_recv = l2_packet_init(brname, NULL, ETH_P_EAPOL, 
    182 @@ -1169,7 +1170,7 @@ madwifi_init(struct hostapd_data *hapd,  
     191@@ -1189,7 +1190,7 @@ madwifi_init(struct hostapd_data *hapd,  
    183192                drv->sock_recv = drv->sock_xmit; 
    184193  
     
    189198        iwr.u.mode = IW_MODE_MASTER; 
    190199  
    191 @@ -1180,7 +1181,7 @@ madwifi_init(struct hostapd_data *hapd,  
     200@@ -1200,7 +1201,7 @@ madwifi_init(struct hostapd_data *hapd,  
    192201        } 
    193202  
     
    198207  
    199208        madwifi_receive_probe_req(drv); 
    200 @@ -1206,7 +1207,7 @@ madwifi_deinit(void *priv) 
     209@@ -1226,7 +1227,7 @@ madwifi_deinit(void *priv) 
    201210        struct madwifi_driver_data *drv = priv; 
    202211  
     
    207216                close(drv->ioctl_sock); 
    208217        if (drv->sock_recv != NULL && drv->sock_recv != drv->sock_xmit) 
    209 @@ -1225,7 +1226,7 @@ madwifi_set_ssid(void *priv, const u8 *b 
     218@@ -1245,7 +1246,7 @@ madwifi_set_ssid(void *priv, const u8 *b 
    210219        struct iwreq iwr; 
    211220  
     
    216225        iwr.u.essid.pointer = (caddr_t) buf; 
    217226        iwr.u.essid.length = len + 1; 
    218 @@ -1246,7 +1247,7 @@ madwifi_get_ssid(void *priv, u8 *buf, in 
     227@@ -1266,7 +1267,7 @@ madwifi_get_ssid(void *priv, u8 *buf, in 
    219228        int ret = 0; 
    220229  
     
    225234        iwr.u.essid.length = len; 
    226235  
    227 @@ -1271,140 +1272,19 @@ static int 
     236@@ -1291,140 +1292,19 @@ static int 
    228237 madwifi_commit(void *priv) 
    229238 { 
     
    345354-} 
    346355- 
    347 -static int 
     356 static int 
    348357-set80211param(struct wpa_driver_madwifi_data *drv, int op, int arg, 
    349358-             int show_err) 
     
    364373-} 
    365374- 
    366  static int 
     375-static int 
    367376-wpa_driver_madwifi_set_wpa_ie(struct wpa_driver_madwifi_data *drv, 
    368377+wpa_driver_madwifi_set_wpa_ie(struct madwifi_driver_data *drv, 
     
    370379 { 
    371380        struct iwreq iwr; 
    372 @@ -1415,7 +1295,7 @@ wpa_driver_madwifi_set_wpa_ie(struct wpa 
     381@@ -1435,7 +1315,7 @@ wpa_driver_madwifi_set_wpa_ie(struct wpa 
    373382        iwr.u.data.pointer = (void *) wpa_ie; 
    374383        iwr.u.data.length = wpa_ie_len; 
     
    379388                return -1; 
    380389        } 
    381 @@ -1423,157 +1303,51 @@ wpa_driver_madwifi_set_wpa_ie(struct wpa 
     390@@ -1443,157 +1323,51 @@ wpa_driver_madwifi_set_wpa_ie(struct wpa 
    382391 } 
    383392  
     
    545554        if (wpa_driver_madwifi_set_auth_alg(drv, params->auth_alg) < 0) 
    546555                ret = -1; 
    547 @@ -1596,12 +1370,12 @@ wpa_driver_madwifi_associate(void *priv, 
     556@@ -1616,12 +1390,12 @@ wpa_driver_madwifi_associate(void *priv, 
    548557            params->wpa_ie_len == 0) 
    549558                privacy = 0; 
     
    560569  
    561570        if (params->bssid == NULL) { 
    562 @@ -1609,14 +1383,14 @@ wpa_driver_madwifi_associate(void *priv, 
     571@@ -1629,14 +1403,14 @@ wpa_driver_madwifi_associate(void *priv, 
    563572                 * roaming */ 
    564573                /* FIX: this does not seem to work; would probably need to 
     
    577586                if (wpa_driver_wext_set_ssid(drv->wext, params->ssid, 
    578587                                             params->ssid_len) < 0) 
    579 @@ -1625,7 +1399,7 @@ wpa_driver_madwifi_associate(void *priv, 
     588@@ -1645,7 +1419,7 @@ wpa_driver_madwifi_associate(void *priv, 
    580589                mlme.im_op = IEEE80211_MLME_ASSOC; 
    581590                os_memcpy(mlme.im_macaddr, params->bssid, IEEE80211_ADDR_LEN); 
     
    586595                                   __func__); 
    587596                        ret = -1; 
    588 @@ -1638,7 +1412,7 @@ wpa_driver_madwifi_associate(void *priv, 
     597@@ -1658,7 +1432,7 @@ wpa_driver_madwifi_associate(void *priv, 
    589598 static int 
    590599 wpa_driver_madwifi_set_auth_alg(void *priv, int auth_alg) 
     
    595604  
    596605        if ((auth_alg & WPA_AUTH_ALG_OPEN) && 
    597 @@ -1649,13 +1423,13 @@ wpa_driver_madwifi_set_auth_alg(void *pr 
     606@@ -1669,13 +1443,13 @@ wpa_driver_madwifi_set_auth_alg(void *pr 
    598607        else 
    599608                authmode = IEEE80211_AUTH_OPEN; 
     
    611620        int ret = 0; 
    612621        const u8 *ssid = params->ssids[0].ssid; 
    613 @@ -1673,7 +1447,7 @@ wpa_driver_madwifi_scan(void *priv, stru 
     622@@ -1693,7 +1467,7 @@ wpa_driver_madwifi_scan(void *priv, stru 
    614623        if (wpa_driver_wext_set_ssid(drv->wext, ssid, ssid_len) < 0) 
    615624                ret = -1; 
     
    620629                ret = -1; 
    621630        } 
    622 @@ -1695,14 +1469,14 @@ wpa_driver_madwifi_scan(void *priv, stru 
     631@@ -1715,14 +1489,14 @@ wpa_driver_madwifi_scan(void *priv, stru 
    623632  
    624633 static int wpa_driver_madwifi_get_bssid(void *priv, u8 *bssid) 
     
    637646 } 
    638647  
    639 @@ -1710,14 +1484,16 @@ static int wpa_driver_madwifi_get_ssid(v 
     648@@ -1730,14 +1504,16 @@ static int wpa_driver_madwifi_get_ssid(v 
    640649 static struct wpa_scan_results * 
    641650 wpa_driver_madwifi_get_scan_results(void *priv) 
     
    656665 } 
    657666  
    658 @@ -1738,7 +1514,7 @@ static int wpa_driver_madwifi_set_probe_ 
     667@@ -1758,7 +1534,7 @@ static int wpa_driver_madwifi_set_probe_ 
    659668  
    660669        ret = set80211priv(priv, IEEE80211_IOCTL_SET_APPIEBUF, probe_req_ie, 
     
    665674        os_free(probe_req_ie); 
    666675  
    667 @@ -1748,7 +1524,7 @@ static int wpa_driver_madwifi_set_probe_ 
     676@@ -1768,7 +1544,7 @@ static int wpa_driver_madwifi_set_probe_ 
    668677  
    669678 static void * wpa_driver_madwifi_init(void *ctx, const char *ifname) 
     
    674683        drv = os_zalloc(sizeof(*drv)); 
    675684        if (drv == NULL) 
    676 @@ -1759,17 +1535,17 @@ static void * wpa_driver_madwifi_init(vo 
     685@@ -1779,17 +1555,17 @@ static void * wpa_driver_madwifi_init(vo 
    677686  
    678687        drv->ctx = ctx; 
     
    696705                           __FUNCTION__); 
    697706                goto fail3; 
    698 @@ -1778,7 +1554,7 @@ static void * wpa_driver_madwifi_init(vo 
     707@@ -1798,7 +1574,7 @@ static void * wpa_driver_madwifi_init(vo 
    699708        return drv; 
    700709  
     
    705714        wpa_driver_wext_deinit(drv->wext); 
    706715 fail: 
    707 @@ -1789,38 +1565,37 @@ fail: 
     716@@ -1809,38 +1585,37 @@ fail: 
    708717  
    709718 static void wpa_driver_madwifi_deinit(void *priv) 
     
    751760        .hapd_init              = madwifi_init, 
    752761        .hapd_deinit            = madwifi_deinit, 
    753 @@ -1840,7 +1615,8 @@ const struct wpa_driver_ops wpa_driver_m 
    754         .sta_clear_stats        = madwifi_sta_clear_stats, 
     762@@ -1861,7 +1636,8 @@ const struct wpa_driver_ops wpa_driver_m 
    755763        .commit                 = madwifi_commit, 
    756764        .set_ap_wps_ie          = madwifi_set_ap_wps_ie, 
     765        .set_freq               = madwifi_set_freq, 
    757766-#else /* HOSTAPD */ 
    758767+#endif /* HOSTAPD */ 
     
    761770        .get_ssid               = wpa_driver_madwifi_get_ssid, 
    762771        .init                   = wpa_driver_madwifi_init, 
    763 @@ -1852,5 +1628,5 @@ const struct wpa_driver_ops wpa_driver_m 
     772@@ -1873,5 +1649,5 @@ const struct wpa_driver_ops wpa_driver_m 
    764773        .disassociate           = wpa_driver_madwifi_disassociate, 
    765774        .associate              = wpa_driver_madwifi_associate, 
  • trunk/package/hostapd/patches/320-nl80211_multicall_fixes.patch

    r27021 r28746  
    11--- a/src/drivers/driver_nl80211.c 
    22+++ b/src/drivers/driver_nl80211.c 
    3 @@ -1890,6 +1890,7 @@ static void * wpa_driver_nl80211_init(vo 
     3@@ -2289,6 +2289,7 @@ static void * wpa_driver_nl80211_init(vo 
    44        drv->monitor_ifidx = -1; 
    55        drv->monitor_sock = -1; 
    6         drv->ioctl_sock = -1; 
     6        drv->ap_scan_as_station = NL80211_IFTYPE_UNSPECIFIED; 
    77+       drv->nlmode = NL80211_IFTYPE_STATION; 
    88  
    99        if (wpa_driver_nl80211_init_nl(drv)) { 
    1010                os_free(drv); 
    11 @@ -2056,29 +2057,29 @@ wpa_driver_nl80211_finish_drv_init(struc 
     11@@ -2446,37 +2447,37 @@ wpa_driver_nl80211_finish_drv_init(struc 
    1212        drv->ifindex = if_nametoindex(bss->ifname); 
    1313        drv->first_bss.ifindex = drv->ifindex; 
    1414  
    1515-#ifndef HOSTAPD 
    16 -       if (wpa_driver_nl80211_set_mode(bss, IEEE80211_MODE_INFRA) < 0) { 
    17 -               wpa_printf(MSG_DEBUG, "nl80211: Could not configure driver to " 
     16-       /* 
     17-        * Make sure the interface starts up in station mode unless this is a 
     18-        * dynamically added interface (e.g., P2P) that was already configured 
     19-        * with proper iftype. 
     20-        */ 
     21-       if ((drv->global == NULL || 
     22-            drv->ifindex != drv->global->if_add_ifindex) && 
     23-           wpa_driver_nl80211_set_mode(bss, NL80211_IFTYPE_STATION) < 0) { 
     24-               wpa_printf(MSG_ERROR, "nl80211: Could not configure driver to " 
    1825-                          "use managed mode"); 
     26-               return -1; 
    1927-       } 
    20 +       if (drv->nlmode == NL80211_IFTYPE_STATION) { 
    21 +               if (wpa_driver_nl80211_set_mode(bss, IEEE80211_MODE_INFRA) < 0) { 
    22 +                       wpa_printf(MSG_DEBUG, "nl80211: Could not configure driver to " 
    23 +                                  "use managed mode"); 
    24 +               } 
    25   
    26 -       if (linux_set_iface_flags(drv->ioctl_sock, bss->ifname, 1)) { 
     28- 
     29-       if (linux_set_iface_flags(drv->global->ioctl_sock, bss->ifname, 1)) { 
    2730-               if (rfkill_is_blocked(drv->rfkill)) { 
    2831-                       wpa_printf(MSG_DEBUG, "nl80211: Could not yet enable " 
     
    3437-                       wpa_printf(MSG_ERROR, "nl80211: Could not set " 
    3538-                                  "interface '%s' UP", bss->ifname); 
    36 -                       return -1; 
    37 +               if (linux_set_iface_flags(drv->ioctl_sock, bss->ifname, 1)) { 
     39+       if (drv->nlmode == NL80211_IFTYPE_STATION) { 
     40+               /* 
     41+                * Make sure the interface starts up in station mode unless this is a 
     42+                * dynamically added interface (e.g., P2P) that was already configured 
     43+                * with proper iftype. 
     44+                */ 
     45+               if ((drv->global == NULL || 
     46+                        drv->ifindex != drv->global->if_add_ifindex) && 
     47+                       wpa_driver_nl80211_set_mode(bss, NL80211_IFTYPE_STATION) < 0) { 
     48+                       wpa_printf(MSG_ERROR, "nl80211: Could not configure driver to " 
     49+                                  "use managed mode"); 
     50                        return -1; 
     51                } 
     52-       } 
     53  
     54-       netlink_send_oper_ifla(drv->global->netlink, drv->ifindex, 
     55-                              1, IF_OPER_DORMANT); 
     56-#endif /* HOSTAPD */ 
     57+               if (linux_set_iface_flags(drv->global->ioctl_sock, bss->ifname, 1)) { 
    3858+                       if (rfkill_is_blocked(drv->rfkill)) { 
    3959+                               wpa_printf(MSG_DEBUG, "nl80211: Could not yet enable " 
     
    4767+                               return -1; 
    4868+                       } 
    49                 } 
    50 -       } 
    51   
    52 -       netlink_send_oper_ifla(drv->netlink, drv->ifindex, 
    53 -                              1, IF_OPER_DORMANT); 
    54 -#endif /* HOSTAPD */ 
    55 +               netlink_send_oper_ifla(drv->netlink, drv->ifindex, 
    56 +                                      1, IF_OPER_DORMANT); 
     69+               } 
     70+ 
     71+               netlink_send_oper_ifla(drv->global->netlink, drv->ifindex, 
     72+                                          1, IF_OPER_DORMANT); 
    5773+       } 
    5874  
    5975        if (wpa_driver_nl80211_capa(drv)) 
    6076                return -1; 
    61 @@ -3849,7 +3850,8 @@ static void nl80211_remove_iface(struct  
    62   
    63  #ifdef HOSTAPD 
    64         /* stop listening for EAPOL on this interface */ 
    65 -       del_ifidx(drv, ifidx); 
    66 +       if (drv->nlmode == NL80211_IFTYPE_AP) 
    67 +               del_ifidx(drv, ifidx); 
    68  #endif /* HOSTAPD */ 
    69   
    70         msg = nlmsg_alloc(); 
    71 @@ -3922,7 +3924,8 @@ static int nl80211_create_iface_once(str 
    72   
    73  #ifdef HOSTAPD 
    74         /* start listening for EAPOL on this interface */ 
    75 -       add_ifidx(drv, ifidx); 
    76 +       if (drv->nlmode == NL80211_IFTYPE_AP) 
    77 +               add_ifidx(drv, ifidx); 
    78  #endif /* HOSTAPD */ 
    79   
    80         if (addr && iftype != NL80211_IFTYPE_MONITOR && 
  • trunk/package/hostapd/patches/330-multicall_bridge_fix.patch

    r27021 r28746  
    11--- a/src/drivers/driver_nl80211.c 
    22+++ b/src/drivers/driver_nl80211.c 
    3 @@ -475,6 +475,10 @@ static void wpa_driver_nl80211_event_rtm 
     3@@ -600,6 +600,10 @@ static void wpa_driver_nl80211_event_rtm 
    44                return; 
    55        } 
     
    1212                   "(%s%s%s%s)", 
    1313                   drv->operstate, ifi->ifi_flags, 
    14 @@ -546,6 +550,10 @@ static void wpa_driver_nl80211_event_rtm 
     14@@ -692,6 +696,10 @@ static void wpa_driver_nl80211_event_rtm 
    1515        attrlen = len; 
    1616        attr = (struct rtattr *) buf; 
     
    2323        while (RTA_OK(attr, attrlen)) { 
    2424                if (attr->rta_type == IFLA_IFNAME) { 
    25 @@ -1679,6 +1687,11 @@ static int wpa_driver_nl80211_capa(struc 
    26         drv->capa.flags |= WPA_DRIVER_FLAGS_EAPOL_TX_STATUS; 
    27         drv->capa.max_remain_on_chan = info.max_remain_on_chan; 
     25@@ -2291,6 +2299,11 @@ static void * wpa_driver_nl80211_init(vo 
     26        drv->ap_scan_as_station = NL80211_IFTYPE_UNSPECIFIED; 
     27        drv->nlmode = NL80211_IFTYPE_STATION; 
    2828  
    2929+#ifdef HOSTAPD 
     
    3232+#endif 
    3333+ 
    34         return 0; 
    35  } 
    36   
    37 @@ -5715,8 +5728,6 @@ static void *i802_init(struct hostapd_da 
     34        if (wpa_driver_nl80211_init_nl(drv)) { 
     35                os_free(drv); 
     36                return NULL; 
     37@@ -6531,8 +6544,6 @@ static void *i802_init(struct hostapd_da 
    3838                br_ifindex = 0; 
    3939        } 
  • trunk/package/hostapd/patches/350-hostap_multicall_fix.patch

    r26414 r28746  
    1111 #include <netpacket/packet.h> 
    1212  
    13 @@ -42,10 +39,16 @@ 
     13@@ -43,10 +40,16 @@ 
    1414 static const u8 rfc1042_header[6] = { 0xaa, 0xaa, 0x03, 0x00, 0x00, 0x00 }; 
    1515  
     
    2929        struct netlink_data *netlink; 
    3030  
    31 @@ -55,9 +58,11 @@ struct hostap_driver_data { 
     31@@ -56,9 +59,11 @@ struct hostap_driver_data { 
    3232        size_t generic_ie_len; 
    3333        u8 *wps_ie; 
     
    4141                         int len); 
    4242 static int hostap_set_iface_flags(void *priv, int dev_up); 
    43 @@ -400,65 +405,6 @@ static int hostapd_ioctl(void *priv, str 
     43@@ -399,65 +404,6 @@ static int hostapd_ioctl(void *priv, str 
    4444 } 
    4545  
     
    107107                             int idx, u8 *seq) 
    108108 { 
    109 @@ -1126,21 +1072,9 @@ static struct hostapd_hw_modes * hostap_ 
    110         return mode; 
     109@@ -1171,21 +1117,9 @@ static void wpa_driver_hostap_poll_clien 
     110        hostap_send_mlme(priv, (u8 *)&hdr, sizeof(hdr)); 
    111111 } 
    112112  
     
    131131                         int len, int show_err) 
    132132 { 
    133 @@ -1162,7 +1096,12 @@ static int hostapd_ioctl(struct wpa_driv 
     133@@ -1207,7 +1141,12 @@ static int hostapd_ioctl(struct wpa_driv 
    134134 } 
    135135  
     
    145145 { 
    146146        struct prism2_hostapd_param *param; 
    147 @@ -1178,7 +1117,7 @@ static int wpa_driver_hostap_set_wpa_ie( 
     147@@ -1223,7 +1162,7 @@ static int wpa_driver_hostap_set_wpa_ie( 
    148148        param->cmd = PRISM2_HOSTAPD_SET_GENERIC_ELEMENT; 
    149149        param->u.generic_elem.len = wpa_ie_len; 
     
    154154        os_free(param); 
    155155  
    156 @@ -1186,7 +1125,7 @@ static int wpa_driver_hostap_set_wpa_ie( 
     156@@ -1231,7 +1170,7 @@ static int wpa_driver_hostap_set_wpa_ie( 
    157157 } 
    158158  
     
    163163 { 
    164164        struct iwreq iwr; 
    165 @@ -1208,7 +1147,7 @@ static int prism2param(struct wpa_driver 
     165@@ -1253,7 +1192,7 @@ static int prism2param(struct wpa_driver 
    166166  
    167167 static int wpa_driver_hostap_set_wpa(void *priv, int enabled) 
     
    172172  
    173173        wpa_printf(MSG_DEBUG, "%s: enabled=%d", __FUNCTION__, enabled); 
    174 @@ -1224,125 +1163,15 @@ static int wpa_driver_hostap_set_wpa(voi 
     174@@ -1269,125 +1208,15 @@ static int wpa_driver_hostap_set_wpa(voi 
    175175 } 
    176176  
     
    300300 { 
    301301        struct iwreq iwr; 
    302 @@ -1363,7 +1192,7 @@ static int wpa_driver_hostap_reset(struc 
     302@@ -1408,7 +1237,7 @@ static int wpa_driver_hostap_reset(struc 
    303303 } 
    304304  
     
    309309 { 
    310310        struct prism2_hostapd_param param; 
    311 @@ -1378,7 +1207,7 @@ static int wpa_driver_hostap_mlme(struct 
     311@@ -1423,7 +1252,7 @@ static int wpa_driver_hostap_mlme(struct 
    312312        os_memcpy(param.sta_addr, addr, ETH_ALEN); 
    313313        param.u.mlme.cmd = cmd; 
     
    318318                os_sleep(0, 100000); 
    319319                ret = wpa_driver_hostap_reset(drv, 2); 
    320 @@ -1390,7 +1219,7 @@ static int wpa_driver_hostap_mlme(struct 
     320@@ -1435,7 +1264,7 @@ static int wpa_driver_hostap_mlme(struct 
    321321 static int wpa_driver_hostap_deauthenticate(void *priv, const u8 *addr, 
    322322                                            int reason_code) 
     
    327327        return wpa_driver_hostap_mlme(drv, addr, MLME_STA_DEAUTH, 
    328328                                      reason_code); 
    329 @@ -1400,7 +1229,7 @@ static int wpa_driver_hostap_deauthentic 
     329@@ -1445,7 +1274,7 @@ static int wpa_driver_hostap_deauthentic 
    330330 static int wpa_driver_hostap_disassociate(void *priv, const u8 *addr, 
    331331                                          int reason_code) 
     
    336336        return wpa_driver_hostap_mlme(drv, addr, MLME_STA_DISASSOC, 
    337337                                      reason_code); 
    338 @@ -1411,7 +1240,7 @@ static int 
     338@@ -1456,7 +1285,7 @@ static int 
    339339 wpa_driver_hostap_associate(void *priv, 
    340340                            struct wpa_driver_associate_params *params) 
     
    345345        int allow_unencrypted_eapol; 
    346346  
    347 @@ -1475,7 +1304,7 @@ wpa_driver_hostap_associate(void *priv, 
     347@@ -1520,7 +1349,7 @@ wpa_driver_hostap_associate(void *priv, 
    348348 static int wpa_driver_hostap_scan(void *priv, 
    349349                                  struct wpa_driver_scan_params *params) 
     
    354354        int ret; 
    355355        const u8 *ssid = params->ssids[0].ssid; 
    356 @@ -1496,7 +1325,7 @@ static int wpa_driver_hostap_scan(void * 
     356@@ -1541,7 +1370,7 @@ static int wpa_driver_hostap_scan(void * 
    357357        param.cmd = PRISM2_HOSTAPD_SCAN_REQ; 
    358358        param.u.scan_req.ssid_len = ssid_len; 
     
    363363        /* Not all drivers generate "scan completed" wireless event, so try to 
    364364         * read results after a timeout. */ 
    365 @@ -1511,7 +1340,7 @@ static int wpa_driver_hostap_scan(void * 
     365@@ -1556,7 +1385,7 @@ static int wpa_driver_hostap_scan(void * 
    366366  
    367367 static int wpa_driver_hostap_set_auth_alg(void *priv, int auth_alg) 
     
    372372  
    373373        if (auth_alg & WPA_AUTH_ALG_OPEN) 
    374 @@ -1529,35 +1358,35 @@ static int wpa_driver_hostap_set_auth_al 
     374@@ -1574,35 +1403,35 @@ static int wpa_driver_hostap_set_auth_al 
    375375  
    376376 static int wpa_driver_hostap_get_bssid(void *priv, u8 *bssid) 
     
    413413        drv = os_zalloc(sizeof(*drv)); 
    414414        if (drv == NULL) 
    415 @@ -1597,14 +1426,120 @@ static void * wpa_driver_hostap_init(voi 
     415@@ -1642,14 +1471,120 @@ static void * wpa_driver_hostap_init(voi 
    416416  
    417417 static void wpa_driver_hostap_deinit(void *priv) 
     
    536536  
    537537 const struct wpa_driver_ops wpa_driver_hostap_ops = { 
    538 @@ -1632,7 +1567,8 @@ const struct wpa_driver_ops wpa_driver_h 
    539         .sta_clear_stats = hostap_sta_clear_stats, 
    540         .get_hw_feature_data = hostap_get_hw_feature_data, 
     538@@ -1679,7 +1614,8 @@ const struct wpa_driver_ops wpa_driver_h 
    541539        .set_ap_wps_ie = hostap_set_ap_wps_ie, 
     540        .set_freq = hostap_set_freq, 
     541        .poll_client = wpa_driver_hostap_poll_client, 
    542542-#else /* HOSTAPD */ 
    543543+#endif /* HOSTAPD */ 
     
    546546        .get_ssid = wpa_driver_hostap_get_ssid, 
    547547        .set_countermeasures = wpa_driver_hostap_set_countermeasures, 
    548 @@ -1644,5 +1580,5 @@ const struct wpa_driver_ops wpa_driver_h 
     548@@ -1691,5 +1627,5 @@ const struct wpa_driver_ops wpa_driver_h 
    549549        .init = wpa_driver_hostap_init, 
    550550        .deinit = wpa_driver_hostap_deinit, 
  • trunk/package/hostapd/patches/500-scan_wait.patch

    r27021 r28746  
    11--- a/src/ap/hostapd.h 
    22+++ b/src/ap/hostapd.h 
    3 @@ -229,6 +229,7 @@ struct hostapd_iface { 
     3@@ -235,6 +235,7 @@ struct hostapd_iface { 
    44        int (*for_each_interface)(struct hapd_interfaces *interfaces, 
    55                                  int (*cb)(struct hostapd_iface *iface, 
     
    1111--- a/src/ap/hostapd.c 
    1212+++ b/src/ap/hostapd.c 
    13 @@ -807,6 +807,9 @@ int hostapd_setup_interface_complete(str 
     13@@ -804,6 +804,9 @@ int hostapd_setup_interface_complete(str 
    1414        wpa_printf(MSG_DEBUG, "%s: Setup of interface done.", 
    1515                   iface->bss[0]->conf->iface); 
     
    3030+static char *pid_file = NULL; 
    3131  
     32 extern struct wpa_driver_ops *wpa_drivers[]; 
    3233  
    33  struct hapd_interfaces { 
    34 @@ -163,6 +165,16 @@ static void hostapd_logger_cb(void *ctx, 
     34@@ -173,6 +175,16 @@ static void hostapd_logger_cb(void *ctx, 
    3535 } 
    3636 #endif /* CONFIG_NO_HOSTAPD_LOGGER */ 
     
    4949 /** 
    5050  * hostapd_init - Allocate and initialize per-interface data 
    51 @@ -184,6 +196,7 @@ static struct hostapd_iface * hostapd_in 
     51@@ -194,6 +206,7 @@ static struct hostapd_iface * hostapd_in 
    5252        if (hapd_iface == NULL) 
    5353                goto fail; 
     
    5757        hapd_iface->config_read_cb = hostapd_config_read; 
    5858        hapd_iface->config_fname = os_strdup(config_file); 
    59 @@ -399,7 +412,7 @@ static int hostapd_global_init(struct ha 
     59@@ -442,7 +455,7 @@ static int hostapd_global_init(struct ha 
    6060 } 
    6161  
     
    6464+static void hostapd_global_deinit(void) 
    6565 { 
    66  #ifdef EAP_SERVER_TNC 
    67         tncs_global_deinit(); 
    68 @@ -419,8 +432,7 @@ static void hostapd_global_deinit(const  
     66        int i; 
     67  
     68@@ -472,8 +485,7 @@ static void hostapd_global_deinit(const  
    6969 } 
    7070  
     
    7676 #ifdef EAP_SERVER_TNC 
    7777        int tnc = 0; 
    78 @@ -441,11 +453,6 @@ static int hostapd_global_run(struct hap 
     78@@ -494,11 +506,6 @@ static int hostapd_global_run(struct hap 
    7979        } 
    8080 #endif /* EAP_SERVER_TNC */ 
     
    8888  
    8989        return 0; 
    90 @@ -501,8 +508,7 @@ int main(int argc, char *argv[]) 
     90@@ -555,8 +562,7 @@ int main(int argc, char *argv[]) 
    9191        struct hapd_interfaces interfaces; 
    9292        int ret = 1; 
     
    9696+       int c, debug = 0; 
    9797        const char *log_file = NULL; 
     98        const char *entropy_file = NULL; 
    9899  
    99         if (os_program_init()) 
    100 @@ -576,7 +582,7 @@ int main(int argc, char *argv[]) 
     100@@ -634,7 +640,7 @@ int main(int argc, char *argv[]) 
    101101                        goto out; 
    102102        } 
     
    107107  
    108108        ret = 0; 
    109 @@ -587,7 +593,7 @@ int main(int argc, char *argv[]) 
     109@@ -645,7 +651,7 @@ int main(int argc, char *argv[]) 
    110110                hostapd_interface_deinit_free(interfaces.iface[i]); 
    111111        os_free(interfaces.iface); 
     
    118118--- a/hostapd/config_file.c 
    119119+++ b/hostapd/config_file.c 
    120 @@ -1891,6 +1891,8 @@ struct hostapd_config * hostapd_config_r 
     120@@ -1925,6 +1925,8 @@ struct hostapd_config * hostapd_config_r 
    121121                        } 
    122122 #endif /* CONFIG_IEEE80211W */ 
     
    129129--- a/src/ap/ap_config.h 
    130130+++ b/src/ap/ap_config.h 
    131 @@ -390,6 +390,7 @@ struct hostapd_config { 
     131@@ -412,6 +412,7 @@ struct hostapd_config { 
    132132  
    133133        int ht_op_mode_fixed; 
     
    139139--- a/src/ap/hw_features.c 
    140140+++ b/src/ap/hw_features.c 
    141 @@ -463,7 +463,7 @@ static int ieee80211n_check_40mhz(struct 
     141@@ -449,7 +449,7 @@ static int ieee80211n_check_40mhz(struct 
    142142 { 
    143143        struct wpa_driver_scan_params params; 
  • trunk/package/hostapd/patches/510-multicall.patch

    r27021 r28746  
    99 ifndef CONFIG_OS 
    1010 ifdef CONFIG_NATIVE_WINDOWS 
    11 @@ -159,10 +160,14 @@ ifdef CONFIG_IEEE80211N 
     11@@ -168,10 +169,14 @@ ifdef CONFIG_IEEE80211N 
    1212 CFLAGS += -DCONFIG_IEEE80211N 
    1313 endif 
     
    2727  
    2828 ifdef CONFIG_L2_PACKET 
    29 @@ -780,6 +785,12 @@ install: all 
     29@@ -799,6 +804,12 @@ install: all 
    3030  
    3131 BCHECK=../src/drivers/build.hostapd 
     
    4040        $(Q)$(CC) $(LDFLAGS) -o hostapd $(OBJS) $(LIBS) 
    4141        @$(E) "  LD " $@ 
    42 @@ -820,6 +831,12 @@ HOBJS += ../src/crypto/aes-internal.o 
     42@@ -837,6 +848,12 @@ HOBJS += ../src/crypto/aes-internal.o 
    4343 HOBJS += ../src/crypto/aes-internal-enc.o 
    4444 endif 
     
    5555--- a/wpa_supplicant/Makefile 
    5656+++ b/wpa_supplicant/Makefile 
    57 @@ -53,6 +53,7 @@ OBJS_c = wpa_cli.o ../src/common/wpa_ctr 
    58  OBJS_c += ../src/utils/wpa_debug.o 
     57@@ -14,6 +14,7 @@ CFLAGS += -I../src 
     58 CFLAGS += -I../src/utils 
    5959  
    6060 -include .config 
    6161+-include $(if $(MULTICALL),../hostapd/.config) 
    6262  
    63  ifndef CONFIG_OS 
    64  ifdef CONFIG_NATIVE_WINDOWS 
    65 @@ -634,6 +635,10 @@ ifdef CONFIG_DYNAMIC_EAP_METHODS 
     63 ALL=wpa_supplicant wpa_cli 
     64  
     65@@ -663,6 +664,10 @@ ifdef CONFIG_DYNAMIC_EAP_METHODS 
    6666 CFLAGS += -DCONFIG_DYNAMIC_EAP_METHODS 
    6767 LIBS += -ldl -rdynamic 
     
    7474  
    7575 ifdef CONFIG_AP 
    76 @@ -642,9 +647,11 @@ NEED_EAP_COMMON=y 
     76@@ -671,9 +676,11 @@ NEED_EAP_COMMON=y 
    7777 NEED_RSN_AUTHENTICATOR=y 
    7878 CFLAGS += -DCONFIG_AP 
     
    8686 OBJS += ../src/ap/wpa_auth_glue.o 
    8787 OBJS += ../src/ap/utils.o 
    88 @@ -688,10 +695,18 @@ CFLAGS += -DEAP_SERVER_WSC 
     88@@ -718,10 +725,18 @@ CFLAGS += -DEAP_SERVER_WSC 
    8989 OBJS += ../src/ap/wps_hostapd.o 
    9090 OBJS += ../src/eap_server/eap_server_wsc.o 
     
    105105 OBJS += ../src/ap/wpa_auth.o 
    106106 OBJS += ../src/ap/wpa_auth_ie.o 
    107 @@ -1352,6 +1367,12 @@ wpa_priv: $(BCHECK) $(OBJS_priv) 
     107@@ -1397,6 +1412,12 @@ wpa_priv: $(BCHECK) $(OBJS_priv) 
    108108        $(Q)$(LDO) $(LDFLAGS) -o wpa_priv $(OBJS_priv) $(LIBS) 
    109109        @$(E) "  LD " $@ 
     
    118118        $(Q)$(LDO) $(LDFLAGS) -o wpa_supplicant $(OBJS) $(LIBS) $(EXTRALIBS) 
    119119        @$(E) "  LD " $@ 
    120 @@ -1412,6 +1433,12 @@ eap_ikev2.so: ../src/eap_peer/eap_ikev2. 
    121         $(Q)$(CC) -c -o $@ $(CFLAGS) $< 
    122         @$(E) "  CC " $< 
     120@@ -1460,6 +1481,12 @@ eap_ikev2.so: ../src/eap_peer/eap_ikev2. 
     121 %.service: %.service.in 
     122        sed -e 's|\@BINDIR\@|$(BINDIR)|g' $< >$@ 
    123123  
    124124+dump_cflags: 
     
    133133--- a/src/drivers/driver.h 
    134134+++ b/src/drivers/driver.h 
    135 @@ -3199,8 +3199,8 @@ union wpa_event_data { 
     135@@ -3452,8 +3452,8 @@ union wpa_event_data { 
    136136  * Driver wrapper code should call this function whenever an event is received 
    137137  * from the driver. 
     
    146146--- a/src/ap/drv_callbacks.c 
    147147+++ b/src/ap/drv_callbacks.c 
    148 @@ -448,8 +448,8 @@ static void hostapd_event_eapol_rx(struc 
     148@@ -467,8 +467,8 @@ static void hostapd_event_eapol_rx(struc 
    149149 } 
    150150  
     
    163163  
    164164  
    165 -void wpa_supplicant_event(void *ctx, wpa_event_type event, 
     165-void wpa_supplicant_event(void *ctx, enum wpa_event_type event, 
    166166-                         union wpa_event_data *data) 
    167 +static void supplicant_event(void *ctx, wpa_event_type event, 
     167+static void supplicant_event(void *ctx, enum wpa_event_type event, 
    168168+                            union wpa_event_data *data) 
    169169 { 
     
    180180--- a/wpa_supplicant/events.c 
    181181+++ b/wpa_supplicant/events.c 
    182 @@ -1746,8 +1746,8 @@ static void wpa_supplicant_event_unprot_ 
     182@@ -1936,8 +1936,8 @@ static void wnm_action_rx(struct wpa_sup 
    183183 } 
    184184  
     
    193193--- a/wpa_supplicant/wpa_supplicant.c 
    194194+++ b/wpa_supplicant/wpa_supplicant.c 
    195 @@ -2314,6 +2314,9 @@ static void wpa_supplicant_deinit_iface( 
     195@@ -2412,6 +2412,9 @@ static void wpa_supplicant_deinit_iface( 
    196196                wpa_drv_deinit(wpa_s); 
    197197 } 
     
    203203 /** 
    204204  * wpa_supplicant_add_iface - Add a new network interface 
    205 @@ -2497,6 +2500,7 @@ struct wpa_global * wpa_supplicant_init( 
     205@@ -2602,6 +2605,7 @@ struct wpa_global * wpa_supplicant_init( 
    206206        wpa_msg_register_ifname_cb(wpa_supplicant_msg_ifname_cb); 
    207207 #endif /* CONFIG_NO_WPA_MSG */ 
     
    213213--- a/hostapd/main.c 
    214214+++ b/hostapd/main.c 
    215 @@ -502,6 +502,9 @@ static const char * hostapd_msg_ifname_c 
     215@@ -556,6 +556,9 @@ static const char * hostapd_msg_ifname_c 
    216216        return NULL; 
    217217 } 
     
    223223 int main(int argc, char *argv[]) 
    224224 { 
    225 @@ -514,6 +517,7 @@ int main(int argc, char *argv[]) 
     225@@ -569,6 +572,7 @@ int main(int argc, char *argv[]) 
    226226        if (os_program_init()) 
    227227                return -1; 
     
    229229+       wpa_supplicant_event = hostapd_wpa_event; 
    230230        for (;;) { 
    231                 c = getopt(argc, argv, "Bdf:hKP:tv"); 
     231                c = getopt(argc, argv, "Bde:f:hKP:tv"); 
    232232                if (c < 0) 
    233233--- a/src/drivers/drivers.c 
  • trunk/package/hostapd/patches/520-timestamp_check.patch

    r23932 r28746  
    11--- a/src/tls/x509v3.c 
    22+++ b/src/tls/x509v3.c 
    3 @@ -1854,8 +1854,11 @@ int x509_certificate_chain_validate(stru 
     3@@ -1854,6 +1854,9 @@ int x509_certificate_chain_validate(stru 
    44                if (chain_trusted) 
    55                        continue; 
    66  
    7 -               if ((unsigned long) now.sec < 
    8 +               if ( 
    9 +#ifndef NO_TIMESTAMP_CHECK 
    10 +                   (unsigned long) now.sec < 
    11                     (unsigned long) cert->not_before || 
     7+#ifdef NO_TIMESTAMP_CHECK 
     8+               disable_time_checks = 1; 
    129+#endif 
    13                     (unsigned long) now.sec > 
    14                     (unsigned long) cert->not_after) { 
    15                         wpa_printf(MSG_INFO, "X509: Certificate not valid " 
     10                if (!disable_time_checks && 
     11                    ((unsigned long) now.sec < 
     12                     (unsigned long) cert->not_before || 
  • trunk/package/hostapd/patches/530-rescan_immediately.patch

    r28262 r28746  
    11--- a/wpa_supplicant/wpa_supplicant.c 
    22+++ b/wpa_supplicant/wpa_supplicant.c 
    3 @@ -2070,7 +2070,7 @@ static struct wpa_supplicant * wpa_suppl 
     3@@ -2157,7 +2157,7 @@ static struct wpa_supplicant * wpa_suppl 
    44        if (wpa_s == NULL) 
    55                return NULL; 
     
    99        wpa_s->new_connection = 1; 
    1010        wpa_s->parent = wpa_s; 
    11   
     11        wpa_s->sched_scanning = 0; 
  • trunk/package/hostapd/patches/540-optional_rfkill.patch

    r27021 r28746  
    11--- a/src/drivers/driver_nl80211.c 
    22+++ b/src/drivers/driver_nl80211.c 
    3 @@ -129,7 +129,9 @@ struct wpa_driver_nl80211_data { 
    4         int ifindex; 
     3@@ -198,7 +198,9 @@ struct wpa_driver_nl80211_data { 
    54        int if_removed; 
    65        int if_disabled; 
     6        int ignore_if_down_event; 
    77+#ifdef CONFIG_RFKILL 
    88        struct rfkill_data *rfkill; 
     
    1111        int has_capability; 
    1212  
    13 @@ -1819,7 +1821,7 @@ err1: 
     13@@ -2203,7 +2205,7 @@ err3: 
    1414        return -1; 
    1515 } 
     
    2020 { 
    2121        wpa_printf(MSG_DEBUG, "nl80211: RFKILL blocked"); 
    22 @@ -1841,6 +1843,7 @@ static void wpa_driver_nl80211_rfkill_un 
     22@@ -2226,6 +2228,7 @@ static void wpa_driver_nl80211_rfkill_un 
    2323        } 
    2424        /* rtnetlink ifup handler will report interface as enabled */ 
     
    2828  
    2929 static void nl80211_get_phy_name(struct wpa_driver_nl80211_data *drv) 
    30 @@ -1889,7 +1892,9 @@ static void * wpa_driver_nl80211_init(vo 
     30@@ -2283,7 +2286,9 @@ static void * wpa_driver_nl80211_init(vo 
     31                                      void *global_priv) 
    3132 { 
    3233        struct wpa_driver_nl80211_data *drv; 
    33         struct netlink_config *cfg; 
    3434+#ifdef CONFIG_RFKILL 
    3535        struct rfkill_config *rcfg; 
     
    3838  
    3939        drv = os_zalloc(sizeof(*drv)); 
    40 @@ -1930,6 +1935,7 @@ static void * wpa_driver_nl80211_init(vo 
    41                 goto failed; 
    42         } 
     40@@ -2311,6 +2316,7 @@ static void * wpa_driver_nl80211_init(vo 
     41  
     42        nl80211_get_phy_name(drv); 
    4343  
    4444+#ifdef CONFIG_RFKILL 
     
    4646        if (rcfg == NULL) 
    4747                goto failed; 
    48 @@ -1942,6 +1948,7 @@ static void * wpa_driver_nl80211_init(vo 
     48@@ -2323,6 +2329,7 @@ static void * wpa_driver_nl80211_init(vo 
    4949                wpa_printf(MSG_DEBUG, "nl80211: RFKILL status not available"); 
    5050                os_free(rcfg); 
     
    5454        if (wpa_driver_nl80211_finish_drv_init(drv)) 
    5555                goto failed; 
    56 @@ -1952,7 +1959,9 @@ static void * wpa_driver_nl80211_init(vo 
    57         return bss; 
    58   
    59  failed: 
    60 +#ifdef CONFIG_RFKILL 
    61         rfkill_deinit(drv->rfkill); 
    62 +#endif 
    63         netlink_deinit(drv->netlink); 
    64         if (drv->ioctl_sock >= 0) 
    65                 close(drv->ioctl_sock); 
    66 @@ -2055,10 +2064,12 @@ static int nl80211_register_action_frame 
     56@@ -2445,10 +2452,12 @@ static int nl80211_register_action_frame 
    6757 } 
    6858  
     
    7767  
    7868 static int 
    79 @@ -2077,13 +2088,16 @@ wpa_driver_nl80211_finish_drv_init(struc 
     69@@ -2475,13 +2484,16 @@ wpa_driver_nl80211_finish_drv_init(struc 
    8070                } 
    8171  
    82                 if (linux_set_iface_flags(drv->ioctl_sock, bss->ifname, 1)) { 
     72                if (linux_set_iface_flags(drv->global->ioctl_sock, bss->ifname, 1)) { 
    8373+#ifdef CONFIG_RFKILL 
    8474                        if (rfkill_is_blocked(drv->rfkill)) { 
     
    9585                                           "interface '%s' UP", bss->ifname); 
    9686                                return -1; 
    97 @@ -2111,8 +2125,10 @@ wpa_driver_nl80211_finish_drv_init(struc 
     87@@ -2510,8 +2522,10 @@ wpa_driver_nl80211_finish_drv_init(struc 
    9888        } 
    9989  
     
    10696  
    10797        return 0; 
    108 @@ -2193,7 +2209,9 @@ static void wpa_driver_nl80211_deinit(vo 
    109   
    110         netlink_send_oper_ifla(drv->netlink, drv->ifindex, 0, IF_OPER_UP); 
    111         netlink_deinit(drv->netlink); 
     98@@ -2596,7 +2610,9 @@ static void wpa_driver_nl80211_deinit(vo 
     99  
     100        netlink_send_oper_ifla(drv->global->netlink, drv->ifindex, 0, 
     101                               IF_OPER_UP); 
    112102+#ifdef CONFIG_RFKILL 
    113103        rfkill_deinit(drv->rfkill); 
     
    116106        eloop_cancel_timeout(wpa_driver_nl80211_scan_timeout, drv, drv->ctx); 
    117107  
    118 @@ -5785,7 +5803,9 @@ static void *i802_init(struct hostapd_da 
    119   
    120  failed: 
    121         nl80211_remove_monitor_interface(drv); 
    122 +#ifdef CONFIG_RFKILL 
    123         rfkill_deinit(drv->rfkill); 
    124 +#endif 
    125         netlink_deinit(drv->netlink); 
    126         if (drv->ioctl_sock >= 0) 
    127                 close(drv->ioctl_sock); 
    128108--- a/src/drivers/driver_wext.c 
    129109+++ b/src/drivers/driver_wext.c 
  • trunk/package/hostapd/patches/550-reload_freq_change.patch

    r26261 r28746  
    11--- a/src/ap/hostapd.c 
    22+++ b/src/ap/hostapd.c 
    3 @@ -120,6 +120,10 @@ int hostapd_reload_config(struct hostapd 
     3@@ -124,6 +124,10 @@ int hostapd_reload_config(struct hostapd 
    44        oldconf = hapd->iconf; 
    55        iface->conf = newconf; 
  • trunk/package/hostapd/patches/551-nl80211_del_beacon_bss.patch

    r27021 r28746  
    11--- a/src/drivers/driver_nl80211.c 
    22+++ b/src/drivers/driver_nl80211.c 
    3 @@ -2135,23 +2135,43 @@ wpa_driver_nl80211_finish_drv_init(struc 
     3@@ -2532,22 +2532,41 @@ wpa_driver_nl80211_finish_drv_init(struc 
    44 } 
    55  
     
    1212  
    1313+       bss->beacon_set = 0; 
    14 + 
    1514        msg = nlmsg_alloc(); 
    1615        if (!msg) 
    1716                return -ENOMEM; 
    1817  
    19         genlmsg_put(msg, 0, 0, genl_family_get_id(drv->nl80211), 0, 
    20                     0, NL80211_CMD_DEL_BEACON, 0); 
     18        nl80211_cmd(drv, msg, 0, NL80211_CMD_DEL_BEACON); 
    2119-       NLA_PUT_U32(msg, NL80211_ATTR_IFINDEX, drv->ifindex); 
    2220+       NLA_PUT_U32(msg, NL80211_ATTR_IFINDEX, bss->ifindex); 
     
    4745 /** 
    4846  * wpa_driver_nl80211_deinit - Deinitialize nl80211 driver interface 
    49 @@ -6658,4 +6678,5 @@ const struct wpa_driver_ops wpa_driver_n 
    50         .set_intra_bss = nl80211_set_intra_bss, 
    51         .set_param = nl80211_set_param, 
    52         .get_radio_name = nl80211_get_radio_name, 
     47@@ -7654,4 +7673,5 @@ const struct wpa_driver_ops wpa_driver_n 
     48        .send_tdls_mgmt = nl80211_send_tdls_mgmt, 
     49        .tdls_oper = nl80211_tdls_oper, 
     50 #endif /* CONFIG_TDLS */ 
    5351+       .stop_ap = wpa_driver_nl80211_stop_ap, 
    5452 }; 
    5553--- a/src/drivers/driver.h 
    5654+++ b/src/drivers/driver.h 
    57 @@ -2253,6 +2253,8 @@ struct wpa_driver_ops { 
    58          * implementation, there is no need to implement this function. 
     55@@ -2452,6 +2452,8 @@ struct wpa_driver_ops { 
    5956         */ 
    60         int (*set_authmode)(void *priv, int authmode); 
     57        void (*poll_client)(void *priv, const u8 *own_addr, 
     58                            const u8 *addr, int qos); 
    6159+ 
    6260+       int (*stop_ap)(void *priv); 
  • trunk/package/hostapd/patches/552-ctrl_iface_reload.patch

    r26261 r28746  
    8484 #ifdef CONFIG_IEEE80211W 
    8585 #ifdef NEED_AP_MLME 
    86 @@ -822,6 +884,10 @@ static void hostapd_ctrl_iface_receive(i 
     86@@ -873,6 +935,10 @@ static void hostapd_ctrl_iface_receive(i 
    8787                                reply_len += res; 
    8888                } 
  • trunk/package/hostapd/patches/553-ap_sta_support.patch

    r26749 r28746  
    11--- a/wpa_supplicant/wpa_supplicant_i.h 
    22+++ b/wpa_supplicant/wpa_supplicant_i.h 
    3 @@ -99,6 +99,8 @@ struct wpa_interface { 
     3@@ -100,6 +100,8 @@ struct wpa_interface { 
    44         * receiving of EAPOL frames from an additional interface. 
    55         */ 
     
    1010  
    1111 /** 
    12 @@ -337,6 +339,8 @@ struct wpa_supplicant { 
     12@@ -260,6 +262,8 @@ struct wpa_supplicant { 
    1313 #endif /* CONFIG_CTRL_IFACE_DBUS_NEW */ 
    1414        char bridge_ifname[16]; 
     
    2121--- a/wpa_supplicant/Makefile 
    2222+++ b/wpa_supplicant/Makefile 
    23 @@ -52,6 +52,11 @@ OBJS_p += ../src/utils/wpabuf.o 
    24  OBJS_c = wpa_cli.o ../src/common/wpa_ctrl.o 
     23@@ -13,6 +13,10 @@ PKG_CONFIG ?= pkg-config 
     24 CFLAGS += -I../src 
     25 CFLAGS += -I../src/utils 
     26  
     27+ifdef MULTICALL 
     28+CFLAGS += -DMULTICALL 
     29+endif 
     30+ 
     31 -include .config 
     32 -include $(if $(MULTICALL),../hostapd/.config) 
     33  
     34@@ -69,6 +73,10 @@ OBJS_c = wpa_cli.o ../src/common/wpa_ctr 
    2535 OBJS_c += ../src/utils/wpa_debug.o 
     36 OBJS_c += ../src/utils/common.o 
    2637  
    2738+ifdef MULTICALL 
    2839+OBJS += ../src/common/wpa_ctrl.o 
    29 +CFLAGS += -DMULTICALL 
    3040+endif 
    3141+ 
    32  -include .config 
    33  -include $(if $(MULTICALL),../hostapd/.config) 
    34   
     42 ifndef CONFIG_OS 
     43 ifdef CONFIG_NATIVE_WINDOWS 
     44 CONFIG_OS=win32 
    3545--- a/wpa_supplicant/wpa_supplicant.c 
    3646+++ b/wpa_supplicant/wpa_supplicant.c 
    37 @@ -123,6 +123,55 @@ extern int wpa_debug_show_keys; 
     47@@ -125,6 +125,55 @@ extern int wpa_debug_show_keys; 
    3848 extern int wpa_debug_timestamp; 
    3949 extern struct wpa_driver_ops *wpa_drivers[]; 
     
    91101 int wpa_set_wep_keys(struct wpa_supplicant *wpa_s, struct wpa_ssid *ssid) 
    92102 { 
    93 @@ -598,8 +647,16 @@ void wpa_supplicant_set_state(struct wpa 
     103@@ -632,8 +681,16 @@ void wpa_supplicant_set_state(struct wpa 
    94104 #ifdef CONFIG_P2P 
    95105                wpas_p2p_completed(wpa_s); 
     
    108118                wpa_drv_set_operstate(wpa_s, 0); 
    109119 #ifndef IEEE8021X_EAPOL 
    110 @@ -2157,6 +2214,21 @@ static int wpa_supplicant_init_iface(str 
     120@@ -2245,6 +2302,21 @@ static int wpa_supplicant_init_iface(str 
    111121                os_strlcpy(wpa_s->bridge_ifname, iface->bridge_ifname, 
    112122                           sizeof(wpa_s->bridge_ifname)); 
     
    140150 #include "wpa_supplicant_i.h" 
    141151 #include "config.h" 
    142 @@ -70,6 +71,8 @@ struct wpa_bss * wpa_bss_get(struct wpa_ 
     152@@ -79,6 +80,8 @@ struct wpa_bss * wpa_bss_get(struct wpa_ 
    143153  
    144154 static void wpa_bss_copy_res(struct wpa_bss *dst, struct wpa_scan_res *src) 
     
    149159  
    150160        dst->flags = src->flags; 
    151 @@ -82,6 +85,12 @@ static void wpa_bss_copy_res(struct wpa_ 
     161@@ -91,6 +94,12 @@ static void wpa_bss_copy_res(struct wpa_ 
    152162        dst->level = src->level; 
    153163        dst->tsf = src->tsf; 
     
    164174--- a/wpa_supplicant/bss.h 
    165175+++ b/wpa_supplicant/bss.h 
    166 @@ -56,6 +56,7 @@ struct wpa_bss { 
     176@@ -57,6 +57,7 @@ struct wpa_bss { 
    167177        unsigned int flags; 
    168178        u8 bssid[ETH_ALEN]; 
     
    181191+              "        -i<ifname> -c<config file> [-C<ctrl>] [-D<driver>] [-H<hostapd path>]" 
    182192               "[-p<driver_param>] \\\n" 
    183                "        [-b<br_ifname>] [-f<debug file>] \\\n" 
    184                "        [-o<override driver>] [-O<override ctrl>] \\\n" 
    185 @@ -67,6 +67,7 @@ static void usage(void) 
     193               "        [-b<br_ifname>] [-f<debug file>] [-e<entropy file>] " 
     194               "\\\n" 
     195@@ -69,6 +69,7 @@ static void usage(void) 
    186196 #endif /* CONFIG_DEBUG_SYSLOG */ 
    187197        printf("  -t = include timestamp in debug messages\n" 
     
    191201               "  -o = override driver parameter for new interfaces\n" 
    192202               "  -O = override ctrl_interface parameter for new interfaces\n" 
    193 @@ -143,7 +144,7 @@ int main(int argc, char *argv[]) 
     203@@ -145,7 +146,7 @@ int main(int argc, char *argv[]) 
    194204        wpa_supplicant_fd_workaround(); 
    195205  
    196206        for (;;) { 
    197 -               c = getopt(argc, argv, "b:Bc:C:D:df:g:hi:KLNo:O:p:P:qstuvW"); 
    198 +               c = getopt(argc, argv, "b:Bc:C:D:df:g:hH:i:KLNo:O:p:P:qstuvW"); 
     207-               c = getopt(argc, argv, "b:Bc:C:D:de:f:g:hi:KLNo:O:p:P:qstuvW"); 
     208+               c = getopt(argc, argv, "b:Bc:C:D:de:f:g:hH:i:KLNo:O:p:P:qstuvW"); 
    199209                if (c < 0) 
    200210                        break; 
    201211                switch (c) { 
    202 @@ -184,6 +185,9 @@ int main(int argc, char *argv[]) 
     212@@ -189,6 +190,9 @@ int main(int argc, char *argv[]) 
    203213                        usage(); 
    204214                        exitcode = 0; 
  • trunk/package/hostapd/patches/560-disable_ctrl_iface_mib.patch

    r27021 r28746  
    11--- a/hostapd/Makefile 
    22+++ b/hostapd/Makefile 
    3 @@ -119,6 +119,9 @@ endif 
     3@@ -128,6 +128,9 @@ endif 
    44 ifdef CONFIG_NO_CTRL_IFACE 
    55 CFLAGS += -DCONFIG_NO_CTRL_IFACE 
     
    1313--- a/hostapd/ctrl_iface.c 
    1414+++ b/hostapd/ctrl_iface.c 
    15 @@ -855,6 +855,7 @@ static void hostapd_ctrl_iface_receive(i 
     15@@ -906,6 +906,7 @@ static void hostapd_ctrl_iface_receive(i 
    1616        } else if (os_strncmp(buf, "RELOG", 5) == 0) { 
    1717                if (wpa_debug_reopen_file() < 0) 
     
    2121                reply_len = ieee802_11_get_mib(hapd, reply, reply_size); 
    2222                if (reply_len >= 0) { 
    23 @@ -884,10 +885,12 @@ static void hostapd_ctrl_iface_receive(i 
     23@@ -935,10 +936,12 @@ static void hostapd_ctrl_iface_receive(i 
    2424                                reply_len += res; 
    2525                } 
     
    3434                reply_len = hostapd_ctrl_iface_sta_first(hapd, reply, 
    3535                                                         reply_size); 
    36 @@ -897,6 +900,7 @@ static void hostapd_ctrl_iface_receive(i 
     36@@ -948,6 +951,7 @@ static void hostapd_ctrl_iface_receive(i 
    3737        } else if (os_strncmp(buf, "STA-NEXT ", 9) == 0) { 
    3838                reply_len = hostapd_ctrl_iface_sta_next(hapd, buf + 9, reply, 
     
    4444--- a/wpa_supplicant/Makefile 
    4545+++ b/wpa_supplicant/Makefile 
    46 @@ -675,6 +675,9 @@ ifdef CONFIG_IEEE80211N 
     46@@ -709,6 +709,9 @@ ifdef CONFIG_IEEE80211N 
    4747 OBJS += ../src/ap/ieee802_11_ht.o 
    4848 endif 
     
    5656--- a/wpa_supplicant/ctrl_iface.c 
    5757+++ b/wpa_supplicant/ctrl_iface.c 
    58 @@ -2929,6 +2929,7 @@ char * wpa_supplicant_ctrl_iface_process 
     58@@ -3231,6 +3231,7 @@ char * wpa_supplicant_ctrl_iface_process 
    5959                        reply_len = -1; 
    6060        } else if (os_strncmp(buf, "NOTE ", 5) == 0) { 
     
    6464                reply_len = wpa_sm_get_mib(wpa_s->wpa, reply, reply_size); 
    6565                if (reply_len >= 0) { 
    66 @@ -2940,6 +2941,7 @@ char * wpa_supplicant_ctrl_iface_process 
     66@@ -3242,6 +3243,7 @@ char * wpa_supplicant_ctrl_iface_process 
    6767                        else 
    6868                                reply_len += res; 
     
    7272                reply_len = wpa_supplicant_ctrl_iface_status( 
    7373                        wpa_s, buf + 6, reply, reply_size); 
    74 @@ -3245,6 +3247,7 @@ char * wpa_supplicant_ctrl_iface_process 
     74@@ -3570,6 +3572,7 @@ char * wpa_supplicant_ctrl_iface_process 
    7575                reply_len = wpa_supplicant_ctrl_iface_bss( 
    7676                        wpa_s, buf + 4, reply, reply_size); 
     
    8080                reply_len = ap_ctrl_iface_sta_first(wpa_s, reply, reply_size); 
    8181        } else if (os_strncmp(buf, "STA ", 4) == 0) { 
    82 @@ -3253,6 +3256,7 @@ char * wpa_supplicant_ctrl_iface_process 
     82@@ -3578,6 +3581,7 @@ char * wpa_supplicant_ctrl_iface_process 
    8383        } else if (os_strncmp(buf, "STA-NEXT ", 9) == 0) { 
    8484                reply_len = ap_ctrl_iface_sta_next(wpa_s, buf + 9, reply, 
     
    106106--- a/src/ap/ieee802_1x.c 
    107107+++ b/src/ap/ieee802_1x.c 
    108 @@ -1896,6 +1896,7 @@ static const char * bool_txt(Boolean boo 
     108@@ -1926,6 +1926,7 @@ static const char * bool_txt(Boolean boo 
    109109        return bool ? "TRUE" : "FALSE"; 
    110110 } 
     
    114114 int ieee802_1x_get_mib(struct hostapd_data *hapd, char *buf, size_t buflen) 
    115115 { 
    116 @@ -2047,6 +2048,7 @@ int ieee802_1x_get_mib_sta(struct hostap 
     116@@ -2078,6 +2079,7 @@ int ieee802_1x_get_mib_sta(struct hostap 
    117117        return len; 
    118118 } 
     
    124124--- a/src/ap/wpa_auth.c 
    125125+++ b/src/ap/wpa_auth.c 
    126 @@ -2491,6 +2491,7 @@ static int wpa_cipher_bits(int cipher) 
     126@@ -2534,6 +2534,7 @@ static int wpa_cipher_bits(int cipher) 
    127127        } 
    128128 } 
     
    132132 #define RSN_SUITE "%02x-%02x-%02x-%d" 
    133133 #define RSN_SUITE_ARG(s) \ 
    134 @@ -2654,7 +2655,7 @@ int wpa_get_mib_sta(struct wpa_state_mac 
     134@@ -2697,7 +2698,7 @@ int wpa_get_mib_sta(struct wpa_state_mac 
    135135  
    136136        return len; 
     
    143143--- a/src/rsn_supp/wpa.c 
    144144+++ b/src/rsn_supp/wpa.c 
    145 @@ -1913,6 +1913,8 @@ static u32 wpa_cipher_suite(struct wpa_s 
     145@@ -1919,6 +1919,8 @@ static u32 wpa_cipher_suite(struct wpa_s 
    146146 } 
    147147  
     
    152152 #define RSN_SUITE_ARG(s) \ 
    153153 ((s) >> 24) & 0xff, ((s) >> 16) & 0xff, ((s) >> 8) & 0xff, (s) & 0xff 
    154 @@ -1992,6 +1994,7 @@ int wpa_sm_get_mib(struct wpa_sm *sm, ch 
     154@@ -1998,6 +2000,7 @@ int wpa_sm_get_mib(struct wpa_sm *sm, ch 
    155155  
    156156        return (int) len; 
  • trunk/package/hostapd/patches/570-wpa_ie_cap_workaround.patch

    r28167 r28746  
    11--- a/src/common/wpa_common.c 
    22+++ b/src/common/wpa_common.c 
    3 @@ -811,6 +811,31 @@ const char * wpa_key_mgmt_txt(int key_mg 
     3@@ -959,6 +959,31 @@ const char * wpa_key_mgmt_txt(int key_mg 
    44 } 
    55  
     
    3333                       const u8 *ie1, size_t ie1len, 
    3434                       const u8 *ie2, size_t ie2len) 
    35 @@ -818,8 +843,19 @@ int wpa_compare_rsn_ie(int ft_initial_as 
     35@@ -966,8 +991,19 @@ int wpa_compare_rsn_ie(int ft_initial_as 
    3636        if (ie1 == NULL || ie2 == NULL) 
    3737                return -1; 
  • trunk/package/hostapd/patches/600-terminate_on_setup_failure.patch

    r27021 r28746  
    11--- a/src/ap/hostapd.c 
    22+++ b/src/ap/hostapd.c 
    3 @@ -723,11 +723,8 @@ int hostapd_setup_interface_complete(str 
     3@@ -720,11 +720,8 @@ int hostapd_setup_interface_complete(str 
    44        size_t j; 
    55        u8 *prev_addr; 
     
    1515        wpa_printf(MSG_DEBUG, "Completing interface initialization"); 
    1616        if (hapd->iconf->channel) { 
    17 @@ -743,7 +740,7 @@ int hostapd_setup_interface_complete(str 
     17@@ -740,7 +737,7 @@ int hostapd_setup_interface_complete(str 
    1818                                     hapd->iconf->secondary_channel)) { 
    1919                        wpa_printf(MSG_ERROR, "Could not set channel for " 
     
    2424        } 
    2525  
    26 @@ -754,7 +751,7 @@ int hostapd_setup_interface_complete(str 
     26@@ -751,7 +748,7 @@ int hostapd_setup_interface_complete(str 
    2727                        hostapd_logger(hapd, NULL, HOSTAPD_MODULE_IEEE80211, 
    2828                                       HOSTAPD_LEVEL_WARNING, 
     
    3333        } 
    3434  
    35 @@ -762,14 +759,14 @@ int hostapd_setup_interface_complete(str 
     35@@ -759,14 +756,14 @@ int hostapd_setup_interface_complete(str 
    3636            hostapd_set_rts(hapd, hapd->iconf->rts_threshold)) { 
    3737                wpa_printf(MSG_ERROR, "Could not set RTS threshold for " 
     
    5050  
    5151        prev_addr = hapd->own_addr; 
    52 @@ -779,7 +776,7 @@ int hostapd_setup_interface_complete(str 
     52@@ -776,7 +773,7 @@ int hostapd_setup_interface_complete(str 
    5353                if (j) 
    5454                        os_memcpy(hapd->own_addr, prev_addr, ETH_ALEN); 
     
    5959                        prev_addr = hapd->own_addr; 
    6060        } 
    61 @@ -791,7 +788,7 @@ int hostapd_setup_interface_complete(str 
     61@@ -788,7 +785,7 @@ int hostapd_setup_interface_complete(str 
    6262        if (hostapd_driver_commit(hapd) < 0) { 
    6363                wpa_printf(MSG_ERROR, "%s: Failed to commit driver " 
     
    6868  
    6969        /* 
    70 @@ -815,6 +812,11 @@ int hostapd_setup_interface_complete(str 
     70@@ -812,6 +809,11 @@ int hostapd_setup_interface_complete(str 
    7171                iface->init_complete(iface); 
    7272  
  • trunk/package/hostapd/patches/700-random_pool_add_kernel.patch

    r27021 r28746  
    1919 static unsigned int input_rotate = 0; 
    2020 static unsigned int pool_pos = 0; 
    21 @@ -122,7 +126,7 @@ static void random_extract(u8 *out) 
     21@@ -128,7 +132,7 @@ static void random_extract(u8 *out) 
    2222 } 
    2323  
     
    2828        struct os_time t; 
    2929        static unsigned int count = 0; 
    30 @@ -191,16 +195,22 @@ int random_get_bytes(void *buf, size_t l 
     30@@ -197,16 +201,22 @@ int random_get_bytes(void *buf, size_t l 
    3131 int random_pool_ready(void) 
    3232 { 
     
    5252        /* 
    5353         * Try to fetch some more data from the kernel high quality 
    54 @@ -232,8 +242,10 @@ int random_pool_ready(void) 
    55         dummy_key_avail += res; 
    56         close(fd); 
    57   
    58 -       if (dummy_key_avail == sizeof(dummy_key)) 
    59 +       if (dummy_key_avail == sizeof(dummy_key)) { 
     54@@ -241,6 +251,7 @@ int random_pool_ready(void) 
     55        if (dummy_key_avail == sizeof(dummy_key)) { 
     56                if (own_pool_ready < MIN_READY_MARK) 
     57                        own_pool_ready = MIN_READY_MARK; 
    6058+               random_mark_pool_ready(); 
     59                random_write_entropy(); 
    6160                return 1; 
    62 +       } 
    63   
    64         wpa_printf(MSG_INFO, "random: Only %u/%u bytes of strong " 
    65                    "random data available from /dev/random", 
    66 @@ -243,6 +255,7 @@ int random_pool_ready(void) 
     61        } 
     62@@ -253,6 +264,7 @@ int random_pool_ready(void) 
    6763            total_collected + 10 * own_pool_ready > MIN_COLLECT_ENTROPY) { 
    6864                wpa_printf(MSG_INFO, "random: Allow operation to proceed " 
     
    7268        } 
    7369  
    74 @@ -258,9 +271,15 @@ int random_pool_ready(void) 
     70@@ -268,10 +280,16 @@ int random_pool_ready(void) 
    7571  
    7672 void random_mark_pool_ready(void) 
     
    8177        wpa_printf(MSG_DEBUG, "random: Mark internal entropy pool to be " 
    8278                   "ready (count=%u/%u)", own_pool_ready, MIN_READY_MARK); 
     79        random_write_entropy(); 
    8380+ 
    8481+       fd = open(RANDOM_STAMPFILE, O_CREAT | O_WRONLY | O_EXCL | O_NOFOLLOW, 0600); 
     
    8885  
    8986  
    90 @@ -335,3 +354,22 @@ void random_deinit(void) 
    91         random_close_fd(); 
    92  #endif /* __linux__ */ 
     87@@ -428,3 +446,22 @@ void random_deinit(void) 
     88        os_free(random_entropy_file); 
     89        random_entropy_file = NULL; 
    9390 } 
    9491+ 
     
    111108+#endif 
    112109+} 
    113 --- a/hostapd/Makefile 
    114 +++ b/hostapd/Makefile 
    115 @@ -698,11 +698,11 @@ endif 
    116  ifdef CONFIG_NO_RANDOM_POOL 
    117  CFLAGS += -DCONFIG_NO_RANDOM_POOL 
    118  else 
    119 -OBJS += ../src/crypto/random.o 
    120 -HOBJS += ../src/crypto/random.o 
    121  HOBJS += $(SHA1OBJS) 
    122  HOBJS += ../src/crypto/md5.o 
    123  endif 
    124 +OBJS += ../src/crypto/random.o 
    125 +HOBJS += ../src/crypto/random.o 
    126   
    127  ifdef CONFIG_RADIUS_SERVER 
    128  CFLAGS += -DRADIUS_SERVER 
    129110--- a/wpa_supplicant/Makefile 
    130111+++ b/wpa_supplicant/Makefile 
    131 @@ -1101,9 +1101,8 @@ endif 
     112@@ -1137,9 +1137,8 @@ endif 
    132113  
    133114 ifdef CONFIG_NO_RANDOM_POOL 
     
    142123--- a/wpa_supplicant/Android.mk 
    143124+++ b/wpa_supplicant/Android.mk 
    144 @@ -1109,9 +1109,8 @@ endif 
     125@@ -1132,9 +1132,8 @@ endif 
    145126  
    146127 ifdef CONFIG_NO_RANDOM_POOL 
     
    155136--- a/hostapd/Android.mk 
    156137+++ b/hostapd/Android.mk 
    157 @@ -717,11 +717,11 @@ endif 
     138@@ -720,11 +720,11 @@ endif 
    158139 ifdef CONFIG_NO_RANDOM_POOL 
    159140 L_CFLAGS += -DCONFIG_NO_RANDOM_POOL 
     
    169150 ifdef CONFIG_RADIUS_SERVER 
    170151 L_CFLAGS += -DRADIUS_SERVER 
    171 --- a/src/crypto/random.h 
    172 +++ b/src/crypto/random.h 
    173 @@ -18,17 +18,16 @@ 
    174  #ifdef CONFIG_NO_RANDOM_POOL 
    175  #define random_init() do { } while (0) 
    176  #define random_deinit() do { } while (0) 
    177 -#define random_add_randomness(b, l) do { } while (0) 
    178  #define random_get_bytes(b, l) os_get_random((b), (l)) 
    179  #define random_pool_ready() 1 
    180  #define random_mark_pool_ready() do { } while (0) 
    181  #else /* CONFIG_NO_RANDOM_POOL */ 
    182  void random_init(void); 
    183  void random_deinit(void); 
    184 -void random_add_randomness(const void *buf, size_t len); 
    185  int random_get_bytes(void *buf, size_t len); 
    186  int random_pool_ready(void); 
    187  void random_mark_pool_ready(void); 
    188  #endif /* CONFIG_NO_RANDOM_POOL */ 
    189 +void random_add_randomness(const void *buf, size_t len); 
     152--- a/hostapd/Makefile 
     153+++ b/hostapd/Makefile 
     154@@ -707,12 +707,12 @@ endif 
     155 ifdef CONFIG_NO_RANDOM_POOL 
     156 CFLAGS += -DCONFIG_NO_RANDOM_POOL 
     157 else 
     158-OBJS += ../src/crypto/random.o 
     159-HOBJS += ../src/crypto/random.o 
     160 HOBJS += ../src/utils/eloop.o 
     161 HOBJS += $(SHA1OBJS) 
     162 HOBJS += ../src/crypto/md5.o 
     163 endif 
     164+OBJS += ../src/crypto/random.o 
     165+HOBJS += ../src/crypto/random.o 
    190166  
    191  #endif /* RANDOM_H */ 
     167 ifdef CONFIG_RADIUS_SERVER 
     168 CFLAGS += -DRADIUS_SERVER 
  • trunk/package/hostapd/patches/710-bring_down_interface.patch

    r27021 r28746  
    11--- a/src/drivers/driver_nl80211.c 
    22+++ b/src/drivers/driver_nl80211.c 
    3 @@ -5005,9 +5005,6 @@ static int wpa_driver_nl80211_set_mode(v 
    4                         /* Try to set the mode again while the interface is 
    5                          * down */ 
     3@@ -5867,8 +5867,6 @@ static int wpa_driver_nl80211_set_mode(s 
    64                        ret = nl80211_set_mode(drv, drv->ifindex, nlmode); 
    7 -                       if (linux_set_iface_flags(drv->ioctl_sock, bss->ifname, 
    8 -                                                 1)) 
    9 -                               ret = -1; 
    10                         if (!ret) 
     5                        if (ret == -EACCES) 
    116                                break; 
    12                 } else 
    13 @@ -5020,6 +5017,8 @@ static int wpa_driver_nl80211_set_mode(v 
    14                 wpa_printf(MSG_DEBUG, "nl80211: Mode change succeeded while " 
     7-                       res = linux_set_iface_flags(drv->global->ioctl_sock, 
     8-                                                   bss->ifname, 1); 
     9                        if (res && !ret) 
     10                                ret = -1; 
     11                        else if (ret != -EBUSY) 
     12@@ -5884,6 +5882,7 @@ static int wpa_driver_nl80211_set_mode(s 
    1513                           "interface is down"); 
    1614                drv->nlmode = nlmode; 
    17 +               if (linux_set_iface_flags(drv->ioctl_sock, bss->ifname, 1)) 
    18 +                       ret = -1; 
     15                drv->ignore_if_down_event = 1; 
     16+               linux_set_iface_flags(drv->global->ioctl_sock, bss->ifname, 1); 
    1917        } 
    2018  
  • trunk/package/hostapd/patches/730-wps_single_auth_enc_type.patch

    r28745 r28746  
    11--- a/src/ap/wps_hostapd.c 
    22+++ b/src/ap/wps_hostapd.c 
    3 @@ -773,11 +773,9 @@ int hostapd_init_wps(struct hostapd_data 
     3@@ -799,11 +799,9 @@ int hostapd_init_wps(struct hostapd_data 
    44  
    55                if (conf->rsn_pairwise & WPA_CIPHER_CCMP) 
     
    1515                        wps->auth_types |= WPS_AUTH_WPAPSK; 
    1616                if (conf->wpa_key_mgmt & WPA_KEY_MGMT_IEEE8021X) 
    17 @@ -785,7 +783,7 @@ int hostapd_init_wps(struct hostapd_data 
     17@@ -811,7 +809,7 @@ int hostapd_init_wps(struct hostapd_data 
    1818  
    1919                if (conf->wpa_pairwise & WPA_CIPHER_CCMP) 
  • trunk/package/hostapd/patches/740-group_key_timeout.patch

    r28745 r28746  
    11--- a/src/ap/wpa_auth.c 
    22+++ b/src/ap/wpa_auth.c 
    3 @@ -1288,7 +1288,7 @@ static void wpa_send_eapol(struct wpa_au 
     3@@ -1330,7 +1330,7 @@ static void wpa_send_eapol(struct wpa_au 
    44                         keyidx, encr, 0); 
    55  
  • trunk/package/hostapd/patches/750-dynamic_20_40_mhz.patch

    r28745 r28746  
    11--- a/hostapd/config_file.c 
    22+++ b/hostapd/config_file.c 
    3 @@ -1901,6 +1901,10 @@ struct hostapd_config * hostapd_config_r 
     3@@ -1935,6 +1935,10 @@ struct hostapd_config * hostapd_config_r 
    44                                           "ht_capab", line); 
    55                                errors++; 
     
    1414--- a/src/ap/ap_config.h 
    1515+++ b/src/ap/ap_config.h 
    16 @@ -394,6 +394,7 @@ struct hostapd_config { 
     16@@ -416,6 +416,7 @@ struct hostapd_config { 
    1717        int ieee80211n; 
    1818        int secondary_channel; 
     
    3232 #include "vlan_init.h" 
    3333 #include "wpa_auth.h" 
    34 @@ -285,6 +286,7 @@ static void hostapd_cleanup_iface_pre(st 
     34@@ -291,6 +292,7 @@ static void hostapd_cleanup_iface_pre(st 
    3535  */ 
    3636 static void hostapd_cleanup_iface(struct hostapd_iface *iface) 
     
    4242--- a/src/ap/hostapd.h 
    4343+++ b/src/ap/hostapd.h 
    44 @@ -220,6 +220,9 @@ struct hostapd_iface { 
     44@@ -226,6 +226,9 @@ struct hostapd_iface { 
    4545        /* Overlapping BSS information */ 
    4646        int olbc_ht; 
     
    5454--- a/src/ap/ieee802_11.c 
    5555+++ b/src/ap/ieee802_11.c 
    56 @@ -1242,6 +1242,9 @@ static void handle_beacon(struct hostapd 
     56@@ -1193,6 +1193,9 @@ static void handle_beacon(struct hostapd 
    5757                                             sizeof(mgmt->u.beacon)), &elems, 
    5858                                      0); 
     
    6666--- a/src/ap/ieee802_11.h 
    6767+++ b/src/ap/ieee802_11.h 
    68 @@ -65,4 +65,17 @@ void hostapd_tx_status(struct hostapd_da 
    69  void ieee802_11_rx_from_unknown(struct hostapd_data *hapd, const u8 *src, 
    70                                 int wds); 
     68@@ -77,4 +77,17 @@ u8 * hostapd_eid_time_zone(struct hostap 
     69 int hostapd_update_time_adv(struct hostapd_data *hapd); 
     70 void hostapd_client_poll_ok(struct hostapd_data *hapd, const u8 *addr); 
    7171  
    7272+#ifdef CONFIG_IEEE80211N 
     
    120120        pos += sizeof(*oper); 
    121121  
    122 @@ -265,3 +270,80 @@ void hostapd_get_ht_capab(struct hostapd 
     122@@ -271,3 +276,80 @@ void hostapd_get_ht_capab(struct hostapd 
    123123  
    124124        neg_ht_cap->ht_capabilities_info = host_to_le16(cap); 
Note: See TracChangeset for help on using the changeset viewer.